Maxio Subscription Group Status API
Use the Subscription Group Status object to manage the lifecycle of a Subscription Group as a whole, such as canceling every subscription within the group together.
Use the Subscription Group Status object to manage the lifecycle of a Subscription Group as a whole, such as canceling every subscription within the group together.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/maxio:maxio-subscription-group-status-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Maxio Subscription Group Status API
version: '1.0'
contact:
email: support@maxio.com
description: 'Operations tagged Subscription Group Status across 2 of this provider''s published API definitions: maxio-advanced-billing-openapi31json.json, maxio-advanced-billing-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://{site}.chargify.com
description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
- url: https://events.chargify.com/{site}
description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
- url: https://{site}.ebilling.maxio.com
description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
security:
- BasicAuth: []
tags:
- name: Subscription Group Status
description: Use the Subscription Group Status object to manage the lifecycle of a Subscription Group as a whole, such as canceling every subscription within the group together.
paths:
/subscription_groups/{uid}/cancel.json:
parameters: []
post:
tags:
- Subscription Group Status
summary: cancelSubscriptionsInGroup
description: 'Cancels all subscriptions within the specified group immediately. The group is identified by the `uid` that is passed in the URL. To successfully cancel the group, the primary subscription must be on automatic billing. The group members must be on automatic billing or prepaid.
To cancel a subscription group while also charging for any unbilled usage on metered or prepaid components, the `charge_unbilled_usage=true` parameter must be included in the request.'
operationId: cancelSubscriptionsInGroup
parameters:
- name: uid
in: path
description: The uid of the subscription group
required: true
schema:
type: string
requestBody:
description: ''
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/CancelGroupedSubscriptionsRequest'
- examples:
- charge_unbilled_usage: true
contentMediaType: application/json
examples:
Example:
value:
charge_unbilled_usage: true
required: false
responses:
'200':
description: OK
headers: {}
content: {}
'422':
description: Unprocessable Entity (WebDAV)
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorListResponse1'
- description: Error which contains list of messages.
examples:
- errors:
- One or more subscriptions are not on automatic billing
contentMediaType: application/json
examples:
Example:
value:
errors:
- One or more subscriptions are not on automatic billing
deprecated: false
servers:
- url: https://{site}.chargify.com
description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
- url: https://events.chargify.com/{site}
description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
- url: https://{site}.ebilling.maxio.com
description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
- url: https://events.chargify.com/{site}
description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
/subscription_groups/{uid}/delayed_cancel.json:
parameters: []
post:
tags:
- Subscription Group Status
summary: initiateDelayedCancellationForGroup
description: 'Schedules all subscriptions within the specified group to be canceled at the end of their billing period. The group is identified by its uid passed in the URL.
All subscriptions in the group must be on automatic billing in order to successfully cancel them, and the group must not be in a "past_due" state.'
operationId: initiateDelayedCancellationForGroup
parameters:
- name: uid
in: path
description: The uid of the subscription group
required: true
schema:
type: string
responses:
'200':
description: OK
headers: {}
content: {}
'422':
description: Unprocessable Entity (WebDAV)
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorListResponse1'
- description: Error which contains list of messages.
examples:
- errors:
- Subscriptions group is in a past due state
contentMediaType: application/json
examples:
Example:
value:
errors:
- Subscriptions group is in a past due state
deprecated: false
delete:
tags:
- Subscription Group Status
summary: cancelDelayedCancellationForGroup
description: 'Removes the delayed cancellation on a subscription group.
Removing the delayed cancellation on a subscription group will ensure that the subscriptions do not get canceled at the end of the period. The request will reset the `cancel_at_end_of_period` flag to false on each member in the group.'
operationId: cancelDelayedCancellationForGroup
parameters:
- name: uid
in: path
description: The uid of the subscription group
required: true
schema:
type: string
responses:
'200':
description: OK
headers: {}
content: {}
'422':
description: Unprocessable Entity (WebDAV)
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorListResponse1'
- description: Error which contains list of messages.
examples:
- errors:
- Subscriptions group does not have a pending delayed cancellation
contentMediaType: application/json
examples:
Example:
value:
errors:
- Subscriptions group does not have a pending delayed cancellation
deprecated: false
servers:
- url: https://{site}.chargify.com
description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
- url: https://events.chargify.com/{site}
description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
- url: https://{site}.ebilling.maxio.com
description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
- url: https://events.chargify.com/{site}
description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
/subscription_groups/{uid}/reactivate.json:
parameters: []
post:
tags:
- Subscription Group Status
summary: reactivateSubscriptionGroup
description: 'Reactivates or resumes a cancelled subscription group. Upon reactivation, any canceled invoices created after the beginning of the primary subscription''s billing period will be reopened and payment will be attempted on them. If the subscription group is being reactivated (as opposed to resumed), new charges will also be assessed for the new billing period.
Whether a subscription group is reactivated (a new billing period is created) or resumed (the current billing period is respected) will depend on the parameters that are sent with the request as well as the date of the request relative to the primary subscription''s period.
## Reactivating within the current period
If a subscription group is cancelled and reactivated within the primary subscription''s current period, we can choose to either start a new billing period or maintain the existing one. If we want to maintain the existing billing period, the `resume=true` option must be passed in request parameters.
An exception to the above are subscriptions that are on calendar billing. These subscriptions cannot be reactivated within the current period. If the `resume=true` option is not passed, the request will return an error.
The `resume_members` option is ignored in this case. All eligible group members will be automatically resumed.
## Reactivating beyond the current period
In this case, a subscription group can only be reactivated with a new billing period. If the `resume=true` option is passed it will be ignored.
Member subscriptions can have billing periods that are longer than the primary (e.g. a monthly primary with annual group members). If the primary subscription in a group cannot be reactivated within the current period, but other group members can be, passing `resume_members=true` will resume the existing billing period for eligible group members. The primary subscription will begin a new billing period.
For calendar billing subscriptions, the new billing period created will be a partial one, spanning from the date of reactivation to the next corresponding calendar renewal date.
## 3D Secure (3DS) Authentication post-authentication flow
When a payment requires 3DS Authentication to adhere to Strong Customer Authentication (SCA), the request enters a post-authentication flow where a 422 Unprocessable Entity status is returned with an action_link that will direct the customer through 3DS Authentication.
See the 3D Secure Post-Authentication Flow article in the product documentation to learn how to manage the redirect flow.'
operationId: reactivateSubscriptionGroup
parameters:
- name: uid
in: path
description: The uid of the subscription group
required: true
schema:
type: string
requestBody:
description: ''
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ReactivateSubscriptionGroupRequest'
- examples:
- resume: true
contentMediaType: application/json
examples:
Example:
value:
resume: true
required: false
responses:
'200':
description: OK
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ReactivateSubscriptionGroupResponse'
- examples:
- uid: grp_93wgm89cbjkw6
scheme: 1
customer_id: 1
payment_profile_id: 1
subscription_ids:
- 1
- 2
primary_subscription_id: 1
next_assessment_at: '2020-06-18T12:00:00-04:00'
state: active
cancel_at_end_of_period: false
contentMediaType: application/json
examples:
Example:
value:
uid: grp_93wgm89cbjkw6
scheme: 1
customer_id: 1
payment_profile_id: 1
subscription_ids:
- 1
- 2
primary_subscription_id: 1
next_assessment_at: '2020-06-18T12:00:00-04:00'
state: active
cancel_at_end_of_period: false
'422':
description: Unprocessable Entity (WebDAV)
headers: {}
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ErrorListResponse1'
- description: Error which contains list of messages.
examples:
- errors:
- Must be inside the current billing period to resume this subscription group
contentMediaType: application/json
examples:
Example:
value:
errors:
- Must be inside the current billing period to resume this subscription group
deprecated: false
servers:
- url: https://{site}.chargify.com
description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
- url: https://events.chargify.com/{site}
description: Default Advanced Billing environment hosted in US. Valid for the majority of our customers.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
- url: https://{site}.ebilling.maxio.com
description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
- url: https://events.chargify.com/{site}
description: Advanced Billing environment hosted in EU. Use only when you requested EU hosting for your AB account.
variables:
site:
default: subdomain
description: The subdomain for your Advanced Billing site.
components:
schemas:
ErrorListResponse1:
title: ErrorListResponse1
required:
- errors
type: object
properties:
errors:
type: array
items:
type: string
description: ''
description: Error which contains list of messages.
ReactivateSubscriptionGroupResponse:
title: ReactivateSubscriptionGroupResponse
type: object
properties:
uid:
type: string
scheme:
type: integer
contentEncoding: int32
customer_id:
type: integer
contentEncoding: int32
payment_profile_id:
type: integer
contentEncoding: int32
subscription_ids:
type: array
items:
type: integer
contentEncoding: int32
description: ''
primary_subscription_id:
type: integer
contentEncoding: int32
next_assessment_at:
type: string
contentEncoding: date-time
state:
type: string
cancel_at_end_of_period:
type: boolean
CancelGroupedSubscriptionsRequest:
title: CancelGroupedSubscriptionsRequest
type: object
properties:
charge_unbilled_usage:
type: boolean
ReactivateSubscriptionGroupRequest:
title: ReactivateSubscriptionGroupRequest
type: object
properties:
resume:
type: boolean
resume_members:
type: boolean
securitySchemes:
BasicAuth:
type: http
description: The `username` is a Maxio Chargify API key. The `password` is `x`.
scheme: basic
x-refined-from:
- maxio-advanced-billing-openapi31json.json
- maxio-advanced-billing-openapi.yml
x-provenance:
method: harvested
publisher: Maxio
source: https://developers.maxio.com/static/exports/maxio-advanced-billing-openapi31json.json
note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
stamped by stamp-openapi-provenance.py (roadmap#793)