A trusted server starts, extends or ends a trial with a stable requestId and reason. Free and Stripe trials use their own verification rules; extensions count from the request time. Apple and Google return store_action_required with the store management URL.
SDK 0.0.1Updated
Make the request
A trusted server starts, extends or ends a trial with a stable requestId and reason. Free and Stripe trials use their own verification rules; extensions count from the request time. Apple and Google return store_action_required with the store management URL.
Credential
Server API key only. Call from your trusted backend.
Permission
billing:write
Set the base URL and App ID from SDK setup. These examples use placeholders and do not execute requests. Never put a server key in browser code.
For this Web Beta, configure the Stripe Sandbox test account and published price mappings before checkout. Redirects do not confirm payment.
The response tab lists field types, not an example payload. Actual values depend on customer state.
Request parameters
JSON body
requestIduuid | uuid | uuidRequired
Business request UUID. Reuse for retries of one operation; generate a new value for a new operation.
reasonstring | string | stringRequired
Rejection reason or ledger operation description; interpret with accepted and status.
action"start" | "extend" | "end"Required
Business action. Target fields and quantity requirements vary by action; see the request structure and example.
productVersionIduuidOptional
The productVersionId value for this operation. Its accepted type and constraints are listed above and below.
entityIduuidOptional
Entity ID within the current customer scope, for configured entity and license features.
daysinteger | integerOptional
The days value for this operation. Its accepted type and constraints are listed above and below.
customerIduuid | uuid | uuidRequired
Indiana customer ID mapped from a verified identity on the server. Omit for customer-token calls, which use the token-bound customer.
membershipIduuid | uuidOptional
The membershipId value for this operation. Its accepted type and constraints are listed above and below.
Response fields
Successful responses include requestId and scope. Use the actual business status or accepted field to determine the result. Optional fields are omitted when unavailable.
HTTP 200 · application/json
requestIduuidRequired
Server-generated HTTP request UUID. Include it when reporting a failed request.
scopeobjectRequired
The App and environment of this response. Headers only verify scope; they cannot switch key scope.
Show child fields
projectIdstringRequired
App ID bound to the credential.
minLength: 1
environmentenumRequired
Separate data scope: sandbox or live.
Show allowed values
"sandbox""live"
trialobjectRequired
The trial value for this operation. Its accepted type and constraints are listed above and below.
Show child fields
operationIduuidRequired
Business operation UUID. Subscription execution references operationId from previewAttach; balance refunds reference the original consumption.
statusenumRequired
The status value for this operation. Its accepted type and constraints are listed above and below.
Show allowed values
"effective""store_action_required"
providerenumRequired
The provider value for this operation. Its accepted type and constraints are listed above and below.
Show allowed values
"free""stripe""apple""google"
membershipIdsarrayRequired
The membershipIds value for this operation. Its accepted type and constraints are listed above and below.
minItems: 1 · maxItems: 20
endsAtdate-time | nullRequired
The endsAt value for this operation. Its accepted type and constraints are listed above and below.
managementUrluri | nullRequired
The managementUrl value for this operation. Its accepted type and constraints are listed above and below.
Handle errors
Common failures
Code
Recovery
UNAUTHENTICATED
Verify the key or refresh the expired customer token once.
FORBIDDEN
Check current key permissions and customer access.
INVALID_REQUEST
Check field types, UUIDs, decimal strings and mutually exclusive fields.
SCOPE_MISMATCH
Use the App and environment bound to the credential.
Common failures
UNAUTHENTICATED
Recovery
Verify the key or refresh the expired customer token once.
FORBIDDEN
Recovery
Check current key permissions and customer access.
INVALID_REQUEST
Recovery
Check field types, UUIDs, decimal strings and mutually exclusive fields.
SCOPE_MISMATCH
Recovery
Use the App and environment bound to the credential.