Skip to main content
TroopyDocs
Open Troopy
Troopy

API reference / Apps

List Stripe subscriptions

Subscriptions in the workspace's Stripe, newest first, with their customer, price and how they end. Filter by status, by customer, to those set to end at the period's end (endingSoon), or to those canceled since a date. Read only. Needs Stripe connected.

get/api/v1/apps/stripe/subscriptions

Authorization

HeaderAuthorization: Bearer <API key>
Or the headerX-API-Key: <API key>
API keyMake one in Troopy under Settings > API keys. It acts as you, in its workspace.
Scopesapps:read

Other ways to call it

CLItroopy stripe subscriptions
MCP tooltroopy_stripe_subscriptions
Rate limit60 calls in 60 seconds, for each key

Query parameters

statusenum<string>

all includes canceled ones

allactivetrialingpast_dueunpaidcanceledincompletepaused

Default "all"

customerstring

A customer id, like cus_...

At most 100 characters

endingSoonboolean | enum<string>

true: only those still running but set to cancel at the period's end

truefalse

canceledSincestring

Only those canceled on or after this date (looks at the 100 most recently created canceled ones)

date

limitinteger

At most 50; ask for 10 or fewer to read them all at once

Default 10 · At least 1 · At most 50

cursorstring

The next value from the previous page

At most 200 characters

Response

200 · application/json
data*array<object>
11 properties
id*string
customer*object
3 properties
id*string
email*string | null
name*string | null
status*string

active, trialing, past_due, unpaid, canceled, incomplete, incomplete_expired or paused

items*array<object>
7 properties
product*string | null
price*string
nickname*string | null
amount*number | null

Per unit, in the currency's main unit; null for tiered or metered prices

currency*string
interval*string | null
quantity*number
cancelAtPeriodEnd*boolean

It ends at the end of the period: a customer who is leaving

currentPeriodEnd*string | null
canceledAt*string | null
endedAt*string | null
cancellation*object
3 properties
reason*string | null
feedback*string | null
comment*string | null
trialEnd*string | null
created*string

ISO 8601 date and time

hasMore*boolean
next*string | null

Pass as cursor for the next page; null on the last

Errors

400 invalid_inputFix the field named in detail. Each operation's schema is in /api/v1/openapi.json.
401 unauthorizedSend an API key as `Authorization: Bearer tr_live_...`. Create one in Troopy under Settings.
403 forbiddenThe key lacks a scope this operation needs, or its owner lacks the role. detail says which; create a key with the scope, or ask an organization owner or admin.
429 rate_limitedWait the number of seconds in Retry-After, then retry.