Nombor, mesej dan pendapatan, secara langsung daripada aplikasi anda.
SMScash
Pengenalan API
Bermula dengan

Pengenalan API

Nombor, mesej dan pendapatan, secara langsung daripada aplikasi anda.

Mulakan dengan satu permintaan

13 · API PerintahREST + handler_api.phpJSON / plain text · Bearer

Mencipta kunci API dalam papan kekunci anda, dapatkan nombor dan semak untuk mesej setiap 20 saat.Pembayaran dikreditkan apabila SMS dengan kod tiba; membaca semula tidak menjejaskan keseimbangan anda.

REST APIhttps://smscash.org/api/v1
URL pangkalan API yang kompatibelhttps://smscash.org/stubs/handler_api.php
Perkhidmatan masih hidupNombor telefon yang SMS dan pendapatan tersedia. pengeluaran tersedia di USDT Pada TRC20Pembayaran antara antara 1 dan 45 hari yang
Mulakan dengan cepat · REST / cURL
curl -X POST 'https://smscash.org/api/v1/activations' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: request-unique-001' \
  -d '{"service":"go","country":86}'

Alamat antara muka yang kompatibel alternatif: /handler_api.php. integrasi REST yang sedia ada terus berfungsi.

REST API

Pembina permintaan

cURL · Go · JS · Python

Idempotency-Key: UUID · POST · 8–128

Pilih automatik: kod terbanyak dalam sejam terakhir, kemudian 24 jam. Tiada nombor: operator seterusnya.

cURL
curl --max-time 15 --fail-with-body -X POST 'https://smscash.org/api/v1/activations' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: request-unique-001' \
  --data '{"service":"go","country":86}'

Kunci tidak disimpan. Semakan ini tidak memperuntukkan nombor.

SeterusnyaSeterusnyaSeterusnyaIntegrasi

Perkhidmatan dan negara

Pilih perkhidmatan dan negara. pembayaran melalui SMS bergantung kepada negara.

REST
GET /api/v1/catalog?service=go&country=86&page=1&page_size=100
Authorization: Bearer YOUR_API_KEY
JSON
{
  "rows": [
    {
      "offer_id": 42,
      "service": "go",
      "service_name": "Google",
      "country_id": 86,
      "country_name": "Italy",
      "provider_id": 1,
      "operator": 1,
      "provider_name": "Operator 1",
      "reward": "0.00300000",
      "currency": "USD",
      "accounting_precision": 8,
      "earnings_hold_days": 45
    }
  ],
  "page": 1,
  "page_size": 100,
  "total": 1,
  "pages": 1,
  "has_more": false,
  "accounting_precision": 8
}

service · country · operator · q · page · page_size (1–100)

Dapatkan nombor
REST
POST /api/v1/activations
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Idempotency-Key: request-unique-001

{
  "service": "go",
  "country": 86
}

Pilih automatik: kod terbanyak dalam sejam terakhir, kemudian 24 jam. Tiada nombor: operator seterusnya.

REST
201: new session · 200: replay of the same operation
service + country OR offer_id · duration_minutes: 20
ref: software owner code (optional)
operator: public ID (e.g. 1 for Operator 1), optional · any/0: automatic
country: integer · service: string · SMS code: string

Nombor ini sah selama 20 minit. SMS disemak setiap 20 saat. anda boleh membatalkan segera.

Semak beberapa nombor
REST
GET /api/v1/activations/batch?ids=42,43
Authorization: Bearer YOUR_API_KEY
JSON
{
  "rows": [
    {
      "id": 42,
      "found": true,
      "phone": "12025550123",
      "status": "received",
      "service": "go",
      "country_id": 86,
      "provider_id": 1,
      "operator": 1,
      "expires_at": "2026-10-10T12:15:00Z",
      "sms_count": 1,
      "code": "001234",
      "last_sms": {
        "id": 101,
        "code": "001234",
        "sender": "Service",
        "text": "Code: 001234",
        "received_at": "2026-10-10T12:01:00Z"
      }
    },
    {
      "id": 43,
      "found": false,
      "error": {
        "code": "NO_ACTIVATION",
        "message": "Session not found."
      }
    }
  ],
  "as_of": "2026-10-10T12:01:00Z",
  "poll_interval_seconds": 20
}
REST
ids: 1–100 positive session IDs, separated by commas
Input order preserved · duplicates removed
Foreign, unavailable or out-of-scope IDs: found=false
Read only · no supplier requests · last_sms is the latest message
Baki · Ditahan
REST
GET /api/v1/balance
Authorization: Bearer YOUR_API_KEY
JSON
{
  "currency": "USD",
  "accounting_precision": 8,
  "balance": "12.00000000",
  "held_balance": "34.50000001",
  "balance_minor": "1200000000",
  "held_minor": "3450000001",
  "as_of": "2026-10-12T20:00:00Z",
  "next_release_at": "2026-11-26T20:00:00Z"
}

