Download OpenAPI specification:
Platfone Activation API will allow you to get temporary mobile number and receive SMS messages to that number. You can use this API to automate SMS activations and OTP verification for your users. Billing applies only to successfully received SMS messages.
Sandbox environment
Note: API keys and URLs for sandbox and production are different.
All requests must include an API key in the X-Api-Key header. You can get your API key from https://platfone.com/app/api
All requests must be made to the following URL:
Production -> https://temp-number-api.com/api/v1
Sandbox -> https://temp-number-api.com/test/api/v1
Prices
Numbers
You will get a phone number that can receive unlimited SMS messages for limited time from one specific service. If you want SMS from a different service, you must order a new number for that service. Alternatively, use the "other" service option to receive SMS from any service not listed in the Get services.
SMS
Catalog
Balance
id and phone.phone.id at 10-second intervals to receive SMS. Continue this process until the either expire_at timestamp is exceeded or sms_status = smsReceived. If the sms_status is smsReceived, you can use the code and message from the response and stop polling. If supported you can request one more SMS message from the same number, using retry activation endpoint.There are three different types of rate limits you should be aware of:
In the event of a block, you will receive a 429 error code, along with information on when your account will be unblocked.
To prevent the scanning of phone numbers, a minimum success rate for receiving SMS messages is required to be maintained. If your success rate falls below 7%, your account will be subjected to a 24-hour block.
The success rate is calculated within a 24-hour window as follows:
Note: The calculation of the success rate starts after the 10th number has been ordered.
You have the option to unblock your account from within your dashboard 3 times in 24 hours.
To prevent abuse, the maximum number of active activations is limited to 20. If you reach this limit, you will receive a 429 error code. You can cancel an active activation to free up space for a new one. If you need more than 20 active activations, please contact us.
To ensure optimal performance, the following API methods are subject to these rate limits:
| Method | Path | Limit |
|---|---|---|
| GET | user/balance | 300 requests per 1 minute |
| POST | activation | 300 requests per 1 minute |
| PUT | activation/:id/retry | 50 requests per 1 minute |
| PUT | activation/:id/cancel | 50 requests per 1 minute |
| GET | activation/history | 6 requests per 1 minute |
| GET | activation/:id | 300 requests per 1 minute |
| GET | activation/countries | 15 requests per 1 minute |
| GET | activation/services | 15 requests per 1 minute |
| GET | activation/prices/countries | 6 requests per 1 minute |
| GET | activation/prices/services | 6 requests per 1 minute |
| GET | activation/prices/services/:service_id/countries/:country_id | 60 requests per 1 minute |
The API is subject to change without notice. We will try to keep the API backwards compatible, but we cannot guarantee it. If we make backwards incompatible changes, we will release a new version of the API. The version will be included in the URL. For example, if the current version is v1, the URL will be https://temp-number-api.com/api/v1. If we release a new version, the URL will be https://temp-number-api.com/api/v2.
SMS activation is a process used in registration, verification, or activation of user accounts, services, or software via SMS text message. This API may be used to automate the activation by receiving SMS to temporary mobile phone number. This section contains the operations related to SMS activation, such as ordering a number, checking the activation status, and retrying or canceling the activation.
Returns a mobile phone number for service activation and activation id. Send an SMS to the provided phone number and use the activation ID to check the SMS with GET /activation/:activation_id.
service_id and country_id to order a number. Retrieve these IDs via GET /activation/services and GET /activation/countries.other service. Note: other service usage is not allowed for services listed in our catalog.is_retriable field in response suggests, if the activation can receive multiple SMS messages.Billing for SMS Activation
max_priceTo avoid unexpected charges, you can specify a max_price — the maximum amount (in USD cents) you’re willing to pay for an activation. This helps control your budget and ensures you don't accidentally overspend.
max_price?If we can’t find an available number within your specified max_price, you’ll receive a 409 MaxPriceExceededException. This means your budget was too low for current availability, but good news — we’ve found suitable numbers just above your limit.
suggestedPrice and order_idThe error response includes:
suggestedPrice: the nearest available price for an activationorder_id: a continuation token that keeps the context of your original requestTo retry the activation:
max_price to the suggestedPrice (or higher)order_id in your requestThis ensures you're continuing the same order attempt and improves your chance of success by preserving the original selection context.
Using order_id is highly recommended. It:
We constantly monitor the quality of our phone number suppliers. Since higher quality numbers have a better chance of successfully receiving SMS messages, we recommend taking quality into account when ordering numbers.
Quality Factor: The quality_factor parameter allows you to balance quality against price. This parameter is an integer ranging from 0 to 100, with a default value of 50.
Please refer to "Get activation state" endpoint documentation for the response schema details.
| service_id required | string [ 1 .. 30 ] characters ID of Service being verified. Can be retrieved using |
| country_id required | string [ 2 .. 9 ] characters ID of phone number Country. Can be retrieved using |
| max_price | integer [ 1 .. 10000 ] Maximum price in USD cents you are willing to pay for activation. This safeguards against price changes. If the actual price exceeds this limit, a 409 error is returned along with the new suggested price. |
| order_id | string Optional continuation token for an activation attempt that failed due to pricing limits. When you receive a In that case, the response includes a This ensures the system can continue the previous attempt with the same selection context, potentially increasing the success rate and reducing redundant attempts. Recommended Usage:
|
| quality_factor | number [ 0 .. 100 ] Quality factor for the number. The quality factor is a number between 0 and 100. The default value is 50. 0 - means prefer price over quality. 100 - means prefer quality over price. |
{- "service_id": "7eleven",
- "country_id": "us",
- "max_price": 90,
- "order_id": "682b17b958bf608ceae5ec3c",
- "quality_factor": 10
}{- "activation_id": "64a1c0e8d2a1f9b7e45d3b8e",
- "price": 20,
- "phone": "14155552671",
- "country_id": "us",
- "service_id": "netflix",
- "sms_status": "smsRequested",
- "activation_status": "active",
- "billing_status": "reserved",
- "report_status": null,
- "sms_code": null,
- "sms_text": null,
- "expire_at": 1729088539,
- "updated_at": 1729087939,
- "created_at": 1729087339,
- "is_retriable": false,
- "cancelable_after": null
}Retrieve the activation state, including activation status, sms status, billing status, expiration, SMS code and text message, etc.
Typically, this endpoint is polled either until the SMS is received or the activation expires.
There are several statuses that an activation can have, each representing a different state of the activation process. The following are the possible statuses:
"smsRequested": The initial state when an SMS is requested but not yet received."smsReceived": The SMS has been received."retryRequested": The user has requested another SMS."retryReceived": The user has received a another SMS."active": The activation is currently active and can proceed."finalized": The user has confirmed the activation, and no further changes are possible."expired": The activation has expired based on the expire_at timestamp."canceled": The activation was canceled before any SMS was received."reserved": Funds are reserved from the user's available balance upon activation creation."released": No SMS was received, and reserved funds were returned to the available balance."billed": An SMS was received, and the reserved funds have been charged."refunded": A refund was issued after a user report, and the amount was returned to the available balance.null: No report has been made."inReview": The report is under review."declined": The report was reviewed, and no refund was granted."approved": The report was reviewed, and a refund was issued.Each activation has a limited lifetime. The expiration time of an activation can be determined by the expire_at attribute. If the activation is not completed within this timeframe, it will expire, and no further SMS retrievals will be possible.
expire_at field to ensure the activation is still valid. If the current time is past expire_at, consider the activation expired, even if the activation_status field has not yet been updated to "expired".activation_status field includes "finalized" to indicate that the activation has been confirmed by the user, and no further changes are allowed. Finalized activations should be removed from the active activations list.report_status field to track the outcome of any user reports regarding issues with the activation. This field is closely related to the billing_status if a refund is issued.cancelable_after field indicates when an activation can be canceled. If this field is null, the activation does not support cancellation. If the current time is past the cancelable_after timestamp, the activation can be canceled using cancel operation.is_retriable field indicates whether the user can request another SMS. If true, the user can request a retry SMS using the retry operation. Retry possible after first sms recieved and while activation_status is active.price field indicates the cost of the activation in USD cents. The amount is reserved from the user's available balance when the activation is created. The billing_status field indicates the current billing state of the activation.| activation_id required | string Example: 63f4d0dab040a865d80da08a Activation id |
curl -X GET "${server_base_path}/api/v1/activation/${activation_id}" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
{- "activation_id": "64a1c0e8d2a1f9b7e45d3b8e",
- "price": 20,
- "phone": "14155552671",
- "country_id": "us",
- "service_id": "netflix",
- "sms_status": "smsRequested",
- "activation_status": "active",
- "billing_status": "reserved",
- "report_status": null,
- "sms_code": null,
- "sms_text": null,
- "expire_at": 1729088539,
- "updated_at": 1729087939,
- "created_at": 1729087339,
- "is_retriable": false,
- "cancelable_after": null
}Instructs the server to overwrite the previous SMS with the first one arriving. Both "code" and "text" fields will be updated. This operation is free of charge, as billing occurs upon receipt of the first SMS.
This operation is only possible if:
sms_status of the activation is either smsReceived or retryReceived.activation_status = active.is_retriable = true.| activation_id required | string Example: 63f4d0dab040a865d80da08a Activation id |
curl -X PUT "${server_base_path}/api/v1/activation/${activation_id}/retry" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
{- "result": "success"
}Typically, you can cancel an active activation as long as no SMS has been received.
The cancelable_after field indicates when an activation can be canceled:
null, the activation does not support cancellation.cancelable_after timestamp, the activation can be canceled using cancel operation.Cancellation is only possible if:
activation_status = active.sms_status = smsRequested.cancelable_after allows cancelation.| activation_id required | string Example: 63f4d0dab040a865d80da08a Activation id |
curl -X PUT "${server_base_path}/api/v1/activation/${activation_id}/cancel" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
{- "result": "success"
}Finalize an activation to prevent further SMS messages from being sent to the phone number and to reduce the number of active numbers.
Finalize is only possible if:
sms_status of the activation is either of smsReceived, retryRequested or retryReceived.activation_status = activebilling_status = billed| activation_id required | string Example: 63f4d0dab040a865d80da08a Activation id |
curl -X PUT "${server_base_path}/api/v1/activation/${activation_id}/finalize" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
{- "result": "success"
}Fetches a history of activations, offering a comprehensive overview of past activation records. Each record includes activation details. The response is organized in a paginated format, allowing for efficient navigation through the activation records.
| page | integer Default: 1 Example: page=2 Selected page number |
| limit | integer [ 1 .. 50 ] Default: 10 Example: limit=10 Items limit per page |
curl -X GET "${server_base_path}/api/v1/activations" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
{- "activations": [
- {
- "activation_id": "63f4d0dab040a865d80da08a",
- "phone": "447975777666",
- "country_id": "uk",
- "service_id": "7eleven",
- "sms_status": "smsRequested",
- "activation_status": "expired",
- "billing_status": "billed",
- "report_status": null,
- "sms_code": "6363",
- "sms_text": "Your code is 6363",
- "price": 90,
- "expire_at": 1679061628,
- "updated_at": 1679061629,
- "created_at": 1679061001,
- "is_retriable": true,
- "cancelable_after": null
}
], - "page": 1,
- "limit": 10,
- "pages": 5,
- "total": 48
}The section includes endpoints for obtaining prices for activation. Various services have different activation costs, which also depend on the country of the mobile number being ordered. All prices are listed in USD cents. In addition to the price, you can also retrieve the number of available phone numbers for sale.
Retrieve the price and availability for a specific service in a specific country.
Use service_id and country_id to specify the service and country, respectively.
These identifiers can be found via the getServices and getCountries operations.
| service_id required | string <^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9\-_]*[a-zA-Z0-9])\.)*([A-Za-z]|[A-Za-z][A-Za-z0-9\-_]*[A-Za-z0-9])$> [ 1 .. 30 ] characters Example: 7eleven Service ID, as returned by |
| country_id required | string [ 2 .. 9 ] characters ^[a-zA-Z0-9]+([-_]*[a-zA-Z0-9]+)*$ Example: uk Country ID, as returned by the |
curl -X GET "${server_base_path}/api/v1/activation/prices/services/${service_id}/countries/${country_id}" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
{- "price": {
- "min": 210,
- "max": 510,
- "suggested": 310
}, - "quality": {
- "avg": 0.3
}, - "count": 143
}Retrieve a comprehensive price list, organized by country. This endpoint returns a list of countries, each accompanied by an array of services available within that country, their respective prices, and the amount of available numbers for sale.
Use optional country_id query parameter to get prices in a specific country.
| country_id | string [ 2 .. 9 ] characters ^[a-zA-Z0-9]+([-_]*[a-zA-Z0-9]+)*$ Example: country_id=uk Country ID, as returned by the |
curl -X GET "${server_base_path}/api/v1/activation/prices/countries" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
[- {
- "country_id": "uk",
- "services": [
- {
- "service_id": "7eleven",
- "price": {
- "min": 210,
- "max": 510,
- "suggested": 310
}, - "quality": {
- "avg": 0.3
}, - "count": 143
}
]
}
]Retrieve a comprehensive price list, organized by service. This endpoint returns a list of services, each accompanied by an array of countries available for that service, their respective prices, and the amount of available numbers for sale.
Use optional service_id query parameter to get prices for a specific service.
| service_id | string <^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z]|[A-Za-z][A-Za-z0-9\-]*[A-Za-z0-9])$> [ 1 .. 30 ] characters Example: service_id=7eleven Service ID, as returned by |
curl -X GET "${server_base_path}/api/v1/activation/prices/services" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
[- {
- "service_id": "7eleven",
- "countries": [
- {
- "country_id": "uk",
- "price": {
- "min": 210,
- "max": 510,
- "suggested": 310
}, - "quality": {
- "avg": 0.3
}, - "count": 143
}
]
}
]The catalog includes endpoints used to retrieve lists of countries and services available for activation. The list of services is regularly updated, with new services added to the catalog as they become available. These lists contain the IDs of the countries and services, which are utilized in the activation process. Before ordering a number, you should first verify the availability of the service and country through the price endpoints.
Returns a list of countries, including each country's unique identifier and name.
Use the country_id to specify the country when creating an activation.
Countries that has suffix _v in their country_id are countries that contains only virtual mobile phone numbers. E.g. us_v is United States (Virtual) containing virtual mobile phone numbers in USA.
| If-None-Match | string Example: 2a7d00a6580048cdc81c1ac65bab7be9820e4465 Optional header for cache validation based on X-ETag. |
curl -X GET "${server_base_path}/api/v1/activation/countries" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
[- {
- "country_id": "uk",
- "name": "United Kingdom",
- "alt_name": "France|frankrijk|frança|франция|fr",
- "codes": [
- "1658",
- "1876"
]
}
]Returns a list of services, including each service unique identifier and name. Use the service_id to specify the service when creating an activation.
Service with ID other is special service that must be used when you want to get number for service activation that is not listed in the services list. Please note that using the other service for activating services that are listed may result in account suspension.
| If-None-Match | string Example: 2a7d00a6580048cdc81c1ac65bab7be9820e4465 Optional header for cache validation based on X-ETag. |
curl -X GET "${server_base_path}/api/v1/activation/services" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
[- {
- "service_id": "7eleven",
- "name": "7-Eleven",
- "alt_name": "7-Eleven",
- "has_description": true,
- "has_warning": false
}
]Returns a list of popular services. It may be used to show the most popular services to the user to simplify the selection process.
Service with ID other is special service that must be used when you want to get number for service activation that is not listed in the services list. Please note that using the other service for activating services that are listed may result in account suspension.
| If-None-Match | string Example: 2a7d00a6580048cdc81c1ac65bab7be9820e4465 Optional header for cache validation based on X-ETag. |
curl -X GET "${server_base_path}/api/v1/activation/services" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
[- {
- "service_id": "7eleven",
- "name": "7-Eleven",
- "alt_name": "7-Eleven",
- "has_description": true,
- "has_warning": false
}
]Retrieves the user's current balance, which is provided in USD cents. Note that there may be a slight delay in the balance update.
curl -X GET "${server_base_path}/api/v1/user/balance" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
{- "total": 2301,
- "reserved": 210
}Returns a list of available report reasons IDs with name and evidence requirements for activation. Reasons list depends on current activation state.
Workflow:
getActivationReportReasons endpoint.
Along with the list of valid report reason IDs, you will also get if evidence is required.Use IDs from response to create report for the same activation you got reasons for.
Full list of Report Reasons:
| ID | Reason name |
|---|---|
| 1 | SMS is not coming |
| 2 | Wrong SMS received |
| 3 | Service not accepting the number |
| 4 | Number has been used before |
| 5 | Blocked after activation |
| 6 | SMS received too late |
| 7 | Other reason |
| activation_id required | string Example: 63f4d0dab040a865d80da08a Activation id |
curl -X GET "${server_base_path}/api/v1/activation/{activation_id}/report/reasons" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
[- {
- "reason_id": 1,
- "reason_name": "SMS is not coming",
- "evidence_required": true
}, - {
- "reason_id": 2,
- "reason_name": "Wrong SMS received",
- "evidence_required": false
}
]This endpoint allows you to create a report for a specific activation.
Important: Only one report can be created per activation. Submitting invalid or incomplete data may result in the report being declined.
Declined Report Response Details:
If the report is not accepted, you will receive a response with a decline_id. Below are the possible reasons corresponding to each decline_id:
| Decline ID | Reason |
|---|---|
| 1 | Try another number |
| 2 | Retry using the same number |
Workflow:
Retrieve Available Report Reasons: Before creating a report, you must first retrieve the available report reasons for the specific activation using the getActivationReportReasons endpoint.
This will return a list of valid report reason IDs based on the current state of the activation, along with any evidence requirements.
Submit a Report: Once you have obtained the list of valid report reasons, you can create a report by selecting an appropriate reason ID and including any required evidence.
If required, the evidence parameter must be provided in base64 format, following the guidelines outlined in the request body specification.
Ensure that the reason ID and any accompanying evidence match the list returned by the getActivationReportReasons endpoint.
| activation_id required | string Example: 63f4d0dab040a865d80da08a Activation id |
| reason_id required | integer >= 1 ID of reason |
| message | string <= 1000 characters Message with details about the report. |
| evidence | string <binary> File upload for evidence. Acceptable file types: jpg, png, webp, zip, pdf, mp4. Maximum file size: 5MB. |
curl -X POST "${server_base_path}/api/v1/activation/${activation_id}/report" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE" \ -d '{"reason_id": 4, "message": "2FA enabled here"}'
{- "status": "accepted",
- "decline_id": null
}Return a report object by Activation Id
| activation_id required | string Example: 63f4d0dab040a865d80da08a Activation id |
curl -X GET "${server_base_path}/api/v1/activation/${activation_id}/report" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
{- "reason_id": 1,
- "reason_name": "SMS is not coming",
- "message": "Test message",
- "activation_state_snapshot": "{\"activation_status\":\"active\",\"sms_status\":\"smsRequested\",\"billing_status\":\"reserved\",\"sms_code\":null,\"sms_text\":null,\"updated_at\":1725264364}",
- "updated_at": 1679061001,
- "created_at": 1679061001,
- "activation": {
- "activation_id": "63f4d0dab040a865d80da08a",
- "phone": "447975777666",
- "country_id": "uk",
- "service_id": "7eleven",
- "sms_status": "smsRequested",
- "activation_status": "expired",
- "billing_status": "billed",
- "report_status": null,
- "sms_code": "6363",
- "sms_text": "Your code is 6363",
- "price": 90,
- "expire_at": 1679061628,
- "updated_at": 1679061629,
- "created_at": 1679061001,
- "is_retriable": true,
- "cancelable_after": null
}
}Returns a list of reports with pagination
| page | integer Default: 1 Example: page=2 Selected page number |
| limit | integer [ 1 .. 100 ] Default: 10 Example: limit=10 Items limit per page |
curl -X GET "${server_base_path}/api/v1/activation/reports" \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY_HERE"
{- "reports": [
- {
- "reason_id": 1,
- "reason_name": "SMS is not coming",
- "message": "Test message",
- "activation_state_snapshot": "{\"activation_status\":\"active\",\"sms_status\":\"smsRequested\",\"billing_status\":\"reserved\",\"sms_code\":null,\"sms_text\":null,\"updated_at\":1725264364}",
- "updated_at": 1679061001,
- "created_at": 1679061001,
- "activation": {
- "activation_id": "63f4d0dab040a865d80da08a",
- "phone": "447975777666",
- "country_id": "uk",
- "service_id": "7eleven",
- "sms_status": "smsRequested",
- "activation_status": "expired",
- "billing_status": "billed",
- "report_status": null,
- "sms_code": "6363",
- "sms_text": "Your code is 6363",
- "price": 90,
- "expire_at": 1679061628,
- "updated_at": 1679061629,
- "created_at": 1679061001,
- "is_retriable": true,
- "cancelable_after": null
}
}
], - "page": 1,
- "limit": 10,
- "pages": 5,
- "total": 48
}Webhooks provide real-time notifications when significant state changes occur within the system. They enable external systems to react to updates without polling the API.
For more details on setting up and handling webhooks, refer to the Webhook Guide.
Issued when an activation's sms_status changes to either:
smsReceivedretryReceivedThis event can be used to notify the customer when sms is received.
| x-webhook-id required | string The webhook ID |
| x-timestamp required | integer Example: 1632400000 The timestamp of the webhook |
| x-signature required | string The signature of the webhook |
| id required | string A unique identifier for the webhook event. Used for idempotency. |
| api_version required | string The version of the API that the webhook event is using. |
| type required | string Enum: "account.low_balance" "activation.updated" "activation_report.updated" "alternative.activation.updated" The type of webhook event. |
required | object (Activation) The payload of the webhook event. The structure of this object varies depending on the event type. |
{- "id": "abcd1234",
- "api_version": "1.0",
- "type": "activation.updated",
- "data": {
- "activation_id": "63f4d0dab040a865d80da08a",
- "phone": "447975777666",
- "country_id": "uk",
- "service_id": "7eleven",
- "sms_status": "smsRequested",
- "activation_status": "expired",
- "billing_status": "billed",
- "report_status": null,
- "sms_code": "6363",
- "sms_text": "Your code is 6363",
- "price": 90,
- "expire_at": 1679061628,
- "updated_at": 1679061629,
- "created_at": 1679061001,
- "is_retriable": true,
- "cancelable_after": null
}
}{- "result": "success"
}Issues a webhook when the activation report status is updated.
| x-webhook-id required | string The webhook ID |
| x-timestamp required | integer Example: 1632400000 The timestamp of the webhook |
| x-signature required | string The signature of the webhook |
| id required | string A unique identifier for the webhook event. Used for idempotency. |
| api_version required | string The version of the API that the webhook event is using. |
| type required | string Enum: "account.low_balance" "activation.updated" "activation_report.updated" "alternative.activation.updated" The type of webhook event. |
required | object (ActivationReportUpdated) The payload of the webhook event. The structure of this object varies depending on the event type. |
{- "id": "abcd1234",
- "api_version": "1.0",
- "type": "activation.updated",
- "data": {
- "activation_id": "63f4d0dab040a865d80da08a",
- "phone": "447975777666",
- "country_id": "uk",
- "service_id": "7eleven",
- "sms_status": "smsRequested",
- "activation_status": "expired",
- "billing_status": "billed",
- "report_status": null,
- "sms_code": "6363",
- "sms_text": "Your code is 6363",
- "price": 90,
- "expire_at": 1679061628,
- "updated_at": 1679061629,
- "created_at": 1679061001,
- "is_retriable": true,
- "cancelable_after": null
}
}{- "result": "success"
}Issues a webhook when the account's balance is low.
| x-webhook-id required | string The webhook ID |
| x-timestamp required | integer Example: 1632400000 The timestamp of the webhook |
| x-signature required | string The signature of the webhook |
| id required | string A unique identifier for the webhook event. Used for idempotency. |
| api_version required | string The version of the API that the webhook event is using. |
| type required | string Enum: "account.low_balance" "activation.updated" "activation_report.updated" "alternative.activation.updated" The type of webhook event. |
required | object (AccountBalance) The payload of the webhook event. The structure of this object varies depending on the event type. |
{- "id": "abcd1234",
- "api_version": "1.0",
- "type": "activation.updated",
- "data": {
- "activation_id": "63f4d0dab040a865d80da08a",
- "phone": "447975777666",
- "country_id": "uk",
- "service_id": "7eleven",
- "sms_status": "smsRequested",
- "activation_status": "expired",
- "billing_status": "billed",
- "report_status": null,
- "sms_code": "6363",
- "sms_text": "Your code is 6363",
- "price": 90,
- "expire_at": 1679061628,
- "updated_at": 1679061629,
- "created_at": 1679061001,
- "is_retriable": true,
- "cancelable_after": null,
- "balance": 2301
}
}{- "result": "success"
}