SIMUB

API d’activation SIMUB

Intégrez les activations SMS et mail temporaire SIMUB avec une authentification, un cycle de vie, des erreurs et des exemples serveur documentés.

Authentification et choix de la route

Les requêtes protégées utilisent la clé API de votre compte SIMUB vérifié. Transmettez-la uniquement en HTTPS et conservez-la dans un gestionnaire de secrets ou une variable serveur ; ne l’intégrez jamais à du code client, un dépôt public ou une capture. Le handler compatible SMSHub reçoit action en paramètre, tandis que les routes SMS SIMUB la placent dans le chemin. Choisissez une interface et analysez son format documenté.

  • Utilisez /stubs/handler_api.php avec un client de type SMSHub qui transmet action, api_key et les paramètres propres à l’action.
  • Utilisez /api/sms/{action} lorsqu’une route SMS SIMUB directe convient mieux à votre application serveur.
  • Utilisez les routes /api/mail pour le mail temporaire ; les identifiants d’activation SMS et mail sont distincts.

Vérifier les services, pays, prix et solde

Appelez getBalance pour le solde, getServices ou getServicesList pour les codes service actuels et getCountries pour les codes pays. Choisissez getPrices, getPricesV2 ou getPricesV3 selon la structure attendue. Catalogues, quantités et prix sont des instantanés fournisseurs : mettez-les brièvement en cache, affichez le prix utile puis vérifiez-le avant l’achat. Ne déduisez jamais un code d’un simple libellé.

Cycle principal d’une activation SMS

L’achat et le statut sont deux opérations différentes. Enregistrez immédiatement l’identifiant d’activation afin qu’un timeout de votre application ne fasse pas perdre le numéro réservé.

  • Choisissez un service et un pays documentés, vérifiez le prix et le stock puis appelez une seule fois getNumber, getNumberV2 ou getNumberV3.
  • Analysez ACCESS_NUMBER:ID:NUMBER ou la réponse JSON documentée, puis associez l’identifiant d’activation à votre référence interne.
  • Interrogez getStatus avec cet identifiant. STATUS_WAIT_CODE signifie que la demande attend toujours ; STATUS_OK:CODE contient un code reçu.
  • Utilisez setStatus uniquement pour une transition autorisée : 1 prêt, 3 nouveau SMS, 6 terminé ou 8 annulé. Ne réutilisez pas le numéro pour un autre service.

Statuts, erreurs et requêtes incertaines

Les actions compatibles SMSHub peuvent répondre en texte, tandis que des routes récentes utilisent aussi du JSON. Corrigez ou renouvelez une clé BAD_KEY au lieu de relancer. BAD_SERVICE indique une action ou un service non pris en charge. NO_BALANCE demande un rechargement, NO_NUMBERS signale l’absence actuelle d’offre et BAD_STATUS une transition invalide. Après un timeout, une coupure ou une erreur serveur sur getNumber, réconciliez l’activation ou son statut avant tout achat. Une relance aveugle peut créer un doublon.

Flux d’activation mail temporaire

Le mail temporaire possède ses propres routes et réponses JSON. Interrogez getPriceRests, getPrices ou getRests pour les services, domaines, prix et stocks. Appelez getActivation avec des valeurs documentées puis conservez le mailId. Utilisez getStatus pour le cycle et getCode pour le code reçu. setStatus et requestRefund doivent respecter l’état et la politique publiée : une demande de remboursement ne signifie pas que chaque cas est éligible. Une adresse temporaire n’est ni une boîte permanente ni un moyen sûr de récupération.

Exemples de requêtes sans secret réel

Les valeurs ci-dessous sont volontairement factices. Remplacez-les uniquement dans votre environnement serveur protégé. Les exemples curl séparent et encodent les paramètres afin de ne pas construire manuellement l’URL.

  • Solde : curl --get 'https://api.simub.com/stubs/handler_api.php' --data-urlencode 'api_key=YOUR_API_KEY' --data-urlencode 'action=getBalance'
  • Réservation : curl --get 'https://api.simub.com/stubs/handler_api.php' --data-urlencode 'api_key=YOUR_API_KEY' --data-urlencode 'action=getNumber' --data-urlencode 'service=tg' --data-urlencode 'country=0'
  • Statut SMS : curl --get 'https://api.simub.com/stubs/handler_api.php' --data-urlencode 'api_key=YOUR_API_KEY' --data-urlencode 'action=getStatus' --data-urlencode 'id=ACTIVATION_ID'
  • Statut mail : curl --get 'https://simub.com/api/mail/getStatus' --data-urlencode 'api_key=YOUR_API_KEY' --data-urlencode 'id=MAIL_ACTIVATION_ID'

Fiabilité, sécurité et utilisation responsable

Définissez des timeouts finis, appliquez une temporisation exponentielle plafonnée au statut et arrêtez à l’état terminal. Masquez api_key, numéros, adresses et codes reçus dans les journaux. Validez les réponses, limitez les achats simultanés et alertez sur les erreurs répétées. Utilisez SIMUB uniquement si vous pouvez vérifier le compte destinataire et si sa plateforme accepte ce processus. Le stock, les réseaux et le filtrage évoluent : ni une réponse API ni les statistiques passées ne garantissent la réception.

Questions fréquentes

Où conserver ma clé API SIMUB ?

Placez-la dans un gestionnaire de secrets serveur ou une variable d’environnement protégée. Limitez les accès, renouvelez-la après une exposition, masquez-la dans les journaux et ne l’envoyez jamais à du code client non fiable.

À quelle fréquence appeler getStatus ?

Interrogez-le à intervalle modéré avec une temporisation plafonnée, puis arrêtez dès une réponse terminale. Une boucle rapide augmente la charge sans accélérer le fournisseur, le réseau ou la plateforme destinataire.

La réservation d’un numéro garantit-elle la réception du SMS ?

Non. Elle confirme l’attribution du numéro, pas l’envoi ni l’acceptation d’un message par la plateforme. La réception dépend de fournisseurs externes, des réseaux et des règles de la plateforme.

Puis-je relancer getNumber après un timeout ?

Vérifiez d’abord si la requête initiale a créé une activation grâce aux identifiants enregistrés, à l’historique ou au statut. Relancez seulement après avoir exclu une réservation existante afin d’éviter un double coût.