balance — Tersedia; held_balance — Ditahan. USD · 8

Hanya dana yang telah tamat tempoh tahanan boleh dikeluarkan.

Klien sedia digunakan

JavaScript · Node.js 18+
import {SmScash, SmScashError} from './smscash.mjs';
import {randomUUID} from 'node:crypto';

const api = new SmScash(process.env.SMSCASH_API_KEY);
const catalog = await api.catalog({service: 'go', country: 86});
console.log(catalog.rows);

// Save this key before sending; keep it for retries of this operation.
const requestKey = randomUUID();
const session = await api.createNumber({service: 'go', country: 86}, requestKey);
// After 20 seconds:
const messages = await api.sms(session.id, {afterId: 0});
console.log(messages.sms);
const statuses = await api.batch([session.id]);
const held = await api.holdBalance();
console.log(held); // Exact USD string
Python 3.9+
import os
import uuid
from smscash import SmScash, SmScashError

api = SmScash(os.environ['SMSCASH_API_KEY'])
catalog = api.catalog(service='go', country=86)
print(catalog['rows'])

# Save this key before sending; keep it for retries of this operation.
request_key = str(uuid.uuid4())
session = api.create_number({'service': 'go', 'country': 86}, request_key)
# After 20 seconds:
messages = api.sms(session['id'], after_id=0)
print(messages['sms'])
statuses = api.batch([session['id']])
held = api.hold_balance()
print(held) # Exact USD string
SDK
me() · balance() · holdBalance()/hold_balance() · catalog() · activation() · sms() · batch()
createNumber(parameters, requestKey) / create_number(parameters, request_key)
setStatus(id, "cancel") / set_status(id, "cancel")
setStatus(id, "retry", requestKey) / set_status(id, "retry", request_key)
Timeout: 15 s · no dependencies · no automatic retries
Error: code · status · hint · requestId/request_id · retryable
ALLOCATION_UNCERTAIN: contact support with request_id; never retry automatically.

SMS-Activate / HeroSMS

SMS-Activate · URL pangkalan API yang kompatibelhttps://smscash.org/sms-activate/stubs/handler_api.php
HeroSMS · URL pangkalan API yang kompatibelhttps://smscash.org/hero-sms/stubs/handler_api.php

Kunci API peribadi pengguna.

Pilih perkhidmatan dan negara. pembayaran melalui SMS bergantung kepada negara.

Kod yangPenerangan
getNumber / getNumberV2Dapatkan nombor
getStatus / getStatusV2Dapatkan kod terkini
setStatus / finishActivation / cancelActivationPengurusan sesi
getPrices / getNumbersStatusPeriksa ketersediaan
getRewards (SMScash)Penghargaan SMS
getServicesList / getServicesPerkhidmatan
getCountries / getOperatorsPerkhidmatan dan negara
getActiveActivationsSesi
getBalanceBaki pengguna
getHoldBalance (SMScash)Ditahan

cost = 0 USD · activationCost = 0 USD
reward — Penghargaan SMS

HeroSMS · cURL
curl --get 'https://smscash.org/hero-sms/stubs/handler_api.php' \
  --data-urlencode 'api_key=YOUR_API_KEY' \
  --data-urlencode 'action=getNumberV2' \
  --data-urlencode 'service=go' \
  --data-urlencode 'country=86' \
  -H 'Idempotency-Key: request-unique-001'
