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

# Get liquidity rewards

> Get paginated list of the authenticated user's liquidity reward payouts

## Authentication

Requires API key authentication with read scope.

## Query parameters

<ParamField query="page" type="integer" default="1">
  Page number.
</ParamField>

<ParamField query="size" type="integer" default="20">
  Page size (max 100).
</ParamField>

## Example request

<CodeGroup>
  ```bash cURL theme={null}
  curl "https://relay.bayse.markets/v1/pm/liquidity-rewards?page=1&size=10" \
    -H "X-Public-Key: pk_live_abcdef123456"
  ```

  ```javascript Node.js theme={null}
  const response = await fetch(
    'https://relay.bayse.markets/v1/pm/liquidity-rewards?page=1&size=10',
    { headers: { 'X-Public-Key': 'pk_live_abcdef123456' } }
  );
  const data = await response.json();
  ```

  ```python Python theme={null}
  import requests

  resp = requests.get(
      'https://relay.bayse.markets/v1/pm/liquidity-rewards',
      params={'page': 1, 'size': 10},
      headers={'X-Public-Key': 'pk_live_abcdef123456'},
  )
  data = resp.json()
  ```

  ```go Go theme={null}
  req, _ := http.NewRequest("GET", "https://relay.bayse.markets/v1/pm/liquidity-rewards", nil)
  q := req.URL.Query()
  q.Add("page", "1")
  q.Add("size", "10")
  req.URL.RawQuery = q.Encode()
  req.Header.Set("X-Public-Key", "pk_live_abcdef123456")
  resp, _ := http.DefaultClient.Do(req)
  ```
</CodeGroup>

## Response

<ResponseField name="data" type="array">
  List of liquidity reward records.

  <Expandable title="reward fields">
    <ResponseField name="epochId" type="string">UUID of the reward epoch.</ResponseField>
    <ResponseField name="eventId" type="string">UUID of the event.</ResponseField>
    <ResponseField name="marketId" type="string">UUID of the market.</ResponseField>
    <ResponseField name="accumulatedShares" type="number">Total liquidity shares accumulated during the epoch.</ResponseField>
    <ResponseField name="sampleCount" type="integer">Number of sampling intervals the user qualified for.</ResponseField>
    <ResponseField name="payout" type="number">USD payout amount for this epoch.</ResponseField>
    <ResponseField name="isPaid" type="boolean">Whether the payout has been credited.</ResponseField>
    <ResponseField name="epochStart" type="string">ISO 8601 timestamp when the epoch started.</ResponseField>
    <ResponseField name="epochEnd" type="string">ISO 8601 timestamp when the epoch ended.</ResponseField>
    <ResponseField name="status" type="string">Epoch status (`active`, `completed`).</ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="pagination" type="object">
  <Expandable title="pagination fields">
    <ResponseField name="page" type="integer">Current page number.</ResponseField>
    <ResponseField name="size" type="integer">Page size.</ResponseField>
    <ResponseField name="totalCount" type="integer">Total number of records.</ResponseField>
    <ResponseField name="lastPage" type="integer">Last page number.</ResponseField>
  </Expandable>
</ResponseField>

<ResponseExample>
  ```json 200 OK theme={null}
  {
    "data": [
      {
        "epochId": "f4d15ea1-813a-41dd-a84c-e95648974dd6",
        "eventId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
        "marketId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
        "accumulatedShares": 1523.45,
        "sampleCount": 12,
        "payout": 8.25,
        "isPaid": true,
        "epochStart": "2026-03-20T00:00:00Z",
        "epochEnd": "2026-03-21T00:00:00Z",
        "status": "completed"
      }
    ],
    "pagination": {
      "page": 1,
      "size": 20,
      "totalCount": 1,
      "lastPage": 1
    }
  }
  ```
</ResponseExample>
