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

# List Retainer Periods

> List open retainer periods waiting for manual approval

List retainer periods whose earning is `PENDING_MANUAL_APPROVAL`. Requires `read:affiliates`. Foreign-team campaign IDs return 404.

## Path Parameters

**id** `string` *required*

Encoded campaign id

## Query Parameters

**page** `integer` (default: 1)

Page number for pagination. Must be a positive integer.

**limit** `integer` (default: 50)

Number of results per page. Maximum value is 200. Default is 50.

## Response

Paginated list of open retainer periods.

**success** `boolean`

Always `true` for successful responses

**data** `array`

Array of retainer period objects.

**Period Object Properties**

**id** `string`

Encoded period id

**campaign\_id** `string`

Encoded campaign id

**application\_id** `string`

Encoded application id

**affiliate\_id** `string`

Affiliate id

**period\_start** `string`

ISO 8601 start of the retainer period

**amount** `number | null`

Period earning amount

**earning\_id** `string | null`

Encoded affiliate earning id

**earning\_status** `string | null`

Earning status. Listed periods are `PENDING_MANUAL_APPROVAL`.

**condition** `string | null`

Retainer condition text copied from the application, or `null`

**created\_at** `string`

ISO 8601 creation timestamp

**pagination** `object`

Pagination metadata: `page`, `limit`, `total`, `total_pages`, `has_next_page`, `has_prev_page`.

```bash cURL theme={null}
curl -X GET "https://api.affonso.io/v1/program/campaigns/cmretainer01camp0001/retainer-periods?page=1&limit=50" \
  -H "Authorization: Bearer sk_live_your_api_key"
```

```json Response theme={null}
{
  "success": true,
  "data": [
    {
      "id": "cmperiod01retainer001",
      "campaign_id": "cmretainer01camp0001",
      "application_id": "cmapp01retainer0001",
      "affiliate_id": "aff_abc123",
      "period_start": "2026-11-01T00:00:00.000Z",
      "amount": 500,
      "earning_id": "cmearn01retainer001",
      "earning_status": "PENDING_MANUAL_APPROVAL",
      "condition": "Post at least 3 Shorts per week mentioning our product",
      "created_at": "2026-11-01T00:05:00.000Z"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 50,
    "total": 1,
    "total_pages": 1,
    "has_next_page": false,
    "has_prev_page": false
  }
}
```

## Notes

* Requires `read:affiliates`.
* Only periods with earnings in `PENDING_MANUAL_APPROVAL` are returned.
* Approve with [Approve Retainer Period](/api/endpoint/campaigns/approve-retainer-period) or reject with [Reject Retainer Period](/api/endpoint/campaigns/reject-retainer-period).


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