Jawapan
{
  "activationId": "42",
  "phoneNumber": "393331234567",
  "activationCost": 0,
  "currency": 840,
  "countryCode": 86,
  "canGetAnotherSms": true,
  "activationTime": "2026-10-11T12:00:00Z",
  "activationEndTime": "2026-10-11T12:15:00Z",
  "reward": "0.00300000"
}
SMS-Activate / HeroSMS
GET or POST application/x-www-form-urlencoded
api_key · action · service · country · ref (optional)
setStatus: 1 → ACCESS_READY · 3 → ACCESS_RETRY_GET
           6 → ACCESS_ACTIVATION · 8 → ACCESS_CANCEL
getStatus: STATUS_WAIT_CODE · STATUS_OK:001234 · STATUS_CANCEL
getStatusV2: {"verificationType":1,"sms":null,"call":null}
getServicesList: {"status":"success","services":[{"code":"go","name":"Google"}]}
getCountries: {"86":{"id":86,"eng":"Italy","visible":1,"retry":1,"rent":0}}
getPrices: {"86":{"go":{"cost":0,"count":12,"reward":"0.00300000","currency":"USD"}}}
getRewards: {"59":{"vi":{"1":"0.01000000"}}}
getRewards filters: country · service · operator (optional); any/0: all permitted providers
getActiveActivations: start=0 · limit=1–100 · activeActivations / data
Business/key errors: HTTP 200 + plain text · server errors: HTTP 500
Availability: actual supplier pool, shared cache up to 20 s; not a reservation
No automatic retries after a transport error or ALLOCATION_UNCERTAIN.
Keep the original Idempotency-Key and parameters.
Unsupported: rent · calls · forwarding · multiple services per number · prolong
Unsupported options return BAD_REQUEST; unsupported actions return BAD_ACTION.
SMScash keys and country/service codes; configure this base URL in your software.

Nombor ini sah selama 20 minit. SMS disemak setiap 20 saat. anda boleh membatalkan segera.

Pengesahan dan penarikan

REST: tajuk Authorization: Bearer YOUR_API_KEY. Antara muka yang kompatibel : parameter api_key dan actionMenggunakan HTTPS

Untuk menguruskan kunci API, masukkan akaun anda.

∞Permohonan / min per akaun
∞Mesyuarat bersamaan

Frekuensi permintaan API dan bilangan nombor telefon tidak terhad.Tidak ada kuota harian atau jam.

Nombor ini sah selama 20 minit. SMS disemak setiap 20 saat. anda boleh membatalkan segera.

Di samping itu, satu yang unik Idempotency-Key diperlukan untuk peruntukan nombor, peruntukan berulang, permintaan penarikan dan pembayaran. ia adalah opsional tetapi disyorkan dalam handler_api.php. Gunakan semula kunci apabila penarikan permintaan rangkaian; gunakan kunci baru untuk operasi baru.

API Key Scope

Anda boleh membatasi kunci kepada perkhidmatan tertentu, negara dan pembekal. senarai kosong membolehkan semua pilihan yang tersedia.

JSON
{
  "label": "Perisian saya",
  "policy": {
    "services": [
      "go"
    ],
    "countries": [
      86
    ],
    "providers": [
      1
    ]
  }
}

PATCH /api/v1/keys/{id} Nama dan dasar berubah sepenuhnya. rahsia hanya ditunjukkan apabila dicipta.

10% dalam jumlah. 5% + 5% dengan kod perisian.

Apabila anda mengeluarkan nombor, sila berikan ref pemilik perisian. permintaan dibenarkan oleh kunci eksekutif. kod ini terdapat dalam seksyen "Rujukan" dan dalam GET /api/v1/referrals → software_ref.

PermintaanJemputanPerisian
Tiada ref10%—
dengan ref5%5%
Dengan ref, tiada referrer—5%

Platform membayar bonus tanpa mengurangkan pendapatan pengguna. pemilik perisian dan penceramah boleh menjadi orang yang sama. pengguna tidak boleh menggunakan kod mereka sendiri.

