API de verificación por SMS

Compra de números, consulta de códigos y cancelación con una sola solicitud HTTP. Usa el formato handler_api, muy extendido entre los servicios de números virtuales, así que conectas tus programas de registro y bots con solo la URL y la clave.

Obtener clave API

Inicia sesión y crea la clave en el menú API de tu cuenta. La clave se muestra una sola vez al crearla, así que guárdala enseguida. La API usa el mismo saldo y los mismos precios que la web.

URL base

https://nuviosms.com/stubs/handler_api.php?api_key=API_KEY&action=...

Solicitudes principales

actionQué hacemosEjemplo de respuesta
getBalanceConsultar saldoACCESS_BALANCE:12.50
getPrices&service=telegram&country=gbPrecios y números disponibles por servicio y país{"gb":{"telegram":{"cost":0.207,"count":8877728}}}
getNumber&service=telegram&country=gbComprar númeroACCESS_NUMBER:ID:PHONE
getStatus&id=IDConsultar códigoSTATUS_WAIT_CODE / STATUS_OK:CODE
setStatus&id=ID&status=8Cancelar número (antes del código, reembolso total)ACCESS_CANCEL
setStatus&id=ID&status=3Recibir otro código en el mismo númeroACCESS_RETRY_GET
setStatus&id=ID&status=6Finalizar usoACCESS_ACTIVATION

Parámetros de la solicitud

NombreObligatorioDescripción
api_keyTodosClave API creada en la pantalla de tu cuenta
actionTodosgetBalance, getPrices, getNumber, getStatus, setStatus
servicegetNumberCódigo del servicio (por ejemplo: telegram, whatsapp, google), igual que en la URL de la página de servicios
countrygetNumberCódigo de país de dos letras (por ejemplo: gb, us, id)
idgetStatus, setStatusID del número devuelto por getNumber (empieza por N-)
statussetStatus8 cancelar, 3 recibir otro código, 6 finalizar, 1 listo

Texto de respuesta y significado

RespuestaSignificadoDinero
ACCESS_NUMBER:ID:PHONENúmero recibidoSe cobra el precio del número
STATUS_WAIT_CODEEsperando el códigoSin cambios
STATUS_OK:CODECódigo recibidoPago completado
STATUS_WAIT_RETRY:CODEEsperando el siguiente código (junto con el anterior)Sin coste extra
STATUS_CANCELCancelado o tiempo terminadoReembolsado si no hubo código
ACCESS_CANCELCanceladoReembolso total
ACCESS_RETRY_GETEsperar otro código en el mismo númeroSin coste extra
ACCESS_ACTIVATIONHas terminado de usar el númeroSin cambios
NO_BALANCERecarga y recibe al instanteSin cargo
NO_NUMBERSAhora no hay números de ese paísSin cargo
NO_ACTIVATIONSTienes 20 números activosSin cargo
EARLY_CANCEL_DENIEDPara números con código, usa finalizar (6) en lugar de cancelarSin cambios
BAD_KEYLa clave API no es correctaSin cargo
BAD_SERVICE / BAD_COUNTRYEl código de servicio o de país no es correctoSin cargo
NO_ACTIVATIONNo se encontró el ID del númeroSin cambios
TOO_MANY_REQUESTSSuperaste las 300 por minutoSin cargo

Ejemplos por lenguaje

import time, requests

BASE = "https://nuviosms.com/stubs/handler_api.php"
KEY = "API_KEY"

def call(**p):
    return requests.get(BASE, params={"api_key": KEY, **p}, timeout=30).text

r = call(action="getNumber", service="telegram", country="gb")
if not r.startswith("ACCESS_NUMBER"):
    raise SystemExit(r)
_, num_id, phone = r.split(":")
print("Number:", phone)

for _ in range(240):                      # 20 minutes
    s = call(action="getStatus", id=num_id)
    if s.startswith("STATUS_OK"):
        print("Code:", s.split(":")[1])
        call(action="setStatus", id=num_id, status=6)
        break
    time.sleep(5)

Así se usa

  • Obtén un número con getNumber, introdúcelo en la pantalla de registro y llama a getStatus cada 5 segundos.
  • Cuando llegue STATUS_OK:código, introduce ese código y finaliza con setStatus 6.
  • Si el código no llega en 20 minutos, el precio del número vuelve automáticamente a tu saldo.
  • Puedes enviar hasta 300 solicitudes por minuto.