Le protocole partenaire est conçu pour fournir des numéros de téléphone et des SMS entrants via API directement au serveur SMSBOWER .
Toutes les requêtes incluent le paramètre - KEY. Cette clé est fournie par le support technique et est disponible dans le compte personnel .
Demandes de quantité GET_SERVICES, Demandes de numéro GET_NUMBER et finalisation de l'activation
FINISH_ACTIVATION sont envoyées directement de notre serveur au serveur du partenaire .
Format de l'URL — https://SMSBOWER où SMSBOWER peut être partner.ru:port/SMSBOWER ou partner.ru/SMSBOWER.php
Exigences
Types de champs:
Cette requête nous fournit des informations sur la quantité de numéros de téléphone disponibles à la vente pour les services .
La requête POST est envoyée du serveur SMSBOWER au serveur du partenaire .
! Veuillez noter : si votre modem GSM est limité en nombre de modules actifs simultanément, vous devez fournir un nombre égal au nombre de modules actifs modules.
Champ | Type | Obligatoire | Description |
action | String | GET_SERVICES | |
key | String | Clé du protocole |
Champ | Type | Obligatoire | Description |
status | String | Statut de la réponse (voir Tables de statut) | |
countryList | Array | Liste des pays |
Champ | Type | Obligatoire | Description |
country | String | Statut de la réponse (voir Status Table) | |
operatorMap* | Tableau associatif | Clé - opérateur (voir Tableaux de données), Valeur - tableau associatif des services ** |
{
"action": "GET_SERVICES",
"key": "qwerty123"
}
{
"countryList":
[
{
"country": "russia",
"operatorMap":
{
"beeline":
{
"ok": 15,
"wa": 20
},
"megafon":
{
"vk": 3,
"ok": 10
}
}
},
{
"country": "ukraine",
"operatorMap":
{
"life":
{
"vk": 0,
"wa": 32
}
}
}
],
"status": "SUCCESS"
}
Cette requête nous fournit un numéro de téléphone que nous transmettons au client .
La requête POST est envoyée du serveur SMSBOWER au serveur du partenaire .
Si le tableau exceptionPhoneSet contient une liste de préfixes, par exemple 44742 et 44740, vous devez ne pas fournir un numéro qui commence par un de ces préfixes. Le nombre de chiffres n’est pas limité par la taille du préfixe .
Champ | Type | Obligatoire | Description |
action | String | GET_NUMBER | |
key | String | Tableau de données | |
country | String | Tableau de données | |
service | String | Tableau de données | |
operator | String | Clé du protocole | |
sum | Cur | Le montant que vous recevrez pour un service enregistré avec succès | |
exceptionPhoneSet | Array | Liste des préfixes qui sont INTERDITS |
Champ | Type | Obligatoire | Description |
status | String | Statut de la réponse (voir Tables de statut) | |
number | Ulong | Numéro de téléphone avec indicatif pays | |
activationId | Ulong | ID d’activation dans le système du partenaire | |
call | String | Flash call disponible pour le numéro | |
voice | String | Appel vocal disponible pour le numéro |
{
"action": "GET_NUMBER",
"key": "qwerty123",
"country": "russia",
"operator": "beeline",
"service": "tg",
"sum": "20.00"
}
{
"number": "79156537788",
"activationId": "36532",
"status": "SUCCESS",
"call": "1",
"voice": "1"
}
{
"action": "GET_NUMBER",
"key": "qwerty123",
"country": "russia",
"operator": "any",
"service": "vk",
"sum": "10",
"exceptionPhoneSet":
[
"7918",
"79281",
]
}
Cette requête POST est envoyée du serveur partenaire au serveur SMSBOWER à l’adresse : https://smsbower.online/agent/api/sms
Si vous recevez une réponse avec le statut SUCCESS, marquez le SMS comme délivré avec succès dans votre base de données et ne l’envoyez plus . Si un statut différent de SUCCESS est retourné, répétez la requête avec un délai de 10 secondes jusqu’à réception du statut SUCCESS .
Champ | Type | Obligatoire | Description |
action | String | PUSH_SMS | |
key | String | Clé du protocole | |
smsId | Ulong | ID du SMS dans le système du partenaire | |
phone | Ulong | Numéro de téléphone (incluant l’indicatif pays) auquel le SMS a été envoyé | |
phoneFrom | String | Nom de l’expéditeur (peut être alphanumérique ou numérique) qui a envoyé le SMS | |
text | String | Texte du SMS | |
voice | Boolean | La demande est un flash call | |
call | Boolean | La demande est un appel vocal avec code |
Champ | Type | Obligatoire | Description |
status | String | Statut de la réponse (voir Tables de statut) |
{
"action": "PUSH_SMS",
"key": "qwerty123",
"smsId": 1,
"phone": 447472190082,
"phoneFrom": "Microsoft",
"text": "Microsoft access code: 5015"
"call": "0",
"voice": "0"
}
{
"action": "PUSH_SMS",
"key": "qwerty123",
"smsId": 1,
"phone": 447472190082,
"phoneFrom": "446756540011",
"text": "446756540011"
"call": "1",
"voice": "0"
}
{
"action": "PUSH_SMS",
"key": "qwerty123",
"smsId": 1,
"phone": 447472190082,
"phoneFrom": "446756540011",
"text": "12345"
"call": "0",
"voice": "1"
}
{
"status": "SUCCESS"
}
Cette requête est envoyée du serveur SMSBOWER au serveur partenaire pour compléter l’activation.
POST requête initiée depuis SMSBOWER au serveur partenaire.
La gestion des activations est totalement contrôlée par SMSBOWER. Pour des raisons indépendantes de notre volonté, nous pouvons ne pas recevoir de réponse de votre part concernant un changement de statut réussi. Donc, si SMSBOWER envoie une nouvelle requête de finalisation d’activation, vous devez vérifier l’existence de l’activation ID chez vous. Si l’activation existe, envoyez un statut de SUCCESS en réponse.
Champ | Type | Obligatoire | Description |
action | String | FINISH_ACTIVATION | |
key | String | Clé du protocole | |
activationId | Ulong | ID d’activation obtenu lors de la seconde requête | |
status | Unit | Statut de la réponse (voir Tables de statut) |
Champ | Type | Obligatoire | Description |
status | String | Statut de la réponse (voir Tables de statut) |
{
"action": "FINISH_ACTIVATION",
"key": "qwerty123",
"activationId": 100,
"status": 3,
}
{
"status": "SUCCESS"
}
Après la mise en œuvre du protocole, vous devez contacter notre support technique, fournir URL, et notre équipe effectuera les tests. Si la vérification est réussie sur tous les paramètres, vous serez connecté avec succès à SMSBOWER .
Attribution simultanée de numéros
Vous devez gérer correctement les requêtes simultanées et ne pas attribuer plusieurs fois les mêmes numéros. Par exemple, si vous avez 100 numéros pour Telegram Royaume-Uni, et que SMSBOWER fait simultanément 100 requêtes pour Telegram Royaume-Uni, le serveur partenaire doit fournir 100 uniques numéros. Si un numéro est attribué plusieurs fois, le test échoue .
Bonne finalisation de l’activation
Le changement de statut d’activation est totalement contrôlé par SMSBOWER. Le serveur partenaire doit ne pas terminer les activations de manière autonome.
Vérification de la livraison des SMS
Dès réception d’un SMS, vous devez immédiatement le transférer immédiatement au serveur SMSBOWER. Si vous recevez un statut SUCCESS, vous ne devez pas renvoyer le SMS. En revanche, si vous recevez un autre statut, vous devez réessayer la requête toutes les 10-20 secondes. Si un SMS est renvoyé après réception du statut SUCCESS, le test échoue .
Vérification du type des champs
Vérifiez soigneusement les types de champs, spécifiés dans cette documentation. Si cette condition est violée, le test échoue .
Code pays dans le numéro de téléphone
L’attribution du numéro doit être en format numérique et inclure le code pays .
Vérification du temps d’attribution des numéros
Vous devez attribuer les numéros avec un délai de moins de de 3 secondes. Si cela prend plus de 3 secondes, le test échoue .
Vérification de la quantité de numéros
Si vous affichez 1000 numéros dans une requête de quantité, mais que seulement 100 sont délivrés simultanément, le test échoue .
Vérification de la gestion des exceptions
Si vous gérez incorrectement les exceptions lors de l’attribution des numéros, le test échoue .
Statut | Description |
SUCCESS | La requête a été exécutée avec succès |
ERROR | Erreur lors de l'exécution de la requête. Le champ ERROR doit être rempli avec une description |
NO_NUMBER | Aucun numéro disponible. Cette réponse est retournée uniquement pour une demande numéro. |
Statut | Description |
1 | L'émission d'un numéro pour ce service est interdite |
3 | L'activation a été avec succès vendue. Vous avez reçu une récompense |
4 | L'activation a été annulée* |
5 | L'activation a été remboursée. Le client a été remboursé pour l'activation. Il est possible que ce numéro ait déjà été enregistré auparavant, et que l'authentification à deux facteurs soit activée sur ce numéro |
* Le mécanisme d'annulation fonctionne comme suit: Si un numéro a été annulé 5 fois, vous ne devez plus émettre ce même numéro. Il est possible que le numéro n'ait pas convenu au client ou qu'il ait déjà été enregistré pour ce service spécifique.
{
"status": "SUCCESS",
//Information
}
{
"status": "ERROR",
"error": "Description de l'erreur"
}
Liste des pays
La liste complète des pays avec noms et IDs est disponible au lien https://smsbower.org /api#countries.
Liste des opérateurs
Pour le moment, la répartition par opérateurs est en cours de développement, vous devez donc transmettre la valeur any. Une fois cette fonctionnalité mise en œuvre, nous vous informerons via le chat du support technique .
Liste des services
La liste complète des services avec noms et IDs est disponible au lien https://smsbower.org /api#services