# GET /api/invoicing/recurring-schedules

Recurring schedules: Retrieves a filtered list of recurring invoice schedules.

The paging shape of this endpoint is provisional and is expected to move to continuation
tokens (Cosmos charges request units for every skipped row), so integrators should not rely
on the current offset parameters as a stable contract. Filter by biller, status, and creation
time instead of paging deeply.

**Operation ID:** `GET_api_invoicing_recurring-schedules`

## Authorization

Requires: Invoicing.RecurringSchedules, merchant scope.

Required permissions:
- `Invoicing.RecurringSchedules`

## Parameters

| Name | In | Required | Type | Description |
| --- | --- | --- | --- | --- |
| BillerId | query | no | string(uuid) | Filter by billing entity. Required for partition-scoped queries. |
| Status | query | no | WinkPGInvoicingRecurringInvoiceScheduleStatus | Filter by series status. |
| MinCreationTime | query | no | string(date-time) | Filter to series created on or after this time (CreationTime date-range chip lower bound). |
| MaxCreationTime | query | no | string(date-time) | Filter to series created on or before this time (CreationTime date-range chip upper bound). |
| Filter | query | no | string | Gets or sets a general filter string for the result set. |
| Name | query | no | string | Gets or sets the name filter for the result set. |
| IncludeDeleted | query | no | boolean | Gets or sets a value indicating whether to include deleted entities in the result set. |
| IncludeInactive | query | no | boolean | Gets or sets a value indicating whether to include inactive entities in the result set. |
| Ids | query | no | array<string(uuid)> | Gets or sets a list of entity IDs to filter the result set. |
| Sorting | query | no | string |  |
| SkipCount | query | no | integer(int32) |  |
| MaxResultCount | query | no | integer(int32) |  |
| ExtraProperties | query | no | object |  |
| suppressNulls | query | no | boolean | If true, omit properties with null values. |

## Responses

### 200

OK

**Content type:** `text/plain`

Schema: `WinkPGApplicationDtosPagedResultDtoOfWinkPGInvoicingRecurringInvoiceScheduleDto`

**Content type:** `application/json`

Schema: `WinkPGApplicationDtosPagedResultDtoOfWinkPGInvoicingRecurringInvoiceScheduleDto`

**Content type:** `text/json`

Schema: `WinkPGApplicationDtosPagedResultDtoOfWinkPGInvoicingRecurringInvoiceScheduleDto`

### 403

Forbidden

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 401

Unauthorized

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 400

Bad Request

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 404

Not Found

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 501

Not Implemented

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 500

Internal Server Error

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### default

The request failed. The body carries the standard error envelope: a machine-readable `error.code`, a human-readable `error.message`, and `error.validationErrors` when the failure was a validation rejection. See the error-code reference in this document's description for the values `error.code` can take.

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

## See also

- [All documentation](https://docs.winkpg.io/llms.txt): the machine-readable index of every public page on this site.
