API propre à Get-SMS

Voici une description du fonctionnement de notre API. Elle vous permet d'intégrer vos solutions logicielles à notre service, afin d'accélérer le processus de vérification de compte et de vous passer du travail manuel.

Obtenir le solde de l'utilisateur

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v1/?method=getbalance&userkey=testapikey
Paramètres:
method = getbalance
userkey = YOUR_APIKEY

Réponse:
Si la requête réussit, un JSON avec le « status » 200 est renvoyé.
La clé « balance » de l'objet « data » indique votre solde actuel :
{
   "status": 200,
   "data": {
      "balance": 100,00
   }
}

Codes d'erreur (status):
500 - erreur de traitement de la requête
401 - clé API utilisateur non précisée ou incorrecte
404 - paramètre de méthode incorrect

Obtenir la liste des services et le nombre de numéros disponibles

Si vous avez besoin d'une liste des services avec leur nombre actuel dans le système, utilisez cette méthode.

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v1/?method=getcount&userkey=testapikey&country=kazakhstan
Paramètres:
method = getcount
userkey = YOUR_APIKEY
country = kazakhstan Pays. Paramètre facultatif. Par défaut : kazakhstan (Kazakhstan). La liste complète des valeurs possibles pour le pays se trouve dans la section "Liste des pays" section

Réponse:
Si la requête réussit, un JSON avec le « status » 200 est renvoyé. Le résultat de la requête est un objet contenant deux clés : « status » et « data ». La clé « status » indique le résultat de la requête. La clé « data » contient un objet avec les clés des opérateurs. Chaque clé d'opérateur contient un objet décrivant les services.
Chaque objet de service a deux clés : « count » - la quantité actuelle, et « price » - le prix.
Cette structure permet d'accéder facilement aux informations recherchées. Par exemple, après décodage du JSON en PHP, vous pouvez lire le nombre de WhatsApp pour n'importe quel opérateur ainsi : $decoded_json['ANY']['wapp']['count'].
Les codes de tous les services se trouvent dans la section Liste des services.
{
   "status": 200,
   "data": {
   // any operator
      "ANY": {
         "vk": {
            "count": 0,
            "price": "5"
         },
         "ok": {
            "count": 0,
            "price": "5"
         },
         "wapp": {
            "count": 1,
            "price": "2"
         },
         "vbr": {
            "count": 10,
            "price": "2"
         }
      }
      ...
      // Only Tele2
      "TELE2": {
         ...
      },
      // Only Beeline
      "BEELINE": {
         ...
      },
      // Only Megafon
      "MEGAFON": {
         ...
      },
      // Only MTS
      "MTS": {
         ...
      }
   }
}

Si une erreur survient lors de l'exécution de la requête, un JSON avec le « status » 500 est renvoyé. Le problème est causé par une erreur lors du traitement avec la base de données.
Si vous recevez cette erreur sur cette requête, veuillez contacter immédiatement l'administration du projet Get-SMS:
{
   "status": 500,
   "data": {
      "msg": "Failed to generate a service count"
   }
}
Codes d'erreur (status):
500 - erreur de traitement de la requête
401 - clé API utilisateur non précisée ou incorrecte
404 - paramètre de méthode incorrect

Obtention d'un numéro de téléphone

L'élément central de tout le projet est la délivrance de numéros de téléphone pour l'activation. Avant d'obtenir un numéro de téléphone, vérifiez que vous avez suffisamment de fonds sur votre solde et qu'il y a des numéros disponibles dans le système.
Petite précision et information complémentaire.
Lorsqu'un numéro de téléphone est délivré, nous créons une commande virtuelle qui vous permet de recevoir un SMS depuis ce numéro dans les 15 minutes. Pendant la durée de vie de la commande, une partie de votre solde est mise en réserve, afin d'éviter des débits erronés lors d'un travail multi-flux avec l'API, et d'empêcher les utilisateurs d'abandonner la commande sans avoir reçu de SMS.

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v1/?method=getnumber&service=vk&userkey=testapikey&country=kazakhstan
Paramètres:
method = getnumber
service = vk Service. Paramètre obligatoire. La liste complète des valeurs de service se trouve dans la section "Liste des services" section.
userkey = YOUR_APIKEY
country = kazakhstan Pays. Paramètre facultatif. Par défaut : kazakhstan (Kazakhstan). La liste complète des valeurs possibles pour le pays se trouve dans la section "Liste des pays" section

Réponse:
Si la requête réussit, un JSON est renvoyé avec la clé « status » égale à 200.
La clé « data » contiendra un objet avec les clés « order_id » - le numéro de commande à utiliser par la suite avec le numéro de téléphone, et « phone » - le numéro de téléphone destiné à recevoir le SMS contenant le code de vérification.
Le numéro de téléphone est au format international avec l'indicatif du pays, sans le signe +. Attention à bien en tenir compte.
{
   "status": 200,
   "data": {
      "order_id": "377253343",
      "phone": "79969817867",
      "start_time": "2023-02-23T13:11:57.373Z"
   }
}

Il se peut que nous n'ayons temporairement plus de numéros de téléphone disponibles pour le service commandé ; dans ce cas, le « status » sera 500 :
{
   "status": 500,
   "data": {
      "msg": "No phone number was found for this request",
      "advice": "Please try to retrieve the phone number later, after new numbers become available"
   }
}
Codes d'erreur (status):
401 - clé API utilisateur non précisée
404 - paramètre de méthode incorrect
500 - aucun numéro disponible
502 - le service n'existe pas
503 - l'opérateur n'existe pas
504 - solde insuffisant
505 - le pays n'existe pas
506 - vous êtes temporairement bloqué jusqu'au lendemain
507 - maintenance technique en cours

Récupération d'un code depuis un SMS

La dernière étape de l'activation consiste à recevoir un code ainsi que le texte complet du SMS pour confirmer le numéro de compte.
L'algorithme de réception du SMS est le suivant :
1. Envoyez une requête sms, en remplaçant la valeur de la clé order_id par celle obtenue dans la requête getnumber.
2. Si le « status » est 200, le SMS a été reçu.
3. Si le « status » est 400, le SMS n'est pas encore arrivé ou n'a pas été trouvé ; recommencez alors l'étape 1 au bout de 5 secondes.
4. Si le « status » est 500, cela signifie que le délai de la commande a expiré.