Terma ditetapkan apabila sesi dicipta; membaca SMS dan penarikan tidak mengubah mereka. lulus ref lagi untuk sesi berulang baru. dalam pengiraan tarif, ganjaran pengguna USD 0.003 memberikan USD 0.00015 masing-masing kepada pemilik perisian dan referrer. bonus keseluruhan ialah USD 0.00030.

API Perintah

11 kaedah gaya XVBC ditambah keseimbangan SMScash anda.

GETgetNumberDapatkan nombor

Mencipta sesi dan menyimpan nombor yang tersedia untuk pengguna. kadar ganjaran dan penerima rujukan ditetapkan pada peruntukan; ganjaran dikreditkan apabila SMS dengan kod tiba.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.
service*stringKod perkhidmatan yang tersedia. jawapan terhad kepada kawasan kunci API.
country*integerDapatkan ID daripada getCountries.
operatorstringDapatkan ID daripada operators/getOperators (API). operator=1 · any/0
session_durationintegerSesi berlangsung selama 20 minit. lulus 20 atau lupakan parameter ini.
with_operatorinteger1 menambah ID operator pada respons; 0 atau tanpa parameter mengembalikan tiga segmen.
refstringKod awam pemilik perisian: 5% untuk beliau dan 5% untuk tetamu. tanpa ref - 10% untuk tetamu.

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=getNumber.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=getNumber&api_key=YOUR_API_KEY&service=go&country=86&with_operator=1' \
  -H 'Idempotency-Key: request-unique-001'

Jawapan

Nombor yang dikeluarkan
ACCESS_NUMBER:42:380670000000:1
Tiada nombor yang tersedia
EMPTY_POOL
  • Pilih automatik: kod terbanyak dalam sejam terakhir, kemudian 24 jam. Tiada nombor: operator seterusnya.
  • ♫ Pass Idempotency-Keyʹ: the same request with theself key return the previous session. Change the parameters calls IDEMPOTENCY_CONFLICT.
  • Negara nombor tanpa kolam memberikan EMPTY_POOL; format negara yang salah ialah BAD_COUNTRY.
  • Kunci sesi yang dipadamkan masih digunakan: memainkan semula peruntukan dengan kunci itu mengembalikan SESSION_CLOSED dan tidak mengeluarkan nombor lain.
  • Hasil peruntukan tidak disahkan. pengeluaran automatik tidak dibenarkan untuk mengelakkan peruntukan nombor kedua.
GETgetNumbersStatusPeriksa ketersediaan

Nombor telefon yang tersedia mengikut perkhidmatan dan negara.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.
country*integerDapatkan ID daripada getCountries.

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=getNumbersStatus.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=getNumbersStatus&api_key=YOUR_API_KEY&country=86'

Jawapan

Nombor yang tersedia
{
  "go_0": 0
}
  • _0 suffix ialah pilihan tanpa operator tertentu.
  • Ketersediaan merujuk kepada keseluruhan kolam pembekal. saluran yang dipilih disemak apabila nombor diperuntukkan.
GETgetStatusDapatkan kod terkini

Mudah meminta status sesi dan kod SMS terakhir.Zero terkemuka dalam kod disimpan.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.
id*integerID sesi anda, diterima apabila nombor itu dikeluarkan.

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=getStatus.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=getStatus&api_key=YOUR_API_KEY&id=42'

Jawapan

Menunggu
STATUS_WAIT_CODE
Kod yang diterima
STATUS_OK:001234
Pembatalan atau tamat tempoh
STATUS_CANCEL
Tidak ditemui
NO_ACTIVATION
  • Poll setiap 20 Membaca mesej lagi tidak akan menghasilkan pembayaran lain.
  • Selepas penarikan kod lama tidak dikembalikan: getStatus menunggu untuk SMS seterusnya.
  • Selepas nombor tanpa SMS telah dihapuskan , getStatus dan getSms Kembali STATUS_CANCEL; getSmsFull mengembalikan status tertutup, telefon kosong dan sms senarai yang REST /activations/{id} dan /sms Kembali 404 NO_ACTIVATION.
GETsetStatusPengurusan sesi

