Skip to main content
GET
List subscriptions changed in a time window

Authorizations

Authorization
string
header
required

Bearer credential for the public API: a live COPE API key (ck_live_*; keys issued earlier as cope_sk_live_* keep working). Dashboard sign-in tokens are not accepted.

Query Parameters

updated_since
string<date-time>

Inclusive lower bound on updated_at, an RFC 3339 date-time with an offset or Z. Without it the window starts at the first subscription.

Example:

"2026-10-08T00:00:00.000Z"

updated_until
string<date-time>

Exclusive upper bound on updated_at, an RFC 3339 date-time with an offset or Z. Defaults to now minus 120 seconds; a later value is refused with 422.

Example:

"2026-10-09T00:00:00.000Z"

starting_after
string

The next_cursor of the previous page. Opaque: it carries that request's window and filters, and a cursor this endpoint did not return is refused with 422.

status
enum<string>

Only subscriptions in this status now. A subscription that left this status in the window is not returned, so reconcile from the unfiltered window.

Available options:
pending,
trial,
active,
overdue,
paused,
canceling,
cancelled
product_id
string

Only subscriptions sold on this product, by its prod_ id. An id that is not one of your products is refused with 422 validation_failed.

Pattern: ^prod_[A-Za-z0-9]{8,32}$
limit
integer
default:25

How many subscriptions a page holds.

Required range: 1 <= x <= 100

Response

Successful response

data
object[]
required
has_more
boolean
required

Whether another page follows this one.

next_cursor
string | null
required

Pass as starting_after for the next page. null when has_more is false.

updated_until
string<date-time>
required

The exclusive upper bound this walk serves, in UTC to the millisecond: the next window's updated_since.