Que faire si ma commande a expiré et que je n'ai pas reçu de SMS ?
Cela peut avoir plusieurs raisons :
- le SMS n'a pas été envoyé par le service concerné
- le modèle de recherche du SMS n'est pas à jour
- une erreur est survenue au niveau de notre équipement
- vous avez saisi un mauvais numéro de téléphone par erreur.
Dans tous les cas, aucune somme ne sera débitée de votre compte si aucun SMS n'a été reçu.
Si vous pensez que l'erreur vient de notre côté, nous serons ravis de vous aider via support technique.

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v1/?method=getcode&order_id=377253343&userkey=testapikey
Paramètres:
method = getcode
order_id = 377253343 Numéro de commande obtenu via la requête number. Valeur obligatoire.
userkey = YOUR_APIKEY

Réponse:
Si la requête est exécutée avec succès, un JSON sera reçu avec la clé « status » égale à 200.
La clé « data » contiendra un objet avec les détails du SMS :
code - le code trouvé par le système dans le SMS. Le code peut être nul s'il n'a pas pu être détecté
fullSms - le texte complet du SMS reçu
phone - le numéro de téléphone auquel le SMS a été envoyé, au format international sans le signe +
receivedDate - date de réception du SMS au format ISO
sender - l'expéditeur indiqué dans le SMS. Peut être vide.
id - identifiant du SMS pour la méthode wrongcode (SMS supplémentaire en tant que paramètre « last_id »)
phonePass - le mot de passe du compte personnel chez le fournisseur du service. Peut être vide.
{
   "status": 200,
   "data": {
      "code": "753455",
      "fullSms": "753455",
      "phone": "79969817867",
      "receivedDate": "2023-02-23T13:18:57.373Z",
      "sender": "",
      "id": "377253343",
      "phonePass": ""
   }
}

Vous pouvez également recevoir un JSON avec le « status » 400 ; ce n'est pas une erreur, mais une réponse normale du système lorsque votre SMS n'est pas encore arrivé.
Pour continuer, répétez simplement la requête de code au bout de 5 secondes.
Cela doit être répété jusqu'à recevoir le SMS, ou jusqu'à ce qu'une erreur indique que la durée de vie de la commande a expiré (erreur 500) :
{
   "status": 400,
   "data": {
      "msg": "The SMS has not been found yet",
      "advice": "The SMS has probably not been received yet. Please try the request again in 10 seconds"
   }
}
Codes d'erreur (status):
500 - la durée de vie de la commande a expiré
502 - erreur interne, veuillez réessayer
504 - solde insuffisant
505 - commande introuvable dans le système
506 - le paramètre order_id n'est pas précisé
401 - la clé API utilisateur n'est pas précisée
404 - paramètre de méthode incorrect

Récupération du code

Sur notre service, vous ne payez pas pour chaque code, mais pour une sorte de location temporaire d'un numéro de téléphone pour un service donné. En pratique, vous disposez de 15 minutes pendant lesquelles vous pouvez recevoir tous les SMS envoyés au numéro attribué pour le service commandé.
À quoi cela peut-il vous servir ? Par exemple, vous créez un portefeuille Qiwi et devez recevoir un SMS pour désactiver la fonction de sécurité de Qiwi. Pour cela, vous recevez le premier SMS, créez le portefeuille, désactivez la fonction de sécurité dans Qiwi, puis nous envoyez une requête wrongcode, et nous vous fournissons le second SMS de Qiwi absolument gratuitement. Il n'y a pas de limite au nombre de SMS supplémentaires que vous pouvez recevoir dans le cadre de votre commande.
ATTENTION !
Vous ne pouvez recevoir des codes supplémentaires que pendant la durée de vie de la commande, c'est-à-dire dans les 15 minutes suivant la réception du numéro de téléphone.

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v1/?method=wrongcode&order_id=377253343&userkey=testapikey&last_id=377253343
Paramètres:
method = wrongcode
order_id = 377253343 Numéro de commande obtenu via la requête number. Valeur obligatoire.
userkey = YOUR_APIKEY
last_id = 377253343 Identifiant du dernier SMS reçu via getcode ou une précédente requête wrongcode. C'est presque toujours le même que order_id, mais cela peut différer, soyez vigilant. Valeur obligatoire.

Réponse:
Si la requête est exécutée avec succès, un JSON sera reçu avec la clé « status » égale à 200.
La clé « data » contiendra un objet avec les détails du SMS :
code - le code trouvé par le système dans le SMS. Le code peut être nul s'il n'a pas pu être détecté
fullSms - le texte complet du SMS reçu
phone - le numéro de téléphone auquel le SMS a été envoyé, au format international sans le signe +
receivedDate - date de réception du SMS au format ISO
sender - l'expéditeur indiqué dans le SMS. Peut être vide.
id - identifiant du SMS pour la méthode wrongcode (SMS supplémentaire en tant que paramètre « last_id »)
phonePass - le mot de passe du compte personnel chez le fournisseur du service. Peut être vide.
{
   "status": 200,
   "data": {
      "code": "753455",
      "fullSms": "753455",
      "phone": "79969817867",
      "receivedDate": "2023-02-23T13:18:57.373Z",
      "sender": "",
      "id": "377253343",
      "phonePass": ""
   }
}

Vous pouvez également recevoir un JSON avec le « status » 400 ; ce n'est pas une erreur, mais une réponse normale du système lorsque votre SMS n'est pas encore arrivé.
Pour continuer, répétez simplement la requête de code au bout de 5 secondes.
Cela doit être répété jusqu'à recevoir le SMS, ou jusqu'à ce qu'une erreur indique que la durée de vie de la commande a expiré (erreur 500) :
{
   "status": 400,
   "data": {
      "msg": "The SMS has not been found yet",
      "advice": "The SMS has probably not been received yet. Please try the request again in 10 seconds"
   }
}
Codes d'erreur (status):
500 - la durée de vie de la commande a expiré
501 - le paramètre method est incorrect
502 - erreur interne, veuillez réessayer la requête
504 - vous n'avez pas encore reçu le premier SMS via la méthode getcode.
505 - commande introuvable dans le système
506 - le paramètre order_id n'est pas précisé
401 - clé API utilisateur non précisée
404 - paramètre de méthode incorrect

