Skip to main content
POST

Authorizations

Authorization
string
header
default:subm_your_key_here
required

Developer API key generated in the app. Keys carry scopes; a read key can call list, get, analytics, and audit endpoints, while a write key additionally allows create, update, cancel, pause, resume, and delete.

Body

application/json
name
string
required

Human-readable service or product name.

Required string length: 1 - 120
category
string
required

User-visible category label used for grouping and analytics.

Required string length: 1 - 80
amount
number
required

Payment amount in major currency units, with at most 2 decimal places.

Required range: 0 <= x <= 999999.99Must be a multiple of 0.01
currency
enum<string>
required

ISO-like currency code supported by the app.

Available options:
CNY,
USD,
EUR,
JPY,
GBP,
AUD,
CAD,
CHF,
HKD,
SGD
period
enum<string>
required

Billing cadence. Monthly means the same calendar day each month; fixed-day intervals use custom.

Available options:
monthly,
yearly,
custom
nextPaymentDate
string
required

Authoritative upcoming renewal date.

Pattern: ^\d{4}-\d{2}-\d{2}$
Example:

"2026-06-01"

billingAnchorDay
integer

Optional monthly calendar anchor from 1 to 31. Inferred from nextPaymentDate when omitted.

Required range: 1 <= x <= 31
lastPaymentDate
string

Deprecated compatibility input. Use nextPaymentDate for new integrations.

Pattern: ^\d{4}-\d{2}-\d{2}$
Example:

"2026-06-01"

customDate
string

Required only when period is custom. Despite the legacy name, this is a positive whole-number string of days, not a calendar date.

Pattern: ^[1-9]\d*$
notificationEnabled
boolean
default:true
status
enum<string>

Lifecycle state. active means billing; paused means temporarily stopped; cancelled means no longer billing but kept for history.

Available options:
active,
paused,
cancelled

Response

Subscription created.

data
object
required
requestId
string
required