Tamat, dibatalkan atau dikembalikan menunggu SMS. sesi tamat tempoh kekal sama.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.
id*integerID sesi anda, diterima apabila nombor itu dikeluarkan.
status*integer3 - menunggu kod seterusnya tanpa melanjutkan sesi; 6 - selesai selepas SMS; 8 - membatalkan segera.

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=setStatus.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=setStatus&api_key=YOUR_API_KEY&id=42&status=3' \
  -H 'Idempotency-Key: request-unique-001'

Jawapan

Menunggu SMS
ACCESS_RETRY_GET
selesai
ACCESS_ACTIVATION
Pembatalan
ACCESS_CANCEL
  • Kembali menunggu kod seterusnya dalam tempoh 20 minit asal. tempoh keluar dan tempoh tamat tempoh tidak berubah.
  • untuk status =3 Penggunaan Idempotency-Key: mengulangi permintaan tidak akan mengeset semula kod baru yang telah diterima. SMS masih boleh didapati.
  • Pembatalan tidak menghapuskan ganjaran yang telah diperolehi.
  • Hanya nombor dengan kod SMS disimpan dalam sejarah. nombor yang dibatalkan dan tamat tempoh tanpa kod dipadamkan.
GETgetRepeatNumberMenggambarkan nombor yang sama lagi

Buka sesi baru dengan nombor tertentu daripada sejarah anda. anda boleh memilih perkhidmatan lain yang tersedia di negara yang sama.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.
number*stringHanya nombor dan pilihan pemimpin + dibenarkan.
service*stringKod perkhidmatan yang tersedia. jawapan terhad kepada kawasan kunci API.
session_durationintegerSesi berlangsung selama 20 minit. lulus 20 atau lupakan parameter ini.
with_operatorinteger1 menambah ID operator pada respons; 0 atau tanpa parameter mengembalikan tiga segmen.
refstringKod awam pemilik perisian: 5% untuk beliau dan 5% untuk tetamu. tanpa ref - 10% untuk tetamu.
operatorstringDapatkan ID daripada operators/getOperators (API). operator=1 · any/0

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=getRepeatNumber.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=getRepeatNumber&api_key=YOUR_API_KEY&number=380670000000&service=go' \
  -H 'Idempotency-Key: request-unique-001'

Jawapan

Sesi baru
ACCESS_NUMBER:43:380670000000
Nombor masih sibuk
NUMBER_IN_USE
  • Pertama, tamat atau membatalkan sesi semasa anda.Jika nombor sibuk, pengeluaran semula tidak dijalankan.
  • Sesi baru menerima ID baru dan tarif semasa. SMS lama tidak disalin ke dalamnya. ref ditetapkan semula.
  • SMScash membolehkan mengulangi hanya nombor daripada sejarah akaun ini. negara ini dikenalpasti oleh nombor.
  • Kunci sesi yang dipadamkan masih digunakan: memainkan semula peruntukan dengan kunci itu mengembalikan SESSION_CLOSED dan tidak mengeluarkan nombor lain.
GETgetSmsFullDapatkan SMS sebagai JSON

Sejarah yang dibina semua mesej dengan ID, penghantar, kod, teks dan negara, perkhidmatan dan data pembekal.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.
id*integerID sesi anda, diterima apabila nombor itu dikeluarkan.

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=getSmsFull.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=getSmsFull&api_key=YOUR_API_KEY&id=42'

Jawapan

JSON
{
  "success": true,
  "session_id": 42,
  "phone": "380670000000",
  "status": 1,
  "status_name": "received",
  "sms_count": 1,
  "sms": [
    {
      "id": 101,
      "external_id": "message-101",
      "sender": "Service",
      "code": "001234",
      "text": "Код подтверждения: 001234",
      "received_at": "2026-10-09T12:00:00Z",
      "country": {
        "id": 86,
        "name": "Italy"
      },
      "service": {
        "code": "go",
        "name": "Google"
      },
      "provider": {
        "id": 1,
        "name": "Оператор 1"
      }
    }
  ],
  "expires_at": "2026-10-09T12:20:00Z"
}
  • Format kegemaran untuk integrasi. ingat sms[].id untuk memproses mesej baru sahaja.
  • Status nombor SMScash: 1 - aktif, 6 - selesai, 8 - dibatalkan atau tamat tempoh. status_name membezakan antara menunggu, menerima, selesai, dibatalkan, tamat tempoh.
  • Kod yang diterima kekal tersedia selepas sesi ditutup. untuk volum yang besar, gunakan REST /activations/{id}/sms dengan after_id.
  • Selepas nombor tanpa SMS telah dihapuskan , getStatus dan getSms Kembali STATUS_CANCEL; getSmsFull mengembalikan status tertutup, telefon kosong dan sms senarai yang REST /activations/{id} dan /sms Kembali 404 NO_ACTIVATION.