Annulation d'une commande de numéro

Si vous avez obtenu un numéro de téléphone mais que, pour une raison qui vous appartient, vous souhaitez annuler la commande, vous devez utiliser cette méthode refusenumber pour annuler le numéro de téléphone.

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v1/?method=refusenumber&order_id=377253343&userkey=testapikey
Paramètres:
method = refusenumber
order_id = 377253343 Numéro de commande obtenu via la requête number. Valeur obligatoire.
userkey = YOUR_APIKEY

Réponse:
Si la requête réussit, le JSON avec la clé « status » égale à 200 sera renvoyé :
{
   "status": 200,
   "data": {
      "msg": "The phone number order has been canceled"
   }
}

Si vous recevez un message différent, référez-vous aux codes d'erreur ci-dessous.

Codes d'erreur (status):
500 - la durée de vie de la commande a expiré
502 - erreur interne, veuillez réessayer
506 - le paramètre order_id n'est pas précisé
401 - la clé API utilisateur n'est pas précisée
404 - paramètre de méthode incorrect

Bannir un numéro de téléphone

Si, lors du processus d'inscription à un compte, il s'avère que le numéro de téléphone qui vous a été attribué ne convient pas pour l'inscription, il vous est conseillé d'utiliser cette méthode bannumber pour bannir votre numéro de téléphone.

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v1/?method=bannumber&order_id=377253343&userkey=testapikey
Paramètres:
method = bannumber
order_id = 377253343 Numéro de commande obtenu via la requête number. Valeur obligatoire.
userkey = YOUR_APIKEY

Réponse:
Si la requête réussit, le JSON avec la clé « status » égale à 200 sera renvoyé :
{
   "status": 200,
   "data": {
      "msg": "The phone number is banned"
   }
}

Si vous recevez un message différent, référez-vous aux codes d'erreur ci-dessous.

Codes d'erreur (status):
500 - la durée de vie de la commande a expiré
502 - erreur interne, veuillez réessayer
506 - le paramètre order_id n'est pas précisé
401 - la clé API utilisateur n'est pas précisée
404 - paramètre de méthode incorrect

Obtenir toutes les valeurs des pays et des services disponibles

Notre nouvelle méthode vous permet de récupérer les valeurs de tous les pays et de tous les services disponibles dans chaque pays.
Cette méthode permet également de spécifier un service en particulier et d'obtenir le nombre et les prix pour tous les pays pour ce service.

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v1/?method=getallcount&service=tg&userkey=testapikey
Paramètres:
method = getallcount
service = tg Paramètre facultatif. S'il n'est pas précisé, la méthode renverra tous les pays et tous les services
userkey = YOUR_APIKEY

Réponse:
Si la requête réussit, un JSON sans le paramètre service sera renvoyé :
{
 "kazakhstan": [
  {
   "vk": {
    "name": "VK",
    "price": "62.3",
    "count_all": "3712"
   },
   "wa": {
    "name": "Whatsapp",
    "price": "195",
    "count_all": "3740"
   },
   "vi": {
    "name": "Viber",
    "price": "6.55",
    "count_all": "3876"
   },
   "tg": {
    "name": "Telegram",
    "price": "209.49",
    "count_all": "3861"
   },
   "ask": {
    "name": "SVOE",
    "price": "8.98",
    "count_all": "3525"
   }
  }
 ],
 "england": [
  {
   "vk": {
    "name": "VK",
    "price": "2.28",
    "count_all": "3909"
   },
   "ok": {
    "name": "Ok.ru",
    "price": "38.2",
    "count_all": "4026"
   },
   "atp": {
    "name": "Vonage",
    "price": "2.13",
    "count_all": "3979"
   }
  }
 ],
 ...
}
OU:
Si la requête réussit, un JSON avec le paramètre service sera renvoyé :
{
   "kazakhstan": {
      "price": "214.15",
      "count_all": "4036"
   },
   "england": {
      "price": "98.67",
      "count_all": "3654"
   },
   "canada": {
      "price": "28.57",
      "count_all": "3970"
   },
   "germany": {
      "price": "295.73",
      "count_all": "1499"
   },
   "ssha": {
      "price": "41.03",
      "count_all": "4459"
   },
   "brazil": {
      "price": "178.28",
      "count_all": "4157"
   },
   ...
}

Si vous recevez un message différent, référez-vous aux codes d'erreur ci-dessous.

Codes d'erreur (status):
502 - erreur interne, veuillez refaire la requête
401 - clé API de l'utilisateur non précisée
404 - paramètre de méthode mal défini

API compatible avec d'autres services d'activation

Si vous souhaitez travailler en compatibilité avec un autre service d'activation sans réécrire votre logiciel, vous pouvez utiliser notre API compatible. Nous vous déconseillons toutefois vivement de le faire, car elle n'est ni mise à jour ni correctement prise en charge.
La première chose à faire pour commencer à utiliser notre API compatible est d'ouvrir le fichier host sous Windows, situé à l'adresse suivante
C:\Windows\System32\drivers\etc\
et d'y ajouter la ligne suivante :
5.253.63.28 domain.com (le nom de domaine de l'autre service d'activation)

Si vous ne souhaitez rien modifier dans le fichier host, changez alors le domaine dans votre logiciel, en remplaçant celui de l'autre service d'activation par get-sms.com. L'adresse de vos requêtes devra alors prendre la forme suivante :
https://get-sms.com/stubs/handler_api.php
Vous pouvez envoyer toutes vos requêtes en POST ou en GET.
Attention, la redirection d'appels n'est pas encore disponible ! Et il est probable qu'elle ne le soit pas dans cette version de l'API !
Sinon, toutes nos API compatibles sont parfaitement identiques ! Nous avons donc simplement repris les instructions, afin de ne pas les multiplier et d'éviter d'induire nos utilisateurs en erreur.

Requête sur le nombre de numéros disponibles (getNumbersStatus)

Requête GET ou POST vers l'URL:
https://get-sms.com/stubs/handler_api.php?action=getNumbersStatus&api_key=testapikey&country=2
Paramètres:
action = getNumbersStatus
api_key = YOUR_APIKEY
country = 2 Pays. Paramètre facultatif. Par défaut : 2 (Kazakhstan). La liste complète des valeurs possibles pour le pays se trouve dans la section "Liste des pays" section

