Firsty

Search...

Search...

BalanceExperimental

Set eSIM balance

Sets an absolute target balance. clientTransactionId makes retries idempotent; this endpoint does not use X-Idempotency-Key. An eSIM whose balance accepts credits only refuses it with 422 and code balance_operation_not_supported.

put/profiles/{profileReference}/esims/{esimReference}/balance

Authorization

Authorization: Bearer {token} — an OAuth2 access token from the client-credentials flow. How authentication works

Path parameters

profileReferencestringrequired

The eSIM's profile reference (16-digit numeric string)

esimReferencestringrequired

eSIM reference identifier (18-digit opaque token)

Request body

application/json · required

currencystringrequired

Three-letter ISO 4217 currency code

reasonstringrequired

Machine-readable reason

detailstring

Optional human-readable context

clientTransactionIdstringrequired

Client identifier used for idempotency

balanceintegerrequired

Target balance in integer minor currency units

Responses

200Balance set or already at targetapplication/json
Show response body
dataobject
Show properties
profileReferencestring
esimReferencestring
currencystring

Three-letter ISO 4217 currency code

balanceinteger

Current balance in integer minor currency units

updatedAtstring · date-time
updateobject | null

Applied update, or null when balance was already at target

Show properties
profileReferencestring
esimReferencestring
typestring
Optionscreditdebit
sourcestring

Who originated the update: client for your own credit, debit or set; provider for a movement the network applied; system for a movement we made on our own.

Optionsclientprovidersystem
amountinteger

Update amount in integer minor currency units

balanceAfterinteger

Balance after this update

overdraftAmountinteger

Amount not covered when balance reached zero

currencystring

Three-letter ISO 4217 currency code

reasonstring
detailstring | null
clientTransactionIdstring | null

Client transaction identifier, present for client updates

providerTransactionIdstring | null

External transaction identifier when available

occurredAtstring | null · date-time

When the balance update occurred

createdAtstring · date-time

When the update was recorded

400Bad request - invalid parameters401Unauthorized - missing or invalid API key403Forbidden - client does not have access to this resource404Resource not found409Another operation is already in progress422Request cannot be applied to the current resource429Rate limit exceeded. A `429` can also arrive without these headers or this body; handle it by its status code.500Internal server error502Temporary service failure503Service temporarily unavailable. Safe to retry.