reactivate_subscription
Undo a scheduled cancellation and put the subscription back on its normal billing cycle. Refuses one that was never cancelled.
Purpose
A cancellation made "at period end" leaves the subscription running until its current period ends. Until then it can be called off, and that is what this tool does: the member goes back on their normal billing cycle as if nothing had happened. It is the recovery path for a cancellation made in error and the tool to reach for on a win-back — "they changed their mind". Safe to call: it restores an intent the member already had.
Refuses a subscription that was never cancelled, and one whose cancellation has already taken
effect. Emits subscription.reactivated.
Stripe only for the true undo
Calling off a scheduled cancellation is something Stripe supports natively. On the other gateways a cancellation ends the agreement outright, so there is nothing to reactivate and the member has to buy again.
Required ability
project-subscription:update
Input schema
{
"type": "object",
"required": ["subscription_id"],
"properties": {
"subscription_id": {
"type": "string",
"description": "UUID of the subscription to act on."
}
}
}Output shape
{
"data": {
"subscription_id": "5b7e2d40-1a86-4c39-97f2-e83d0b16c5a4",
"plan_id": "9b7c2e15-4d63-4f80-a2b1-7e5d0c9f3a46",
"payment_status": "active",
"outcome": "reactivated"
}
}Example prompts
"The member behind subscription
5b7e2d40-1a86-4c39-97f2-e83d0b16c5a4changed their mind — cancel the cancellation."
"Reactivate Ada's Premium subscription before it ends on the 30th."
"We cancelled the wrong subscription; undo it."
Failure modes
VALIDATION_FAILED— the subscription was never cancelled, or its cancellation has already taken effect.RESOURCE_NOT_FOUND— unknownsubscription_id, or a subscription outside the token's scope.AUTHENTICATION_REQUIRED— no authenticated user on the request.TOKEN_MISSING_ABILITY— token lacksproject-subscription:update.
Related
cancel_subscription— what this undoes.get_subscription— checkcancelledbefore calling.- Subscriptions API — the REST equivalent,
POST .../reactivate.
How is this guide?
pause_subscription
Pause an active or trialing subscription — billing stops and the member keeps their place. The reversible alternative to cancelling.
reissue_subscription_grants
Revoke the access grants a member holds on a subscription — every resource or one — and have fresh ones issued. The members page's "Refresh invite links", for agents.