Réponse:
Si la requête réussit, vous recevrez un JSON de ce type :
{
   "vk_0": 28,
   "ok_0": 4,
   "wa_0": 9,
   "vi_0": 19,
   "tg_0": 30,
   "wb_0": 21,
   "go_0": 30,
   "av_0": 8,
   "av_0": 23,
   "fb_0": 24
}

Requête sur le solde (getBalance)

Requête GET ou POST vers l'URL:
https://get-sms.com/stubs/handler_api.php?action=getBalance&api_key=testapikey
Paramètres:
action = getBalance
api_key = YOUR_APIKEY

Réponse:
Si la requête réussit, vous recevrez un TEXTE de ce type :
ACCESS_BALANCE:100 // où 100 correspond à votre solde actuel en USD

Erreurs possibles:
BAD_KEY - Invalid API key
ERROR_SQL - SQL server error

Commande d'un numéro de téléphone (getNumber)

Requête GET ou POST vers l'URL:
https://get-sms.com/stubs/handler_api.php?action=getNumber&service=vk&country=2&api_key=testapikey
Paramètres:
action = getNumber
service = vk Service. Paramètre obligatoire. La liste complète des valeurs de service se trouve dans la section "Liste des services" section. 
maxPrice = 25 Optional. The maximum price in your account currency you agree to pay for the number. Without it the number is sold only at the lowest available price; with it, when no numbers are available at the lowest price, more expensive offers are tried automatically up to maxPrice. You are charged the actual price of the sold number, never more than maxPrice. Available price levels: getPrices with tiers=1.
country = 2 Pays. Paramètre facultatif. Par défaut : 2 (Kazakhstan). La liste complète des valeurs possibles pour le pays se trouve dans la section "Liste des pays" section
api_key = YOUR_APIKEY

Réponse:
Si la requête réussit, vous recevrez un TEXTE de ce type, où $id est l'identifiant de la transaction et $number le numéro de téléphone :
ACCESS_NUMBER:$id:$number
Autres réponses:
NO_NUMBERS - aucun numéro disponible
NO_BALANCE - solde insuffisant
WRONG_MAX_PRICE:$minPrice - maxPrice is lower than the minimum available price (the minimum available price is returned after the colon)

Erreurs possibles:
BAD_ACTION - invalid action
BAD_SERVICE - invalid service name
WRONG_SERVICE - The service is not in the system
BAD_KEY - Invalid API key
ERROR_SQL - SQL server error
YOU_TEMPORARY_BANNED - You are banned until the next day

Modification du statut d'activation (setStatus)

Requête GET ou POST vers l'URL:
https://get-sms.com/stubs/handler_api.php?action=setStatus&status=1&id=1234567&api_key=testapikey
Paramètres:
action = setStatus
status = STATUS CODE Les codes de statut possibles sont listés ci-dessous
id = OPERATION ID ID de commande obtenu via la requête getNumber
api_key = YOUR_APIKEY

Statuts possibles:
1 notifie que le numéro est prêt (SMS envoyé au numéro)
3 demander un autre code (gratuitement)
6 terminer l'activation Si le statut était « code reçu », marquez-le comme réussi et terminé. Si le statut était « en préparation », supprimez-le et marquez-le comme erreur. Si le statut était « en attente de nouvelle tentative », changez l'activation en « en attente de SMS ».
8 signaler que le numéro a été utilisé et annuler l'activation.

Réponse:
Si la requête réussit, vous recevrez un TEXTE, selon le statut :
ACCESS_READY - the readiness of the number has been confirmed
ACCESS_RETRY_GET - waiting for a new SMS
ACCESS_ACTIVATION - service successfully activated
ACCESS_CANCEL - activation annulée

Erreurs possibles:
BAD_ACTION - invalid action
NO_ACTIVATION - activation id does not exist
BAD_STATUS - Incorrect status
BAD_KEY - Invalid API key
ERROR_SQL - SQL server error

Obtenir le statut d'activation (getStatus)

Requête GET ou POST vers l'URL:
https://get-sms.com/stubs/handler_api.php?action=getStatus&id=1234567&api_key=testapikey
Paramètres:
action = getStatus
id = OPERATION ID ID de commande obtenu via la requête getNumber
api_key = YOUR_APIKEY

Réponse:
Si la requête réussit, vous recevrez un TEXTE, selon le statut :
STATUS_WAIT_CODE - en attente du SMS
STATUS_WAIT_RETRY:'The previous code that did not work' - en attente de précisions supplémentaires sur le code
STATUS_WAIT_RESEND - en attente du renvoi du SMS (le logiciel doit cliquer sur renvoyer le SMS et changer le statut à 6)
STATUS_CANCEL - activation annulée
STATUS_OK: 'activation code' - code reçu

Erreurs possibles:
BAD_ACTION - invalid action
NO_ACTIVATION - activation id does not exist
NO_BALANCE - insufficient balance
BAD_KEY - Invalid API key
ERROR_SQL - SQL server error

Obtenir tous les prix des services (getPrices)

Requête GET ou POST vers l'URL:
https://get-sms.com/stubs/handler_api.php?action=getPrices&api_key=testapikey&service=SERVICE&country=2
Paramètres:
action = getPrices
service = vk Service. Paramètre facultatif. La liste complète des valeurs de service se trouve dans la section "Liste des services" section.
api_key = YOUR_APIKEY
tiers = 1 Optional. With tiers=1 the response contains all available price levels for each service (several "price": count pairs sorted by price) instead of a single minimum price. Use these prices as maxPrice in getNumber.
country = 2 Pays. Paramètre obligatoire. Par défaut : 2 (Kazakhstan). La liste complète des valeurs possibles pour le pays se trouve dans la section "Liste des pays" section

