Référence des endpoints
Dix endpoints couvrent tout le parcours : consulter le solde, parcourir les applications et les pays, acheter un numéro, lire le SMS et clôturer la commande.
Quels endpoints propose l’API SMS Nitro ?
GET /v1/balance, GET /v1/services, GET /v1/services/{product}/countries, POST /v1/orders, GET /v1/orders, GET /v1/orders/{id}, et POST /v1/orders/{id}/finish, /cancel, /resend et /ban. Tous se trouvent sous https://smsnitro.com/api et exigent l’en-tête X-Api-Key.
Tous les endpoints
| Endpoint | Rôle |
|---|---|
| GET /v1/balance | Solde disponible et montant réservé par les commandes ouvertes (USD) |
| GET /v1/services | Applications disponibles avec leur prix de départ. Facultatifs : country, server (1 ou 2), search |
| GET /v1/services/{product}/countries | Pays d’une application avec prix, taux de réussite et indicatif. Facultatif : server |
| POST /v1/orders | Achète un numéro. Corps : product (obligatoire), country, operator, server |
| GET /v1/orders | Vos commandes, de la plus récente à la plus ancienne. Facultatifs : limit (1 à 100, 50 par défaut), offset |
| GET /v1/orders/{id} | Une commande synchronisée en temps réel : c’est ici qu’apparaît le SMS |
| POST /v1/orders/{id}/finish | Clôture l’activation après utilisation du code |
| POST /v1/orders/{id}/cancel | Annule avant tout SMS et rembourse le montant réservé |
| POST /v1/orders/{id}/resend | Demande un autre SMS sur le même numéro, après le premier code |
| POST /v1/orders/{id}/ban | Rend un numéro que l’application signale comme déjà utilisé |
Parcourir applications et pays
Utilisez les endpoints du catalogue pour choisir quoi acheter. La valeur de product (par exemple telegram) est l’identifiant à envoyer lors de l’achat. Dans la liste des pays, rate3 et rate24 sont les taux de livraison récents en pourcentage, et offers indique le prix de chaque serveur.
curl "https://smsnitro.com/api/v1/services?country=usa" \
-H "X-Api-Key: $SMSNITRO_API_KEY"[
{ "product": "telegram", "price": "0.30", "count": 850,
"rate": null, "countries": [], "countries_count": 120 }
]curl https://smsnitro.com/api/v1/services/telegram/countries \
-H "X-Api-Key: $SMSNITRO_API_KEY"[
{
"country": "usa", "name": "United States", "iso": "us", "dial_code": "+1",
"price": "0.45", "count": 1200, "rate3": 95.0, "rate24": null, "server": 1,
"offers": [
{ "server": 1, "price": "0.45", "count": 1200, "rate3": 95.0 },
{ "server": 2, "price": "0.52", "count": 300, "rate3": 88.0 }
]
}
]Acheter un numéro
Envoyez product et country. Le pays accepte l’identifiant du catalogue (usa, england), le code ISO (gb) ou le nom anglais, avec usa par défaut. Omettez server pour laisser l’API choisir le meilleur. La réponse est la commande au statut PENDING, avec le numéro à saisir dans l’application.
| Champ | Description |
|---|---|
| product | Obligatoire. Identifiant de l’application dans GET /v1/services |
| country | Facultatif. Identifiant du catalogue, ISO 3166-1 alpha-2 ou nom anglais. Par défaut : usa |
| operator | Facultatif. Opérateur, any par défaut |
| server | Facultatif. 1 ou 2. Sans lui : automatique |
curl -X POST https://smsnitro.com/api/v1/orders \
-H "X-Api-Key: $SMSNITRO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"product": "telegram", "country": "usa"}'{
"id": 123456,
"provider_order_id": "987654321",
"country": "usa",
"operator": "any",
"product": "telegram",
"phone": "+12025550123",
"status": "PENDING",
"price": "0.45",
"created_at": "2026-10-24T12:00:00Z",
"expires": "2026-10-24T12:20:00Z",
"messages": [],
"awaiting_resend": false,
"server": 1
}Lire le SMS
Interrogez la commande toutes les 3 à 5 secondes. À l’arrivée du SMS, le statut passe à RECEIVED et messages contient l’expéditeur, le texte complet et le code extrait. Utilisez code quand il est rempli ; sinon, lisez text.
curl https://smsnitro.com/api/v1/orders/123456 \
-H "X-Api-Key: $SMSNITRO_API_KEY"{
"id": 123456,
"phone": "+12025550123",
"status": "RECEIVED",
"price": "0.45",
"expires": "2026-10-24T12:20:00Z",
"messages": [
{
"sender": "Telegram",
"text": "Telegram code: 48291",
"code": "48291",
"received_at": "2026-10-24T12:01:10Z"
}
],
"awaiting_resend": false,
"server": 1
}Terminer, annuler, redemander ou rendre
Chaque action renvoie la commande mise à jour. Les règles qui encadrent chacune figurent dans la page du cycle de commande.
# Done: the code worked
curl -X POST https://smsnitro.com/api/v1/orders/123456/finish -H "X-Api-Key: $SMSNITRO_API_KEY"
# No SMS: cancel and get the frozen amount back
curl -X POST https://smsnitro.com/api/v1/orders/123456/cancel -H "X-Api-Key: $SMSNITRO_API_KEY"
# Another SMS on the same number (after the first code, no extra cost)
curl -X POST https://smsnitro.com/api/v1/orders/123456/resend -H "X-Api-Key: $SMSNITRO_API_KEY"
# The app says the number is already used: return it
curl -X POST https://smsnitro.com/api/v1/orders/123456/ban -H "X-Api-Key: $SMSNITRO_API_KEY"Lister vos commandes
curl "https://smsnitro.com/api/v1/orders?limit=20&offset=0" \
-H "X-Api-Key: $SMSNITRO_API_KEY"Questions fréquentes
Existe-t-il un webhook à l’arrivée du SMS ?
Non. Interrogez GET /v1/orders/{id} toutes les 3 à 5 secondes ; le SMS apparaît dès son arrivée.
À quoi sert le champ server ?
Les numéros proviennent de deux serveurs d’approvisionnement. Le serveur 1 est le principal, le 2 l’alternative. Sans ce champ, l’API choisit ; renseignez-le pour comparer les prix ou réessayer sur l’autre.