Benefit schedules
List Benefit Schedules
List benefit schedules with optional user filters.
Authorization
HTTPBearer AuthorizationBearer <token>
In: header
Query Parameters
user_ids?array<>|
Filter schedules to one or more user IDs. Provide the parameter multiple times for multiple users.
page?integer
Page number
Default
1Range
1 <= valuesize?integer
Page size
Default
50Range
1 <= value <= 100Response Body
application/json
application/json
curl -X GET "https://api.members.dev/v1/schedules"{
"items": [
{
"id": "string",
"user_id": "string",
"status": "scheduled",
"starts_at": null,
"recurring": {
"recurring_type": "never"
},
"expiry": {
"expiry_type": "never"
},
"benefit_grants": [
{
"benefit_id": "string",
"value_initial": 0,
"expiry": {
"expiry_type": "never"
}
}
],
"parent": {
"subscription_id": "string",
"product_id": "string"
},
"state_transitions": {
"started_at": {},
"past_due_at": {},
"canceled_at": {},
"expired_at": {},
"revoked_at": {}
},
"next_update": {
"updates_at": null,
"update_type": "activates"
},
"created_at": null,
"updated_at": null
}
],
"total": 0,
"page": 1,
"size": 1,
"pages": 0
}{
"detail": [
{
"loc": [
"string"
],
"msg": "string",
"type": "string",
"input": null,
"ctx": {}
}
]
}Get Benefit Schedule GET
Previous Page
Create Benefit Schedule POST
Creates a schedule with server-set **starts_at** (UTC now) and **status** `active`. If **expiry** is omitted, the schedule never ends overall (`expiry_type: never`). If a **benefit_grants** entry omits **expiry**, it defaults to never when **recurring** is never, else one billing **occurence** (`interval_count: 1`).