GETgetSmsDapatkan SMS sebagai string teks

Mengembalikan sejarah SMS keseluruhan dalam format string untuk pelanggan sedia ada.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.
id*integerID sesi anda, diterima apabila nombor itu dikeluarkan.

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=getSms.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=getSms&api_key=YOUR_API_KEY&id=42'

Jawapan

Mesej
STATUS_OK:2026-10-09T12:00:00Z|001234|Код подтверждения: 001234
Menunggu
STATUS_WAIT_CODE
Pembatalan atau tamat tempoh
STATUS_CANCEL
  • Format mesej: masa dan kod dan teks. beberapa mesej dipisahkan oleh lajur.
  • SMS teks itu sendiri boleh mengandungi kolom dan bar vertikal. untuk pertukaran yang boleh dipercayai, gunakan getSmsFull.
GETgetServicesPerkhidmatan

Kod perkhidmatan yang tersedia. jawapan terhad kepada kawasan kunci API.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.
countryintegerDapatkan ID daripada getCountries.

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=getServices.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=getServices&api_key=YOUR_API_KEY'

Jawapan

Perkhidmatan
{
  "go": {
    "name": "Google",
    "code": "go"
  }
}
  • Direktori perkhidmatan dibahagikan di seluruh pembekal. ketersediaan nombor disemak secara berasingan.
GETgetCountriesNegara

ID, nama dan kod panggilan untuk negara-negara dalam saluran yang dipilih.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=getCountries.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=getCountries&api_key=YOUR_API_KEY'

Jawapan

Negara
{
  "86": {
    "id": 86,
    "name": "Italy",
    "phone_code": "39"
  }
}
GETgetOperatorsPengendali

Operator tersedia: ID API, nama dan tempoh penahanan ganjaran.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.
countryintegerDapatkan ID daripada getCountries.
operatorstringDapatkan ID daripada operators/getOperators (API). operator=1 · any/0

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=getOperators.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=getOperators&api_key=YOUR_API_KEY'

Jawapan

Pengendali
{
  "1": {
    "id": 1,
    "provider_id": 1,
    "operator": 1,
    "name": "Оператор 1",
    "earnings_hold_days": 45
  }
}
  • Dapatkan ID daripada operators/getOperators (API).
GETgetRewardsPenghargaan SMS

Harga bergantung kepada negara. semua jumlah jadual adalah per SMS berbayar.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.
countryintegerDapatkan ID daripada getCountries.
servicestringKod perkhidmatan yang tersedia. jawapan terhad kepada kawasan kunci API.
operatorstringDapatkan ID daripada operators/getOperators (API). operator=1 · any/0

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=getRewards.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=getRewards&api_key=YOUR_API_KEY&country=59&service=vi'

Jawapan

JSON
{
  "59": {
    "vi": {
      "1": "0.01000000",
      "3": "0.00500000"
    }
  }
}
{}
{}
  • Jumlah tarif USD dikembalikan sebagai garis dekimal yang tepat dengan 8 tempat dekimal:
  • Pembekal yang dibenarkan boleh didapati pada kunci anda.
  • country ID → service code → operator ID → reward (USD)
GETgetBalanceBaki pengguna

Tambahan SMScash: keseimbangan yang tersedia mengambil kira akrual, bonus rujukan dan permintaan pembayaran.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=getBalance.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=getBalance&api_key=YOUR_API_KEY'

Jawapan

Baki
ACCESS_BALANCE:0.00
  • getBalance mengembalikan keseimbangan USD yang tersedia dengan sehingga 8 tempat sepuluh.
  • Hanya dana yang telah tamat tempoh tahanan boleh dikeluarkan.