Réponse:
Si la requête réussit, vous recevrez un JSON de ce type :
{
 "0": {
    "vk": {
        "25": 36
    },
    "lb": {
        "25": 169
    },
    "wa": {
        "51": 178
    },
    "vi": {
        "2.96": 0
    },
    "tg": {
        "38.8": 0
    },
    "wb": {
        "6.56": 3580
    },
    "go": {
        "7.87": 4433
    },
    "av": {
        "6.69": 3595
    },
    "fb": {
        "3.94": 3932
    },
    "qw": {
        "20": 3759
    }
  }
}
La hiérarchie se présente comme suit - { "Pays" : { "Service" : { "Prix" : { "Quantité"}}}

tiers=1 — response example (all available price levels per service):
{
"2": {
"tg": {
"38.8": 120,
"45.5": 340,
"52": 1210
},
"vk": {
"25": 36
}
}
}

API de location de numéros de téléphone à long terme

Cette section décrit comment utiliser l'API pour louer un numéro de téléphone. Elle vous permet d'intégrer vos solutions logicielles à notre service.
Pour toute question, vous pouvez toujours contacter le support.

Le serveur API accepte les requêtes POST et GET
Les requêtes sont envoyées à l'adresse suivante - https://get-sms.com/api/v2/rent/rent_number.php

Obtenir le nombre de numéros disponibles, les services et les prix de location

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v2/rent/rent_number.php?method=getdatacountry&country=KZ
Paramètres:
method = getdatacountry
country = KZ Pays. Paramètre obligatoire. La liste complète des valeurs possibles pour le pays peut être obtenue via la requête "requête de récupération de tous les pays"

Réponse:
Si la requête réussit, une réponse JSON avec la clé « status » égale à 200 sera renvoyée.
La clé « data » contiendra un objet avec les services, les prix, le nombre de numéros disponibles et les opérateurs :
1xbet (exemple) - un objet indexé par le nom du code de service et contenant le nombre de numéros disponibles à la location ainsi que les prix de location pour une période donnée
qty - nombre de numéros disponibles
price_day - prix pour 1 jour de location du numéro
operators - opérateurs disponibles
{
   "status": 200,
   "data": {
      "country": {
      "code": "KZ",
      "name": "Kazakhstan",
      "icon": "/uploads/country_img/Kazakhstan.png",
      "available_numbers": 6714
  },
  "operators": [
    {
      "id": "49",
      "name": "Aktiv_Kazakhstan",
      "codename": "Aktiv_Kazakhstan"
    }
  ],
  "services": [
    {
      "id": 1,
      "name": "1xbet",
      "img": "/uploads/service_img/1xbet.png",
      "price_day": 69.72,
      "qty": 57
    },
    ...
    ]
  }
}

Obtention d'un numéro de téléphone pour la location

Une fois la location du numéro de téléphone créée, aucun remboursement n'est prévu, y compris en cas de changement d'avis, de refus d'utiliser le numéro, ou pour toute autre raison ne relevant pas d'une impossibilité technique de fournir le service.

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v2/rent/rent_number.php?userkey=testapikey&method=createorder&type=week&period=1&services=82,1,4&country=KZ&operator=ANY
Paramètres:
method = createorder
userkey = YOUR_APIKEY
type = weekParamètre obligatoire. Type de période : week (semaines) ou month (mois).
period = 1 Nombre de semaines ou de mois. Paramètre obligatoire. La valeur 1 avec le type de période week signifie que nous souhaitons louer le numéro de téléphone pour 1 semaine.
services = 82,1,4 Services (avec les ID 82, 1 et 4). Paramètre obligatoire. La liste complète des valeurs de service se trouve dans la section "Liste des services de location".
country = KZ Country. Required parameter. A full list of possible country values can be obtained from the "Liste des pays de location"
operator = ANY Opérateur mobile. Paramètre facultatif. La liste des opérateurs peut être obtenue via la requête de la liste des pays ou de la liste des services


Réponse:
Si la requête réussit, une réponse JSON avec la clé « status » égale à 200 sera renvoyée.
La clé « data » contiendra un objet avec la clé « order_id », le numéro de commande à utiliser par la suite avec le numéro de téléphone, et la clé « phone », contenant le numéro de téléphone destiné à recevoir les SMS avec les codes de vérification.
Le numéro de téléphone est fourni au format international avec l'indicatif du pays et sans le signe +. Veuillez en tenir compte.

Pour plus de commodité, les intervalles de temps sont fournis sous forme d'horodatages UNIX ainsi qu'au format standard 24 heures :
end_time_timestamp - horodatage UNIX de fin de la période de location
end_time - date et heure de fin de la location du numéro de téléphone
start_timestamp - date et heure de début de la location du numéro sous forme d'horodatage UNIX
{
   "status": 200,
   "data": {
      "order_id": 123,
      "country_code": "+7",
      "phone": "79991234567",
      "end_time_timestamp": 1771234567,
      "end_time": "18.02.2026 14:30",
      "start_timestamp": 1768642567,
      "orders_count": 1,
      "order_ids": [123]
   }
}
Codes d'erreur (status):
401 - Erreur dans le paramètre userkey
402 - Erreur dans le paramètre country
404 - Pays introuvable
502 - Erreur dans le paramètre services
504 - Type de période incorrect
506 - Période incorrecte pour le type week/month
504 - Impossible d'obtenir une réponse du serveur
503 - Erreur interne du serveur. Réessayez plus tard
507 - maintenance technique en cours

Récupération de tous les SMS d'un numéro loué

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v2/rent/rent_number.php?method=getsms&userkey=testapikey&rentid=888
Paramètres:
method = getsms
userkey = YOUR_APIKEY
rentid= 888 Paramètre obligatoire. ID de commande obtenu via la requête d'obtention d'un numéro de location. Ce paramètre peut aussi être trouvé dans la requête de récupération de toutes les commandes actives.

Réponse:
Si la requête réussit, une réponse JSON avec la clé « status » égale à 200 sera renvoyée.
La clé « data » contiendra un objet avec la clé « sms_list », qui contient tous les SMS reçus sur ce numéro de téléphone.

{
   "status": 200,
   "data": {
     "msg": "List of all SMS messages",
     "sms_list": [
       {
         "date": "2026-05-21 14:30:00",
         "text": "Your code: 123456",
         "timestamp": 1779363000
       },
       {
         "date": "2026-05-21 14:35:00",
         "text": "Your code: 45345345",
         "timestamp": 1779363500
       }
     ]
  }
}

Vous pouvez également recevoir une réponse JSON avec le « status » 200. Ce n'est pas une erreur ; il s'agit d'une réponse normale du système lorsque la location a expiré.
{
   "status": 200,
   "data": {
      "msg": "Rent is not active, SMS refresh was skipped",
      "can_reload_sms": false,
      "status_rent": 0,
      "sms_list": []
   }
}
Codes d'erreur (status):
401 - Clé API utilisateur non précisée
404 - Commande de location introuvable
504 - Impossible d'obtenir une réponse du serveur
502 - ID de location non précisé

Prolongation d'une commande de location

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v2/rent/rent_number.php?userkey=testapikey&method=prolong&type=week&period=1&rentid=888
Paramètres:
method = prolong
userkey = YOUR_APIKEY
type = week Required parameter. Period type: week (weeks) or month (month).
period = 1 Nombre de semaines ou de mois. Paramètre obligatoire. La valeur 1 avec le type de période week signifie que nous souhaitons prolonger le numéro de téléphone d'1 semaine.
rentid= 888 Paramètre obligatoire. ID de commande obtenu via la requête d'obtention d'un numéro de location. Ce paramètre peut aussi être trouvé dans la requête de récupération de toutes les commandes actives.

Réponse:
Si la requête réussit, une réponse JSON avec la clé « status » égale à 200 sera renvoyée. Cela signifie que la prolongation du numéro a été effectuée avec succès.

{
   "status": 200,
   "data": {
      "msg": "Rental successfully extended",
      "order_id": 888,
      "days": 7,
      "price": 350,
      "rent_at": 1779967800,
      "rent_at_formatted": "2026-05-28 14:30:00"
   }
}

Codes d'erreur (status):
401 - Erreur dans le paramètre userkey
504 - Type de période incorrect
506 - Période incorrecte pour le type week/month
504 - Impossible d'obtenir une réponse du serveur
503 - Erreur interne du serveur. Réessayez plus tard
507 - Maintenance technique en cours

Récupération de tous les pays disponibles à la location

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v2/rent/rent_number.php?method=countries
Paramètres:
method = countries

Réponse:
Si la requête réussit, une réponse JSON avec la clé « status » égale à 200 sera renvoyée, contenant la liste de tous les pays disponibles et leurs opérateurs mobiles

{
 "status": 200,
   "data": {
     "countries": [
       {
       "code": "AT",
       "name": "Austria",
       "available_numbers": 93,
       "operators": [
         {
         "id": 30,
         "name": "Tele2",
         "codename": "Tele2_AT",
         "available_numbers": 93
       }
     ]
   },
   {
       "code": "AR",
       "name": "Argentina",
       "available_numbers": 3969,
       "operators": [
         {
         "id": 25,
         "name": "Claro",
         "codename": "Claro_AR",
         "available_numbers": 3969
         }
       ]
     },
   {
       "code": "BE",
       "name": "Belgium",
       "available_numbers": 2363,
       "operators": [
         {
         "id": 69,
         "name": "Lycamobile",
         "codename": "Lycamobile_BE",
         "available_numbers": 2363
       }
     ]
    }
  ],
  "count": 33
 }
}

Récupération de toutes les commandes de location

Requête GET ou POST vers l'URL:
https://get-sms.com/api/v2/rent/rent_number.php?userkey=testapikey&method=allorders
Paramètres:
method = allorders
userkey = YOUR_APIKEY

Réponse:
Si la requête réussit, une réponse JSON contenant un tableau de tous les numéros de location commandés sera renvoyée, y compris les numéros dont la location a été annulée ou terminée.
Signification de la clé status :
status = 0 La période de location du numéro a expiré
status = 1 La location est active

{
 "status": 200,
 "data": {
    "msg": "List of all orders",
    "orders": [
       {
       "id": 123,
       "phone": "77991234567",
       "number_phone": "77991234567",
       "status_rent": 1,
       "status_label": "Active",
       "can_reload_sms": true,
       "service_name": "Telegram",
       "country_code": "KZ",
       "country_name": "Kazakhstan",
       "code_country_phone": "+7",
       "operator": "Aktiv_KZ",
       "price_day": 50,
       "total_price": 350,
       "period_price": 7,
       "rent_from": 1779363000,
       "rent_at": 1779967800,
       "date_from": "2026-05-21 14:30:00",
       "date_at": "2026-05-28 14:30:00",
       "userkey": "USERKEY"
     }
   ],
   "count": 1
   }
}
S'il n'y a aucun numéro loué, vous recevrez un tableau vide :
{
   "status": 200,
   "data": {
      "msg": "List of all orders",
      "orders": [],
      "count": 0
   }
}

Liste des pays

Valeur Nom Valeur API compatible
kazakhstan Kazakhstan 2
england England 16
canada Canada 36
germany Germany 43
usavirt USA (Virtual) 12
brazil Brazil 73
estonia Estonia 34
france France 78
indonesia Indonesia 6
kyrgyzstan Kyrgyzstan 11
laos Laos 25
lithuania Lithuania 44
netherlands Netherlands 48
poland Poland 15
romania Romania 32
sweden Sweden 46
indiia India 22
malaiziia Malaysia 7
vetnam Vietnam 10
filippiny Philippines 4
turtsiia Turkey 62
moldova Moldova 85
uzbekistan Uzbekistan 40
gruziia Georgia 128
irlandiia Ireland 23
portugaliia Portugal 117
ispaniia Spain 56
chekhiia Czech Republic 63
bangladesh Bangladesh 60
ssha USA 187
ukr Ukraine 1
gonkong Hong Kong 14
tailand Thailand 52
meksika Mexico 54
latviia Latvia 49
pakistan Pakistan 66
gretsiia Greece 129
nikaragua Nicaragua 90
argentina Argentina 39
gaiti Haiti 26
mongoliia Mongolia 72
izrail Israel 13
egipet Egypt 21
gvatemala Guatemala 94
liviia Libya 102
iran Iran 57
iemen Yemen 30
tadzhikistan Tajikistan 143
kitai China 3
shrilanka Sri Lanka 64
siriia Syria 110
livan Lebanon 153
boliviia Bolivia 92
serbiia Serbia 29
kolumbiia Colombia 33
avstriia Austria 50
alzhir Algeria 58
peru Peru 65
gonduras Honduras 88
marokko Morocco 37
venesuela Venezuela 70
nigeriia Nigeria 19
iamaika Jamaica 103
salvador Salvador 101
botsvana Botswana 123
paragvai Paraguay 87
nepal Nepal 81
uganda Uganda 75
irak Iraq 47
iordaniia Jordan 116
mianma Myanmar 5
demkongo Dem.Congo 18
keniia Kenya 8
kambodzha Cambodia 24
belarus Belarus 51
kotdivuar Ivory Coast 27
saudaraviia Saud. Arabia 53
oae UAE 95
khorvatiia Croatia 45
papuanovaiagvineia Papua New Guinea 79
tanzaniia Tanzania 9
gvineia Guinea 68
mali Mali 69
kamerun Cameroon 41
mavritaniia Mauritania 114
serraleone Sierra Leone 115
burkinafaso Burkina Faso 152
daniia Denmark 172
tunis Tunisia 89
dominikanskaiarespublika Dominican Republic 109
iuzhnaiaafrika South Africa 31
ekvador Ecuador 105
liberiia Liberia 135
senegal Senegal 61
afganistan Afghanistan 74
novaiazelandiia New Zealand 67
chad Chad 42
angola Angola 76
gana Ghana 38
iuzhnaiakoreia South Korea 190
sudan Sudan 98
taivan Taiwan 55
zimbabve Zimbabwe 96
turkmenistan Turkmenistan 161
reiunon Reunion 146
kipr Cyprus 77
gaiana Guyana 131
maldivy Maldives 159
mozambik Mozambique 80
gambiia Gambia 28
trinidaditobago Trinidad and Tobago 104
gabon Gabon 154
brunei Brunei 121
butan Bhutan 158
surinam Suriname 142
armeniia Armenia 148
benin Benin 120
mavrikii Mauritius 157
fidzhi Fiji 189
kongo Congo 150
dominika Dominica 126
bermudy Bermuda 195
aruba Aruba 179
chili Chili 151
finliandiia Finland 163
italiia Italy 86
bolgariia Bulgaria 83
vengriia Hungary 84
sloveniia Slovenia 59
khorvatiia Croatia 45
norvegiia Norway 174

Liste des services

Valeur Nom
ai CELEBe
do Leboncoin
dh EBay
sk Skroutz
lq Potato
mh Ashan
wv AIS
ia Socios
bf Keybase
mm Microsoft
qd Taobao
at Perfluence
qf RedBook
dp ProtonMail
mi Zupee
yb Quartet+
wa Whatsapp
uz OffGamers
ou Gabi
he Mewt
jj Aitu
ez GoerliFaucet
ts PayPal
ta Wink
qt MoneyControl
ef Nextdoor
ad Iti
cg Gemgala
nu Stripe
rf Akudo
kj YAPPY
ul Getir
nv Naver
fw 99acres
ud Disney Hotstar
lw MrGreen
io ZdravCity
oy CashFly
qm RosaKhutor
mn RRSA
dt Delivery Club
lt BitClout
ui RuTube
qw Qiwi
fj Potato Chat
tx Bolt
kc Vinted
xd Tokopedia
pp Huya
qj Whoosh
qh Oriflame
jt TurkiyePetrolleri
ok Ok.ru
wk Mobile01
bn Alfagift
wh TanTan
vm OkCupid
ri BillMill
bs TradeUP
tw Twitter
ey Miloan
je Nanovest
hr JKF
kn Verse
yf Citymobil
aj OneAset
bx Dosi
ca SuperS
gr Astropay
rv Kotak811
bp GoFundMe
ni Gojek
fy Mylove
dk Pairs
bk G2G
bb LazyPay
vo Brand20ua
bh Uteka
gz LYKA
ww BIP
ur MyDailyCash
cx Icrypex
sh VkusVill
gv Humta
ve Dream11
kp HQ Trivia
uf Eneba
aa Probo
tk MVideo
iq Icq
ej MrQ
ss Hezzl
sf SneakersnStuff
ce Mosru
dc YikYak
sl SberApteka
dl Lazada
uo CafeBazaar
uh Yubo
pl Perekrestok
dg Mercari
cb Bazos
pu Justdating
gh GyFTR
ev Picpay
qg MoneyPay
bw Signal
cc Quipp
jf Likee
eq Qoo10
dd CloudChat
jc IVI
er Kwork
ip Burger King
bu MonobankIndia
nq Trip
qi 23red
eg ContactSys
cp Uklon
sg OZON
xr Tango
uk Airbnb
ko AdaKami
nf Netflix
vy Meta
dy Zomato
ha My11Circle
tg Telegram
dq IceCasino
rs Lotus
bc GCash
ne Coindcx
mr Fastmail
we DrugVokrug
ry McDonalds
qa MyFishka
pm AOL
la Ssoidnet
ak Douyu
go Google,youtube,Gmail
oi Tinder
dn Paxful
xl Wmaraci
vz Hinge
rd Lenta
wb WeChat
ew Nike
gm Mocospace
wj 1xbet
xe GalaxyChat
sn OLX
ae MyGLO
ch Pocket52
py Monese
hn 1688
qy Zhihu
ck BeReal
kw Foody
ml ApostaGanha
ci RedBus
wc Craigslist
pd IFood
be SberMegaMarket
xy Depop
cf Irancell
wp 163COM
rx Sheerid
su LOCO
ho Cathay
af GalaxyWin
bq Adani
oq Vlife
ru HOP
om Corona
sb Lamoda
ig Instagram
uj ChampionCasino
mu MyMusicTaste
cq Mercado
ti Cryptocom
uu Wildberries
ub Uber
ln Grofers
me Line msg
of Urent
fz KFC
un Humblebundle
ug Fiqsy
kr Eyecon
vn Yaay
qe GG
ds Discord
gg PagSmile
uw Kirana
vs WinzoGame
gt Gett
uy Meliuz
hq Magicbricks
im Imo
bv Metro
po Premium.one
jg Grab
es IQIYI
bo Wise
kb Kufarby
wq Leboncoin1
jh PingPong
tt Ziglu
rr Wolt
ih TeenPattiStarpro
od FWDMAX
iv Inboxlv
xh OVO
ra KeyPay
bz Blizzard
rc Skype
pt Bitaqaty
gu Fora
ma Mail.ru
ji Monobank
op MIRATORG
hk 4Fun
gp Ticketmaster
up Magnolia
dr OpenAI
bd X5ID
gl GlobalTel
gx Hepsiburadacom
ay Ruten
sr Starbucks
pa Gamekit
ct KuhnyaNaRayone
ht Bitso
ft Bookmakers
ka Shopee
mx SoulApp
wt IZI
sw NCsoft
ep Temu
mc Michat
qr MEGA
ee Twilio
le E bike Gewinnspiel
ec RummyCulture
qu Agroinform
oh MapleSEA
fa XadrezFeliz
cm Prom
bt Alfa
ya Yandex
ot Any other
cj Dotz
hh Uplay
gc TradingView
sm YoWin
ki 99app
tu Lyft
de Karusel
pq CDkeys
fm Touchance
lr Okta
ly Olacabs
va SportGully
df Happn
kf Weibo
vc Banqi
fk BLIBLI
xn Familia
th WestStein
fs Şikayet var
rz EasyPay
cn Fiverr
dx Powerkredite
pg NRJ Music Awards
bg MIXMART
mj Zalo
xw Taki
ua BlaBlaCar
pf Pof.com
an Adidas
mk LongHu
lh 24betting
hg Switips
sq KuCoinPlay
lx DewuPoison
gf GoogleVoice
iy FoodHub
nz Foodpanda
ah EscapeFromTarkov
nw Ximalaya
sj HandyPick
et Clubhouse
tl Truecaller
md Banks
co Rediffmail
ga Roposo
oc DealShare
og Okko
rh Ace2Three
rl InDriver
dj LUKOIL-AZS
pr Trendyol
bj Vita Express
rk Fotka
ao UU163
nr Tosla
ph SnappFood
ar Wondermart
ij Revolut
qc Primaries 2020
gd Surveytime
ky SpatenOktoberfest
sp HappyFresh
xj SberMarket
ac DoorDash
ba Expressmoney
kz NimoTV
np Siply
vf Q12 Trivia
tf Noon
iz Global24
jz Kaya
yd 米画师Mihuashi
cl UWIN
fx PGbonus
jr Scooter
px Nifty
nl Myntra
tn LinkedIN
dw Divar
ke Eldorado
ku RoyalWin
el Bisu
bm MarketGuru
nn Giftcloud
lp Algida
eo Sizeer
cw PaddyPower
gw CallApp
wo Parkplus
si Cita Previa
xt Flipkart
wx Apple
qz Faceit
di Loanflix
kx Vivo
nb Faithful
xi InFund
pw SellMonitor
fb Facebook
ex Linode
st Ashan
mt Steam
av Avito
db Ezbuy
wn GameArena
sa AGIBANK
re Coinbase
no Virgo
ls Careem
ql CMTcuzdan
tm Akulaku
rb Tick
ei Taksheel
hc MOMO
qk Bit
gs SamsungShop
lf TikTok/Douyin
vd Betfair
so RummyWealth
wl YouGotaGift
yx JTExpress
vj Stormgain
sv Dostavista
ob Onlinerby
rp Hamrahaval
tc Rambler
vx HeyBox
ab Alibaba
eh Telegram 2.0
jm Mzadqatar
fo MobiKwik
az CityBase
ny Pyro Music
xu RecargaPay
yk SportMaster
zw Quack
lv Megogo
fh Lalamove
ja Weverse
xq MPL
lc Subito
ea JamesDelivery
qn Blued
ib Immowelt
wg Skout
ff AVON
jx Swiggy
au Haraj
uv BinBin
eb Voltz
ju Indomaret
kt KakaoTalk
km Rozetka
yg CourseHero
cd SpotHit
xk DiDi
qo Moneylion
sd Dodopizza
fe CliQQ
ed Gamer
bi 勇仕网络Ys4fun
yz Around
xf LightChat
tj DbrUA
mf Weidian
rg Porbet
xv Wish
mb Yahoo
mg Magnet
gi Hotline
hm Globus
ol KazanExpress
xb RummyOla
vk Vkontakte
hw Alipay/Alibaba
oz Poshmark
tq Swvl
fc PharmEasy
ue Onet
aq Glovo
mq GMNG
my CAIXA
vw CoinField
dm Iwplay
fg IndianOil
xs GroupMe
hx AliExpress
yj EWallet
eu LiveScore
cy RSA
us IRCTC
br Vkusno i Tochka
jb Wing Money
fl RummyLoot
fr Dana
aw Taikang
zh Zoho
zj ROBINHOOD
zi LoveLocal
yp Payzapp
zd Zilch
yo Amasia
zs Bilibili
zm OfferUp
yw Grindr
yy Venmo
zl Airtel
yl Yalla
zn Biedronka
fv Vidio
fu Snapchat
cr TenChat
hi JungleeRummy
nk Gittigidiyor
vv Seosprint
dv NoBroker
hl Band
ll 888casino
hb Twitch
vp Kwai
td ChaingeFinance
xz Paycell
li Baidu
lj Santander
xx Joyride
yq Foxtrot
mo Bumble
ge Paytm
lb Mailru Group
zq IndiaPlays
ik GuruBets
cu 炙热星河
oe Codashop
kh Bukalapak
sy Brahma
vi Viber
os Dhani
uc Tatneft
ym Yula
rm Faberlic
cv WashXpress
pz Lidl
kl Kolesa.kz
gj Carousell
zf OnTaxi
gb YouStar
en Hermes
jl Hopi
hy Ininal
ax CrefisaMais
iu Bykea
fi Dundle
gk AptekaRU
rt Hily
cz Getmega
dz Dominos Pizza
fd Mamba
kg FreeChargeApp
il IQOS
hz Drom
xm Létoile
qq Tencent QQ
tp IndiaGold
am Amazon
qb Payberry
hu Ukrnet
em ZéDelivery
vg ShellBox
tr Paysend
cs AgriDevelop
lk PurePlatfrom
rj Kids' World
wf YandexGo
zu BigC
jq Paysafecard
nm Thisshop
bl BIGO LIVE
sz Pivko24
hj Stoloto
da MTS CashBack
du AUBANK
yn Allegro
zo Kaggle
zv Digikala
yu Xiaomi
yv IPLwin
zg Setel
yi Yemeksepeti
zk Deliveroo
zt Budweiser
zr Papara
zz Dent
zx CommunityGaming
zy Nttgame
ys ZCity
za JDcom
call Receiving a reset call