> ## Documentation Index
> Fetch the complete documentation index at: https://yieldxyz.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Get reward rate history

> Get a time series of a yield's reward rate snapshots for charting and comparison.

Choose the window with either `period` (`1d`, `7d`, `30d`, `90d`, `1y`, `all`; default `30d`) or `from` and `to` (ISO 8601). When `from` or `to` is set, `period` is ignored, and `to` defaults to now. `interval` sets the sampling resolution: `day` (default), `week` or `month`. `period=all` with `interval=day` returns weekly points.

Pagination uses `offset` and `limit` (default `100`, max `365`). This is the yield's rate over time, not a position's earnings. For holdings, use [balances](/api-reference/YieldsController_getYieldBalances). See [Rewards and history](/documentation/earn/core-concepts/rewards-history).


## OpenAPI

````yaml openapi.json GET /v1/yields/{yieldId}/reward-rate/history
openapi: 3.0.0
info:
  title: 'Yield API: Earn'
  description: API Documentation
  version: '1.0'
  contact: {}
servers:
  - url: https://api.yield.xyz
    description: Production
security: []
tags:
  - name: Discovery
    description: >-
      Browse and discover yield opportunities, networks, and providers, plus
      yield-level risk, reward rate, and TVL data
  - name: Portfolio
    description: User-specific balances and KYC status
  - name: Actions
    description: Generate transactions to enter, exit, and manage yields
externalDocs:
  description: For more information
  url: https://docs.yield.xyz
paths:
  /v1/yields/{yieldId}/reward-rate/history:
    get:
      tags:
        - Discovery
      summary: Get historical reward rate snapshots for a yield
      description: >-
        Returns a chronological time series of reward rate snapshots for the
        specified yield, suitable for charting and analytics. Supports
        configurable time ranges, sampling intervals (day/week/month), and
        pagination.
      operationId: YieldsController_getYieldRewardRateHistory_v1
      parameters:
        - name: yieldId
          required: true
          in: path
          description: The unique identifier of the yield
          schema:
            example: ethereum-eth-lido-staking
            type: string
        - name: offset
          required: false
          in: query
          description: Pagination offset
          schema:
            minimum: 0
            default: 0
            example: 0
            type: number
        - name: limit
          required: false
          in: query
          description: Maximum number of data points to return (default 100, max 365)
          schema:
            minimum: 1
            maximum: 365
            default: 100
            example: 20
            type: number
        - name: from
          required: false
          in: query
          description: Start of time range (ISO 8601). Overrides period when provided.
          schema:
            example: '2025-01-01T00:00:00Z'
            type: string
        - name: to
          required: false
          in: query
          description: End of time range (ISO 8601). Defaults to now.
          schema:
            example: '2025-07-10T00:00:00Z'
            type: string
        - name: period
          required: false
          in: query
          description: >-
            Predefined time window. Ignored when from/to are provided. Default:
            30d.
          schema:
            enum:
              - 1d
              - 7d
              - 30d
              - 90d
              - 1y
              - all
            type: string
        - name: interval
          required: false
          in: query
          description: 'Sampling resolution (day/week/month). Default: day.'
          schema:
            enum:
              - day
              - week
              - month
            type: string
      responses:
        '200':
          description: Returns a time series of reward rate snapshots
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RewardRateHistoryResponseDto'
        '400':
          description: >-
            Invalid request parameters, or the yield is not enabled for your
            project
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Validation failed
                  error:
                    type: string
                    example: Bad Request
                  statusCode:
                    type: number
                    example: 400
        '401':
          description: Invalid or missing API key
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Invalid API key
                  error:
                    type: string
                    example: Unauthorized
                  statusCode:
                    type: number
                    example: 401
        '404':
          description: Yield not found with the specified ID
        '429':
          description: Rate limit exceeded
          headers:
            x-ratelimit-limit:
              description: Request limit per window
              schema:
                type: string
            x-ratelimit-remaining:
              description: Remaining requests (will be 0)
              schema:
                type: string
            x-ratelimit-reset:
              description: Unix timestamp when window resets
              schema:
                type: string
            retry-after:
              description: Seconds to wait before retrying
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Rate limit exceeded
                  error:
                    type: string
                    example: Too Many Requests
                  statusCode:
                    type: number
                    example: 429
                  retryAfter:
                    type: number
                    example: 30
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Internal server error
                  error:
                    type: string
                    example: Internal Server Error
                  statusCode:
                    type: number
                    example: 500
      security:
        - ApiKey: []
components:
  schemas:
    RewardRateHistoryResponseDto:
      type: object
      properties:
        total:
          type: number
          description: Total number of items available
          example: 100
        offset:
          type: number
          description: Offset of the current page
          example: 0
        limit:
          type: number
          description: Limit of the current page
          example: 20
        items:
          description: Reward rate snapshots for the current page
          type: array
          items:
            $ref: '#/components/schemas/RewardRateSnapshotDto'
        yieldId:
          type: string
          description: Unique identifier of the yield
          example: ethereum-eth-lido-staking
        interval:
          type: string
          description: Sampling interval used for this response
          enum:
            - day
            - week
            - month
          example: day
        from:
          type: string
          description: Start of the returned date range (ISO 8601)
          example: '2025-06-01T00:00:00.000Z'
        to:
          type: string
          description: End of the returned date range (ISO 8601)
          example: '2025-07-10T00:00:00.000Z'
      required:
        - total
        - offset
        - limit
        - items
        - yieldId
        - interval
        - from
        - to
    RewardRateSnapshotDto:
      type: object
      properties:
        timestamp:
          type: string
          description: Timestamp of this snapshot (ISO 8601)
          example: '2025-07-10T00:00:00.000Z'
        rewardRate:
          type: string
          description: Reward rate as a decimal string
          example: '0.0312'
      required:
        - timestamp
        - rewardRate
  securitySchemes:
    ApiKey:
      type: apiKey
      in: header
      name: x-api-key

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.