GETgetHoldBalanceDitahan

Selepas SMS diterima, pendapatan ditahan selama tempoh yang ditetapkan oleh pembekal. Pada tarikh yang ditetapkan, amaun tersebut tersedia secara automatik untuk pengeluaran.

parameter

parameterJenisPenerangan
api_key*stringKunci API peribadi pengguna.

* Parameter yang diperlukan. dalam semua permintaan juga lulus tindakan=getHoldBalance.

Permintaan contoh

curl
curl 'https://smscash.org/stubs/handler_api.php?action=getHoldBalance&api_key=YOUR_API_KEY'

Jawapan

Ditahan
ACCESS_HOLD_BALANCE:34.50000001
  • SMScash · getHoldBalance · USD · 8
  • Hanya dana yang telah tamat tempoh tahanan boleh dikeluarkan.

Kod jawapan dan permintaan berulang

Dalam handler_api.php hasil perniagaan biasanya datang dengan HTTP 200. semak teks badan. direktori dan getSmsFull kembali JSON jika berjaya; kesilapan sentiasa teks.

Kod yangHTTPPenyebab dan Langkah Seterusnya
TARIFF_NOT_CONFIGURED200Kadar belum ditetapkanNombor peruntukan akan bermula sebaik sahaja SMS ganjaran dikonfigurasi.
COUNTRY_BLOCKED200Nombor peruntukan untuk negara ini telah disekat.Pilih negara lain.
BAD_SERVICE200Nombor peruntukan untuk perkhidmatan ini disekat.Pilih perkhidmatan lain.
PROVIDER_NOT_READY200Jumlah pengeluaran tidak boleh diakses sementaraMembersihkan katalog API.
BAD_KEY400± No api_key ë format invalid.Periksa kunci dalam permintaan.
INVALID_API_KEY401Kunci tidak diketahui, ditarik balik atau akaun disekat.Mencipta kunci API yang sah.
BAD_COUNTRY400Negara ini kekurangan atau tidak nombor positif.Dapatkan ID daripada getCountries.
BAD_SESSION_DURATION400Nombor telefon dikeluarkan untuk 20 minit.Korekt ± Korrekt session_duration.
BAD_REQUEST400ë invalid parameter or Idempotency-Key.Sila perbaiki permintaan anda.
BAD_SERVICE / BAD_OPERATOR / INVALID_PROVIDER200item direktori yang tidak diketahui atau disabiliti.Membersihkan katalog API.
BAD_NUMBER200Format nombor yang tidak betul.Masukkan nombor dalam digit.
BAD_ACTION / BAD_STATUS200Perintah, ID atau operasi yang tidak diketahui.Periksa seting yang ada.
EMPTY_POOL200Tiada nombor telefon yang sesuai kini boleh didapati.Kembali selepas 10-30 sekejap atau mengubah filter.
NUMBER_IN_USE200Nombor tertentu diduduki oleh sesi aktif.Menamatkan sesi anda atau pilih nombor lain.
NO_ACTIVATION200Sesi atau nombor terdahulu tidak termasuk dalam akaun anda.Periksa ID dan kunci.
SESSION_CLOSED / SMS_REQUIRED200Peralihan negara tidak tersedia pada masa ini.Semak keadaan dan ketersediaan SMS.
SCOPE_BLOCKED200Perkhidmatan, negara, atau pembekal tidak dibenarkan untuk kunci.Meningkatkan jangkauan kunci API.
IDEMPOTENCY_CONFLICT200Kunci pertanyaan ini sudah dikaitkan dengan parameter lain.For a new operation, create other Idempotency-Key.
BAD_REF / SELF_REF400Kod perisian tidak diketahui, disabiliti, atau milik pengguna itu sendiri.Sila rujuk kod pemilik perisian.
INTERNAL_ERROR500Kesilapan pelayan sementara atau pembekal.Repetition with a tard and the same Idempotency-Key.
ALLOCATION_PENDING200♫ Number allocation is already in progress. Restart with the same Idempotency-Key.♫ Number allocation is already in progress. Restart with the same Idempotency-Key.
ALLOCATION_UNCERTAIN200Hasil peruntukan tidak disahkan. pengeluaran automatik tidak dibenarkan untuk mengelakkan peruntukan nombor kedua.Hasil peruntukan tidak disahkan. pengeluaran automatik tidak dibenarkan untuk mengelakkan peruntukan nombor kedua.

