Automatiza la compra de números y la verificación por SMS en sms.tc. Dos interfaces: una API REST moderna y un endpoint compatible con SMS-Activate listo para usar; apunta tu software de SMS-Activate actual a sms.tc sin cambiar ni una línea de código.
sms.tc es un agregador de múltiples proveedores: una sola API te da acceso a números de varios proveedores, con nuestros precios aplicados. Puedes usar la interfaz que mejor se adapte a tu stack.
JSON sobre HTTP. Recomendado para nuevas integraciones.
https://sms.tc/api/v1Protocolo de texto plano compatible con los clientes de SMS-Activate.
https://sms.tc/stubs/handler_api.phpCada solicitud debe incluir tu clave API. La API REST la lee de un encabezado; el endpoint de SMS-Activate la lee del parámetro de consulta api_key.
REST
Authorization: Bearer smstc_live_xxxX-Api-Key: smstc_live_xxxSMS-Activate
?api_key=smstc_live_xxxCódigos canónicos
Los países usan los ID numéricos de SMS-Activate (0=Rusia, 1=Ucrania…) y los servicios usan códigos cortos (tg, wa, ig…). Puedes consultarlos mediante los endpoints catalog / getCountries / getServicesList.
Moneda
Todos los precios y saldos están en USD (ISO 840).
Saldo
Las compras se cargan a tu saldo de sms.tc. Las activaciones fallidas o con tiempo agotado se reembolsan automáticamente.
Tasa de éxito de SMS (rate)
Las respuestas de ofertas pueden incluir rate: la proporción de nuestras propias activaciones liquidadas que recibieron un SMS (%, o null). Se calcula por proveedor + servicio + país, solo se muestra con al menos 10 activaciones liquidadas y se actualiza una vez al día. Usa /activations/offers/providers para obtener un desglose por proveedor.
URL base https://sms.tc/api/v1. Autentícate con un encabezado Bearer / X-Api-Key. Las respuestas son JSON.
/activations/offersList available numbers (service → country → price/count/rate)./activations/offers/providersPer-provider offers (provider, operator, price, stock, SMS success rate). Requires service + country./activationsBuy a number. Body: { service, country, operator? }./activations/{id}Get activation status + received SMS code./emailsList email activations./emailsBuy an email activation. Body: { site, domain }./emails/batchBuy email activations in bulk (count 1–10)./emails/{id}Check an email activation./emails/{id}Cancel an email activation./emails/{id}/reorderReorder an email activation./emails/domainsList available email domains./catalog/countriesCanonical country list (SMS-Activate ids)./catalog/servicesCanonical service list (short codes)./catalog/pricesPrices by country/service, incl. SMS success rate (rate)./rent/offersRentable services for a country + duration./rentRent a number. Body: { service, country, duration }./rent/{id}Get a rent order + its SMS./rent/{id}/prolongExtend a rent. Body: { duration }.# 1) Listar números disponibles
curl https://sms.tc/api/v1/activations/offers \
-H "Authorization: Bearer smstc_live_xxx"
# 2) Comprar un número (Telegram, país 6)
curl -X POST https://sms.tc/api/v1/activations \
-H "Authorization: Bearer smstc_live_xxx" \
-H "Content-Type: application/json" \
-d '{"service":"tg","country":6}'
# 3) Consultar el código
curl https://sms.tc/api/v1/activations/123456 \
-H "X-Api-Key: smstc_live_xxx"Un único endpoint en /stubs/handler_api.php, que se despacha según el parámetro de consulta action; replica el protocolo de SMS-Activate para que el software de socios existente funcione sin cambios. Las respuestas son de texto plano (o JSON para las acciones V2 / de listado).
| action | Devuelve |
|---|---|
| getBalance | ACCESS_BALANCE:12.50 |
| getNumber | ACCESS_NUMBER:<id>:<phone> |
| getNumberV2 | JSON (activationId, phoneNumber, …) |
| getStatus | STATUS_WAIT_CODE · STATUS_OK:<code> |
| getStatusV2 | JSON (sms, call, …) |
| setStatus | ACCESS_READY · ACCESS_RETRY_GET · ACCESS_ACTIVATION · ACCESS_CANCEL |
| getActiveActivations | JSON (active list) |
| getHistory | JSON (history) |
| getPrices | JSON (prices by country/service) |
| getCountries | JSON (countries) |
| getServicesList | JSON (services) |
| getOperators | JSON (operators) |
| getAllSms | JSON (all SMS for an activation) |
| finishActivation | 204 |
| cancelActivation | 204 |
| reactivate / reactivateOptions | JSON · provider-dependent |
| getRentNumber / getRentServicesAndCountries / serviceCountRent | JSON · provider-dependent |
| prolong / prolongOptions / prolongHistory | JSON · rent only |
setStatus
# Obtener un número
GET https://sms.tc/stubs/handler_api.php?api_key=smstc_live_xxx&action=getNumber&service=tg&country=6
→ ACCESS_NUMBER:123456:628712345678
# Consultar estado / código
GET https://sms.tc/stubs/handler_api.php?api_key=smstc_live_xxx&action=getStatus&id=123456
→ STATUS_OK:12345
# Completar (6) o cancelar (8)
GET https://sms.tc/stubs/handler_api.php?api_key=smstc_live_xxx&action=setStatus&id=123456&status=8
→ ACCESS_CANCELEl endpoint de SMS-Activate devuelve tokens de texto plano (HTTP 200). La API REST devuelve JSON con un estado HTTP y un código de error.
NO_KEYFalta la clave API.BAD_KEYLa clave API no es válida, ha caducado o no está permitida para tu IP.BAD_ACTIONParámetro action desconocido.BAD_SERVICECódigo de servicio desconocido.NO_NUMBERSNo hay números disponibles para este servicio/país.NO_BALANCESaldo insuficiente.WRONG_ACTIVATION_IDFalta el id de activación o tiene un formato incorrecto.NO_ACTIVATIONNo se encontró la activación en tu cuenta.BAD_STATUSValor de setStatus no válido.EARLY_CANCEL_DENIEDAún no se puede cancelar (no ha transcurrido el tiempo mínimo de espera).ACTION_NOT_AVAILABLEEsta acción no está disponible para el proveedor seleccionado.A continuación están disponibles la especificación completa legible por máquina y una guía de inicio.