REST mengembalikan objek {"error":{"code":"…","message":"…"}} dan status HTTP biasa 400/401/403/404/409/503.

JSON
{
  "error": {
    "code": "BAD_REQUEST",
    "message": "Periksa medan permintaan.",
    "request_id": "req_…",
    "hint": "Use the documented JSON type; numbers must not be quoted.",
    "retryable": false,
    "details": {
      "field": "country",
      "expected": "integer"
    }
  }
}
REST
X-Request-ID: included in every API response
405: Allow lists the supported HTTP methods
ALLOCATION_PENDING: retryable=true · Retry-After=3 · same operation key
ALLOCATION_UNCERTAIN: retryable=false · contact support
Transport errors: check the operation before another write; keep the original key.

SeterusnyaSeterusnyaSeterusnyaIntegrasi

Jumlah tarif USD dikembalikan sebagai garis dekimal yang tepat dengan 8 tempat dekimal: 0.00300000 USD.

Mata wang keseimbangan ialah USD. skema permintaan dan tindak balas boleh didapati di OpenAPI.

Pengeluaran dalam USDT · TRC20Pembayaran mengambil masa antara 1 hingga 45 hari. Fi pengeluaran ialah 4 $. Fi ini ditolak daripada amaun permohonan. Selepas SMS diterima, pendapatan ditahan selama tempoh yang ditetapkan oleh pembekal. Pada tarikh yang ditetapkan, amaun tersebut tersedia secara automatik untuk pengeluaran. Hanya dana yang telah tamat tempoh tahanan boleh dikeluarkan.
GET/api/v1/catalogPerkhidmatan dan negara
GET/api/v1/tariffsSMS recompense rates per Country
GET/api/v1/offersHarga dan ganjaran
GET/api/v1/servicesPengarah
GET/api/v1/countriesPengarah
GET/api/v1/operatorsPengarah
GET/api/v1/availability?country=1Nombor ketersediaan
POST/api/v1/activationsSesi baru
GET/api/v1/activations/batch?ids=42,43Semak beberapa nombor
GET/api/v1/activations200 sesi terakhir: scope = sejarah, menunggu atau semua
GET/api/v1/activations/{id}Mesej dan mesej
GET/api/v1/activations/{id}/sms?after_id=0&limit=100SMS dengan Cursor
POST/api/v1/activations/{id}/retryMenunggu SMS
POST/api/v1/activations/{id}/finishPenutupan
POST/api/v1/activations/{id}/cancelPembatalan
POST/api/v1/activations/repeatNombor pengembalian
GET/api/v1/keysAPI Kunci
POST/api/v1/keysMencipta kunci
PATCH/api/v1/keys/{id}Perubahan nama atau dasar
DELETE/api/v1/keys/{id}Menarik kunci
GET/api/v1/referralsKod rujukan dan pendapatan
GET/api/v1/summaryKeseimbangan dan ringkasan
GET/api/v1/balanceDitahan
GET/api/v1/ledgerPenghasilan Ledger
GET/api/v1/withdrawalsPermohonan Pembayaran
POST/api/v1/withdrawalsMencipta Permintaan
GET/api/v1/statisticsStatistik Keseluruhan
GET/api/v1/earnings/holdsTahanan pendapatan

Hanya menerima SMS baru sahaja

REST
GET /api/v1/activations/42/sms?after_id=0&limit=100
Authorization: Bearer YOUR_API_KEY
JSON
{
  "session_id": 42,
  "sms": [
    {
      "id": 101,
      "code": "001234",
      "text": "Kod yang : 001234",
      "sender": "Service",
      "received_at": "2026-10-09T12:00:00Z"
    }
  ],
  "next_cursor": 101,
  "has_more": false
}

Save next_cursor × transfere it as after_idʹ. If has_more=true♫ , la next page puede read immediately. limite: 1–200ë . sessions and SMS disponible only for the proprietaire.