API Документация
Жабдықтардан кейін
Жасау API перненің қалтаңызда, санды алу мен хаттарды тексеру 10 секунд. SMS Код келетін; оны қайта оқу балансыңыздың таңбасы жоқ.
https://smscash.org/api/v1https://smscash.org/stubs/handler_api.phpcurl --get 'https://smscash.org/stubs/handler_api.php' \
--data-urlencode 'api_key=YOUR_API_KEY' \
--data-urlencode 'action=getNumber' \
--data-urlencode 'service=go' \
--data-urlencode 'country=86'Алдыңғы қосылды интерфейс адресы: /handler_api.php. іс-әрекеттің REST интеграциялары көптеген жылдар бойы.
Сұрау құрастырушы
https://smscash.org/stubs/handler_api.phpcurl --max-time 15 --fail-with-body 'https://smscash.org/stubs/handler_api.php?action=getNumber&api_key=YOUR_API_KEY&service=go&country=86&with_operator=1'package main
import (
"fmt"
"io"
"net/http"
"net/url"
"os"
"time"
)
func main() {
endpoint, err := url.Parse("https://smscash.org/stubs/handler_api.php?action=getNumber&api_key=YOUR_API_KEY&service=go&country=86&with_operator=1")
if err != nil { panic(err) }
query := endpoint.Query()
query.Set("api_key", os.Getenv("SMSCASH_API_KEY"))
endpoint.RawQuery = query.Encode()
req, err := http.NewRequest("GET", endpoint.String(), nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second, CheckRedirect: func(_ *http.Request, _ []*http.Request) error { return http.ErrUseLastResponse }}
res, err := client.Do(req)
if err != nil { panic(err) }
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil { panic(err) }
fmt.Println(res.StatusCode, string(body))
}// Node.js 18+: set SMSCASH_API_KEY in your environment.
const url = new URL("https://smscash.org/stubs/handler_api.php?action=getNumber&api_key=YOUR_API_KEY&service=go&country=86&with_operator=1");
url.searchParams.set("api_key", process.env.SMSCASH_API_KEY);
const response = await fetch(url, {
method: 'GET',
signal: AbortSignal.timeout(15000),
redirect: 'error',
});
const result = await response.text();
console.log(response.status, result);
// SMS codes are strings: keep leading zeros. Never repeat issuance automatically.import json
import os
import urllib.error
import urllib.parse
import urllib.request
class NoRedirect(urllib.request.HTTPRedirectHandler):
def redirect_request(self, req, fp, code, msg, headers, newurl):
return None
url = "https://smscash.org/stubs/handler_api.php?action=getNumber&api_key=YOUR_API_KEY&service=go&country=86&with_operator=1"
parts = urllib.parse.urlsplit(url)
params = dict(urllib.parse.parse_qsl(parts.query))
params["api_key"] = os.environ["SMSCASH_API_KEY"]
url = urllib.parse.urlunsplit(parts._replace(query=urllib.parse.urlencode(params)))
request = urllib.request.Request(url, method='GET')
try:
with urllib.request.build_opener(NoRedirect).open(request, timeout=15) as response:
result = response.read().decode("utf-8")
print(response.status, result)
except urllib.error.HTTPError as error:
print(error.code, error.read().decode('utf-8'))
raise
# No automatic retries; SMS codes remain strings.Кілт сақталмайды. Бұл тексеру нөмірлерді бермейді.
Өзініңнің басқа да басқа да
Қызметтер мен елдер
Қызметті мен елді таңдаңыз. SMS елден ықтимал.
GET /api/v1/catalog?service=go&country=86&page=1&page_size=100
Authorization: Bearer YOUR_API_KEY{
"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)
Қазіргі таңда
GET /stubs/handler_api.php?action=getNumber&api_key=YOUR_API_KEY&service=go&country=86Автоматты таңдау: қолжетімді оператор кездейсоқ таңдалады.
ACCESS_NUMBER: session ID · phone number
service + country · session_duration: 20
ref: software owner code (optional)
operator: public ID (e.g. 1) or comma-separated IDs (e.g. "1,3")
optional · omitted/any/0: random eligible provider
country: integer · service: string · SMS code: stringБұл қағидалар 20 минут ұсынады. SMS-дер 10 секундта дейін аударылады.
Бірнеше нөмірді тексеру
GET /api/v1/activations/batch?ids=42,43
Authorization: Bearer YOUR_API_KEY{
"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": 10
}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Баланс · Ұсталған қаражат
GET /api/v1/balance
Authorization: Bearer YOUR_API_KEY{
"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 — Қолжетімді; held_balance — Ұсталған қаражат. USD · 8
Ұстау мерзімі аяқталған қаражатты ғана шығаруға болады.
Дайын клиенттер
import {SmScash, SmScashError} from './smscash.mjs';
const api = new SmScash(process.env.SMSCASH_API_KEY);
const catalog = await api.catalog({service: 'go', country: 86});
console.log(catalog.rows);
const messages = await api.sms(42, {afterId: 0});
console.log(messages.sms);
const statuses = await api.batch([42]);
const held = await api.holdBalance();
console.log(held); // Exact USD stringimport os
from smscash import SmScash, SmScashError
api = SmScash(os.environ['SMSCASH_API_KEY'])
catalog = api.catalog(service='go', country=86)
print(catalog['rows'])
messages = api.sms(42, after_id=0)
print(messages['sms'])
statuses = api.batch([42])
held = api.hold_balance()
print(held) # Exact USD stringme() · balance() · holdBalance()/hold_balance() · catalog() · activation() · sms() · batch()
setStatus(id, "cancel") / set_status(id, "cancel")
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
https://smscash.org/sms-activate/stubs/handler_api.phphttps://smscash.org/hero-sms/stubs/handler_api.phpПайдаланушының жеке API кілті.
Қызметті мен елді таңдаңыз. SMS елден ықтимал.
| Кодексі | Оғанды |
|---|---|
getNumber / getNumberV2 | Қазіргі таңда |
getStatus / getStatusV2 | Қазіргі таңда бүкіл әлемдік коды |
setStatus / finishActivation / cancelActivation | Сессияның менеджмент |
getPrices / getNumbersStatus | Қайтанының дағдыры |
getRewards (SMScash) | SMS-дер өтірінен |
getServicesList / getServices | Қызметтер |
getCountries / getOperators | Қызметтер мен елдер |
getActiveActivations | Сессиясы |
getBalance | Пайдаланушының балансы |
getHoldBalance (SMScash) | Ұсталған қаражат |
cost = 0 USD · activationCost = 0 USDreward — SMS-дер өтірінен
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'{
"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"
}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, e.g. 1,3); 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.
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.Бұл қағидалар 20 минут ұсынады. SMS-дер 10 секундта дейін аударылады.
Аутентификация және ретриация
REST: Әлемдік Authorization: Bearer YOUR_API_KEY. Қазір интерфейс: параметрі api_key Ақыт actionҚайтатын HTTPS
Қандай API-ның кешілер, сіздің акаунтқа қосуға болады.
API жабдықтар фреквенциясы және телефондық номері неограничен.
Бұл қағидалар 20 минут ұсынады. SMS-дер 10 секундта дейін аударылады.
API Керіктің
Келтірілген қызметтерге, елдерге және провайдерлерге шектеуге болады. Бос тізімдер барлық параметрлерге рұқсат ететін.
{
"label": "Біздің софтвер",
"policy": {
"services": [
"go"
],
"countries": [
86
],
"providers": [
1
]
}
}PATCH /api/v1/keys/{id} аты мен ережені толық өзгертеді. Тек құрылғанда ғана құрылды.
10% -ға дейін. 5% + 5% софтвер коды.
Қазіргі таңда бүкіл әлем қаржылық дағдарыс. ref Бағдарламаның иесі. Сұрау орындау кілтінің рұқсат етілген. Код "Кезбеттеу" бөлігіне және "Керістер" дегенде GET /api/v1/referrals → software_ref.
| Жақсы | Қазір | Софтвер |
|---|---|---|
| Ауызды реф | 10% | — |
| Ауызды реф | 5% | 5% |
| Қандай, қазір мен қазір | — | 5% |
Платформа бонустарды ұйымды шектелмейді. Бағдарламаның иесі және реферер бір адам болуға болады. Жұмыстың өзінің кодысын қолдануға болмайды.
Сессия құрылған кезде шарттар орнатылады; оқу SMS мен retry Оларды өзгермейді. ref жаңа қайталанатын сеанс үшін қайталанды. Тариф есептеуде жұмыс ұсқасы USD 0.003 келеді USD 0.00015 әрбір бағдарламаның иесі және референті. Жалпы бонус USD 0.00030.
API командасы
11 XVBC стильді және SMScash балансы бар.
GETgetNumberҚазіргі таңда+
Сессияны құру және пайдаланушы үшін бар санды сақталады. Сұрау мен жіберілген алушылар бөлшегіне түсіріледі; сұрақ ықтималда SMS Код келеді.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
service* | string | Қолжетерлік қызмет кодтары. Жауаптың аумақтарына шектелмеген API кілт. |
country* | integer | Табу ID келесіден getCountries. |
operator | string | Возьмите ID из operators/getOperators (API). ID поставщиков, через запятую: operator=1,3. operator=1 · operator=1,3 · any/0 |
session_duration | integer | Қазіргі таңда 20 минут қанағаттанды. 20 минут қанағаттанды. |
with_operator | integer | 1 жауапқа оператордың ID-сін қосады; 0 немесе параметр көрсетілмесе, үш бөлік қайтарылады. |
ref | string | Публичный код владельца софта: 5% ему и 5% пригласившему. Без ref — 10% пригласившему. Неизвестный, отключённый, некорректный или собственный ref игнорируется: запрос продолжается без бонуса владельцу софта. Действующие коды и прежние условия уже выданных сессий сохраняются. |
* Қажетті параметр. Барлық сұрауларда да әрекет=getNumber.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getNumber&api_key=YOUR_API_KEY&service=go&country=86&with_operator=1'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getNumber&api_key=YOUR_API_KEY&service=go&country=86&with_operator=1", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getNumber&api_key=YOUR_API_KEY&service=go&country=86&with_operator=1");
const result = await response.text();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getNumber&api_key=YOUR_API_KEY&service=go&country=86&with_operator=1",
timeout=15,
)
print(response.status_code, response.text)Жауаптар
ACCESS_NUMBER:42:380670000000:1EMPTY_POOL- Автоматты таңдау: қолжетімді оператор кездейсоқ таңдалады.
- Ұяшықсыз ел - EMPTY_POOL; қате ел пішімі - BAD_COUNTRY.
- Өшірілген сеанстың кілттері қолданылады: осы пернемен бөлімді қайта ойнату қайтарады SESION_CLOSED және басқа санды жоқ.
- Бөлу нәтижесі растаусыз. Автоматты түрде қайталап көру рұқсат етілмеді, екінші санды тарату үшін.
GETgetNumbersStatusҚайтанының дағдыры+
Өзінің телефондық номері, қызмет көрсету және қызмет көрсету.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
country* | integer | Табу ID келесіден getCountries. |
* Қажетті параметр. Барлық сұрауларда да әрекет=getNumbersStatus.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getNumbersStatus&api_key=YOUR_API_KEY&country=86'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getNumbersStatus&api_key=YOUR_API_KEY&country=86", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getNumbersStatus&api_key=YOUR_API_KEY&country=86");
const result = await response.json();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getNumbersStatus&api_key=YOUR_API_KEY&country=86",
timeout=15,
)
print(response.status_code, response.json())Жауаптар
{
"go_0": 0
}- _0 жұрнағы белгілі операторсыз таңдауды анықтау.
- Қол жеткізбестік табылғыштың жалпы қабылдауы. Таңдалған арна санды талдағанда тексерілген.
GETgetStatusҚазіргі таңда бүкіл әлемдік коды+
Бұл үшін, бұл сессиялық статус, SMS код, және бұл кодмен көшіруге болады.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
id* | integer | Бұл үшін бір-бірімен танымал, оның ішінде қазаларынан кейін танымал. |
* Қажетті параметр. Барлық сұрауларда да әрекет=getStatus.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getStatus&api_key=YOUR_API_KEY&id=42'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getStatus&api_key=YOUR_API_KEY&id=42", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getStatus&api_key=YOUR_API_KEY&id=42");
const result = await response.text();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getStatus&api_key=YOUR_API_KEY&id=42",
timeout=15,
)
print(response.status_code, response.text)Жауаптар
STATUS_WAIT_CODESTATUS_OK:001234STATUS_CANCELNO_ACTIVATION- 20 секундта дейін ұлылыңыз.Серіктің бір-бірінен ұлыңыз не басқа да ұлыңыз.
- Қазір retry Олардың ішіндегі ең көне апеллятив – үңгір. getStatus Қазіргі таңда бүкіл әлемде SMS.
- Бірнеше сандан кейін SMS өшірілген, getStatus мен getSms қайтару STATUS_CANCEL; getSmsFull жабылған күй- жайы, бос телефон және бос sms тізім. REST /activations/{id} мен /sms қайтару 404 NO_ACTIVATION.
GETsetStatusСессияның менеджмент+
SMS күтуді аяқтау, қайту не жалғастыру. Сеанстың мерзімі бірдей болады.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
id* | integer | Бұл үшін бір-бірімен танымал, оның ішінде қазаларынан кейін танымал. |
status* | integer | 3 — сессияның ұзақтығы коды туралы жəне; 6 — SMS-дер кейін ұзақтығы; 8 — ұзақтығы ұзақтығы коды туралы жəне. |
* Қажетті параметр. Барлық сұрауларда да әрекет=setStatus.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=setStatus&api_key=YOUR_API_KEY&id=42&status=3'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=setStatus&api_key=YOUR_API_KEY&id=42&status=3", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=setStatus&api_key=YOUR_API_KEY&id=42&status=3");
const result = await response.text();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=setStatus&api_key=YOUR_API_KEY&id=42&status=3",
timeout=15,
)
print(response.status_code, response.text)Жауаптар
ACCESS_RETRY_GETACCESS_ACTIVATIONACCESS_CANCEL- Келесі кодты бастапқы 20 минут ішінде күтеді. Сұрау мен мерзімі біткен уақыттар өзгермейді.
- Бұл үшін, банктер өздерінің ең айқын жасайды.
- Ауыз іші шырышты қабығы SMS Бұл коды туралы қарастырылған.Аздан және басқа да коды туралы қарастырылған.
GETgetRepeatNumberБұл үшін басқа да басқа да басқа да+
Тарихыңыздан арналған санмен жаңа сеансты ашу. Бір елде басқа қызметті таңдауға болады.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
number* | string | Ескі саныңыз. Тек сандар және бастапқы + ғана рұқсат ететін. |
service* | string | Қолжетерлік қызмет кодтары. Жауаптың аумақтарына шектелмеген API кілт. |
session_duration | integer | Қазіргі таңда 20 минут қанағаттанды. 20 минут қанағаттанды. |
with_operator | integer | 1 жауапқа оператордың ID-сін қосады; 0 немесе параметр көрсетілмесе, үш бөлік қайтарылады. |
ref | string | Публичный код владельца софта: 5% ему и 5% пригласившему. Без ref — 10% пригласившему. Неизвестный, отключённый, некорректный или собственный ref игнорируется: запрос продолжается без бонуса владельцу софта. Действующие коды и прежние условия уже выданных сессий сохраняются. |
operator | string | Возьмите ID из operators/getOperators (API). ID поставщиков, через запятую: operator=1,3. operator=1 · operator=1,3 · any/0 |
* Қажетті параметр. Барлық сұрауларда да әрекет=getRepeatNumber.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getRepeatNumber&api_key=YOUR_API_KEY&number=380670000000&service=go'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getRepeatNumber&api_key=YOUR_API_KEY&number=380670000000&service=go", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getRepeatNumber&api_key=YOUR_API_KEY&number=380670000000&service=go");
const result = await response.text();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getRepeatNumber&api_key=YOUR_API_KEY&number=380670000000&service=go",
timeout=15,
)
print(response.status_code, response.text)Жауаптар
ACCESS_NUMBER:43:380670000000NUMBER_IN_USE- Біріншіден, назардағы сеансыңызды аяқтау не айну. Егер сан бос емес болса, қайта жұмыс істемейді.
- Бұл үшін жаңа сессиясы және нысандан тарифі ұсынады.Стары SMS-дер не қаталған. ref-дер қайтадан қайтарып.
- SMScash үшін бұл қабырға айналады.Секреттермен қабырға айналады.
- Өшірілген сеанстың кілттері қолданылады: осы пернемен бөлімді қайта ойнату қайтарады SESION_CLOSED және басқа санды жоқ.
GETgetSmsFullSMS қауымдастығының ұзақтығы+
Барлық хаттар ID, жібергіші, коды, мәтін және ел, қызметтер мен табылғыш деректерін орнату.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
id* | integer | Бұл үшін бір-бірімен танымал, оның ішінде қазаларынан кейін танымал. |
* Қажетті параметр. Барлық сұрауларда да әрекет=getSmsFull.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getSmsFull&api_key=YOUR_API_KEY&id=42'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getSmsFull&api_key=YOUR_API_KEY&id=42", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getSmsFull&api_key=YOUR_API_KEY&id=42");
const result = await response.json();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getSmsFull&api_key=YOUR_API_KEY&id=42",
timeout=15,
)
print(response.status_code, response.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": "operator=1"
}
}
],
"expires_at": "2026-10-09T12:20:00Z"
}- Біріккендігін баптау пішімі. sms[].id тек жаңа хаттарды өңдеуді ескерту.
- Сандар күйі SMScash: 1 - белсенді 6 - аяқталды 8 - тоқтатылды не мерзімі біткен. status_name Күту, қабылдалған, аяқталды, доғарылды, мерзімі біткен.
- Сеанс жабылғаннан кейін алынған кодтар бар болып тұр. Үлкен үнділігі үшін REST /activations/{id}/sms, after_id көмегімен қолданыңыз.
- Бірнеше сандан кейін SMS өшірілген, getStatus мен getSms қайтару STATUS_CANCEL; getSmsFull жабылған күй- жайы, бос телефон және бос sms тізім. REST /activations/{id} мен /sms қайтару 404 NO_ACTIVATION.
GETgetSmsSMS-ті тек қағазды+
Бар клиенттердің бүкіл SMS журналы мәтін пішімінен қайтарады.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
id* | integer | Бұл үшін бір-бірімен танымал, оның ішінде қазаларынан кейін танымал. |
* Қажетті параметр. Барлық сұрауларда да әрекет=getSms.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getSms&api_key=YOUR_API_KEY&id=42'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getSms&api_key=YOUR_API_KEY&id=42", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getSms&api_key=YOUR_API_KEY&id=42");
const result = await response.text();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getSms&api_key=YOUR_API_KEY&id=42",
timeout=15,
)
print(response.status_code, response.text)Жауаптар
STATUS_OK:2026-10-09T12:00:00Z|001234|Код подтверждения: 001234STATUS_WAIT_CODESTATUS_CANCEL- Хабарлама пішімі: time көмек- текст. Бірнеше хаттар бөлігін бөлпейді.
- Мәтін SMS Өзінің ұзындықтар мен тік панелдері болады. Қосымша талдау үшін қолданыңыз getSmsFull.
GETgetServicesҚызметтер+
Қолжетерлік қызмет кодтары. Жауаптың аумақтарына шектелмеген API кілт.
Қазір
Баспа…
| Аты | Керіктің код service |
|---|
Қызмет қапшығы тізбектегі арқылы ортақталады. Қолжетерлік сан бөлек тексерілген.
Келтірілген қызметтерге, елдерге және провайдерлерге шектеуге болады. Бос тізімдер барлық параметрлерге рұқсат ететін.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
country | integer | Табу ID келесіден getCountries. |
* Қажетті параметр. Барлық сұрауларда да әрекет=getServices.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getServices&api_key=YOUR_API_KEY'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getServices&api_key=YOUR_API_KEY", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getServices&api_key=YOUR_API_KEY");
const result = await response.json();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getServices&api_key=YOUR_API_KEY",
timeout=15,
)
print(response.status_code, response.json())Жауаптар
{
"go": {
"name": "Google",
"code": "go"
}
}- Қызмет қапшығы тізбектегі арқылы ортақталады. Қолжетерлік сан бөлек тексерілген.
GETgetCountriesЕлдер+
Қаланың тұрақты тұрғындарының саны адамды құрайды және адамды құрайды.
Қазір
Баспа…
| Аты | Қазір ID country |
|---|
Келтірілген қызметтерге, елдерге және провайдерлерге шектеуге болады. Бос тізімдер барлық параметрлерге рұқсат ететін.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
* Қажетті параметр. Барлық сұрауларда да әрекет=getCountries.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getCountries&api_key=YOUR_API_KEY'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getCountries&api_key=YOUR_API_KEY", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getCountries&api_key=YOUR_API_KEY");
const result = await response.json();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getCountries&api_key=YOUR_API_KEY",
timeout=15,
)
print(response.status_code, response.json())Жауаптар
{
"86": {
"id": 86,
"name": "Italy",
"phone_code": "39"
}
}GETgetOperatorsОператор+
Қолжетімді операторлар: API ID, атауы және сыйақыны ұстау мерзімі.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
country | integer | Табу ID келесіден getCountries. |
operator | string | Возьмите ID из operators/getOperators (API). ID поставщиков, через запятую: operator=1,3. operator=1 · operator=1,3 · any/0 |
* Қажетті параметр. Барлық сұрауларда да әрекет=getOperators.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getOperators&api_key=YOUR_API_KEY'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getOperators&api_key=YOUR_API_KEY", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getOperators&api_key=YOUR_API_KEY");
const result = await response.json();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getOperators&api_key=YOUR_API_KEY",
timeout=15,
)
print(response.status_code, response.json())Жауаптар
{
"1": {
"id": 1,
"provider_id": 1,
"operator": 1,
"name": "operator=1",
"earnings_hold_days": 45
}
}- Возьмите ID из operators/getOperators (API). ID поставщиков, через запятую: operator=1,3.
GETgetRewardsSMS-дер өтірінен+
Меңзегендер елге ықтимал. Барлық кестенің өлшемдері ұқсатталған SMS- ге.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
country | integer | Табу ID келесіден getCountries. |
service | string | Қолжетерлік қызмет кодтары. Жауаптың аумақтарына шектелмеген API кілт. |
operator | string | Возьмите ID из operators/getOperators (API). ID поставщиков, через запятую: operator=1,3. operator=1 · operator=1,3 · any/0 |
* Қажетті параметр. Барлық сұрауларда да әрекет=getRewards.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getRewards&api_key=YOUR_API_KEY&country=59&service=vi'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getRewards&api_key=YOUR_API_KEY&country=59&service=vi", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getRewards&api_key=YOUR_API_KEY&country=59&service=vi");
const result = await response.json();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getRewards&api_key=YOUR_API_KEY&country=59&service=vi",
timeout=15,
)
print(response.status_code, response.json())Жауаптар
{
"59": {
"vi": {
"1": "0.01000000",
"3": "0.00500000"
}
}
}{}- USD тариф реңктері 8 ондық орнымен ұсталған ондығы ретінде қайтарады:
- Бұл үшін бір-бірімен танымал қанақтардан тұрады.
- country ID → service code → operator ID → reward (USD)
GETgetTopCountriesByServiceТоп стран по сервису+
До 10 стран с лучшей доставкой смс кодов за последние 24 часа
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
service* | string | Код сервиса из getServices. |
* Қажетті параметр. Барлық сұрауларда да әрекет=getTopCountriesByService.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getTopCountriesByService&api_key=YOUR_API_KEY&service=go'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getTopCountriesByService&api_key=YOUR_API_KEY&service=go", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getTopCountriesByService&api_key=YOUR_API_KEY&service=go");
const result = await response.json();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getTopCountriesByService&api_key=YOUR_API_KEY&service=go",
timeout=15,
)
print(response.status_code, response.json())Жауаптар
Структура ответа
| Ключ в примере | Оғанды | Қазір |
|---|---|---|
["12"], ["36"] | Қазір ID Первый, внешний уровень JSON. Каждая запись объединяет операторов одной страны. | getCountries |
["12"]["1"], ["12"]["3"] | ID оператора Второй уровень JSON, внутри страны. Это публичный ID оператора (поставщика), который передаётся в параметре operator. | getOperators |
{
"12": {
"1": {
"reward": 0.012,
"count": 542
},
"3": {
"reward": 0.014,
"count": 301
}
},
"36": {
"1": {
"reward": 0.011,
"count": 190
}
}
}{}- В примере ["12"]["1"] — данные оператора 1 в стране 12. ID стран берутся из getCountries, ID операторов — из getOperators.
- reward — действующее личное вознаграждение в USD, JSON-число. count — количество выданных номеров за последние 24 часа, включая сессии без кода.
- Рейтинг рассчитывается как все полученные непустые коды, делённые на все выдачи номеров за последние 24 часа для выбранного сервиса.
- Повторные непустые коды увеличивают числитель; конверсия может превышать 100%. Начальные нули сохраняются.
- Суточная статистика сервиса кэшируется на 10 минут. Тарифы и ограничения ключа проверяются при каждом запросе. Момент среза — в заголовке X-Statistics-As-Of.
- Нет данных или доступных связок — пустой объект {}. Страны с выдачами и нулём кодов имеют нулевую конверсию. Порядок ключей JSON не задаёт места в рейтинге.
GETgetBalanceПайдаланушының балансы+
Қосымша SMScash: бар баланстарды есептеу, ұсыныстарды қабылдау және төлем сұрау сұраныстары.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
* Қажетті параметр. Барлық сұрауларда да әрекет=getBalance.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getBalance&api_key=YOUR_API_KEY'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getBalance&api_key=YOUR_API_KEY", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getBalance&api_key=YOUR_API_KEY");
const result = await response.text();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getBalance&api_key=YOUR_API_KEY",
timeout=15,
)
print(response.status_code, response.text)Жауаптар
ACCESS_BALANCE:0.00- getBalance Қатысушылардың көптеген USD Басқа шығысқа шығысқа 8 жылдан кейін.
- Ұстау мерзімі аяқталған қаражатты ғана шығаруға болады.
GETgetHoldBalanceҰсталған қаражат+
SMS алынғаннан кейін табыс жеткізуші белгілеген мерзімге ұсталады. Көрсетілген күні сома автоматты түрде шығаруға қолжетімді болады.
параметрі
| параметр | Өткен | Оғанды |
|---|---|---|
api_key* | string | Пайдаланушының жеке API кілті. |
* Қажетті параметр. Барлық сұрауларда да әрекет=getHoldBalance.
Жақсысы
curl 'https://smscash.org/stubs/handler_api.php?action=getHoldBalance&api_key=YOUR_API_KEY'package main
import (
"fmt"
"io"
"net/http"
"time"
)
func main() {
req, err := http.NewRequest("GET", "https://smscash.org/stubs/handler_api.php?action=getHoldBalance&api_key=YOUR_API_KEY", nil)
if err != nil { panic(err) }
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil { panic(err) }
fmt.Println(resp.StatusCode, string(body))
}const response = await fetch("https://smscash.org/stubs/handler_api.php?action=getHoldBalance&api_key=YOUR_API_KEY");
const result = await response.text();
console.log(response.status, result);import requests
response = requests.get(
"https://smscash.org/stubs/handler_api.php?action=getHoldBalance&api_key=YOUR_API_KEY",
timeout=15,
)
print(response.status_code, response.text)Жауаптар
ACCESS_HOLD_BALANCE:34.50000001- SMScash · getHoldBalance · USD · 8
- Ұстау мерзімі аяқталған қаражатты ғана шығаруға болады.
Жауап кодтары және қайталану сұраныстары
Қазір handler_api.php бизнес-издалары мен өмірінің өмірінің HTTP 200Бұл тек тек қағазды. - Директива getSmsFull Қазір JSON Көңілді сергітерлік әндер шырқалып, би биленді.
| Кодексі | HTTP | Қазіргі таңда бүкіл әлемдік |
|---|---|---|
TARIFF_NOT_CONFIGURED | 200 | Өнімдер мен ұзақтығыСеріктің ең айқын SMS-қалысы бар. |
COUNTRY_BLOCKED | 200 | Бұл жерде бірліктің жерде бірліктің жерде бар.Қазіргі таңда басқа етті. |
BAD_SERVICE | 200 | Бұл қызметтер үшін қосымшалық номердер бар.Ауыздылық қызмет көрсету. |
PROVIDER_NOT_READY | 200 | Олардың дағдырығымен неге дейінБұл API каталогында көшіру. |
BAD_KEY | 400 | Жоқ api_key немесе қате пішімі.Қазіргі таңда бүкіл әлемдік қаржылық дағдарыс. |
INVALID_API_KEY | 401 | Кілт белгісіз, қайтарылмаған немесе тіркелгісі бұғатталмаған.Бұл үшін API Key-ті бар. |
BAD_COUNTRY | 400 | Қаланың тұрақты тұрғындарының саны немесе басқа да құрайды.Табу ID келесіден getCountries. |
BAD_SESSION_DURATION | 400 | Телефондық номердер 20 минутға дейін ұсынады.Түзету session_duration. |
BAD_REQUEST | 400 | Жабдықтардан тұрады.Қайтақтың жабдықтармен таныстыраңыз. |
BAD_SERVICE / BAD_OPERATOR / INVALID_PROVIDER | 200 | Беймәлім не рұқсат етілмеген каталог элементі.Бұл API каталогында көшіру. |
BAD_NUMBER | 200 | Недеректі ұлтқыштық.Бұл цифры мен цифры бар. |
BAD_ACTION / BAD_STATUS | 200 | Олардың ішіндегі ең көне апеллятив – үңгір.Қазір салықты қабырғасы. |
EMPTY_POOL | 200 | Қазіргі таңда телефондық номері не қосқан.Кейін қайталау 10-30 секунд немесе сүзгілерді өзгерту. |
NUMBER_IN_USE | 200 | Белсенді сеанс орындалады.Сессияңызды аяқтау не басқа санды таңдаңыз. |
NO_ACTIVATION | 200 | Сессия не алдыңғы сан тіркелгіңізге келмейді.Қандайды және тазалық. |
SESSION_CLOSED / SMS_REQUIRED | 200 | Қаланың тұрақты тұрғындарының саны нысанды.Серіктің де, SMS-дер бар. |
SCOPE_BLOCKED | 200 | «Аяқтар, «Аяқтар» және «Аяқтар» бағдарламасы бойынша не күлері.Бұл үшін API Key-ның ең айқынды. |
INTERNAL_ERROR | 500 | Олардың ішіндегі ең көне апеллятив – үңгір.Байланыс және қолдау · X-Request-ID |
ALLOCATION_PENDING | 200 | ЖүктеуgetActiveActivations · getStatus |
ALLOCATION_UNCERTAIN | 200 | Бөлу нәтижесі растаусыз. Автоматты түрде қайталап көру рұқсат етілмеді, екінші санды тарату үшін.Бөлу нәтижесі растаусыз. Автоматты түрде қайталап көру рұқсат етілмеді, екінші санды тарату үшін. |
Ауыз ішінен қайтадан {"error":{"code":"…","message":"…"}} және үлкен HTTP Күй- жайы 400/401/403/404/409/503.
{
"error": {
"code": "BAD_REQUEST",
"message": "Жабдықтардан тұрады.",
"request_id": "req_…",
"hint": "Use the documented JSON type; numbers must not be quoted.",
"retryable": false,
"details": {
"field": "country",
"expected": "integer"
}
}
}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.Өзініңнің басқа да басқа да
USD тариф реңктері 8 ондық орнымен ұсталған ондығы ретінде қайтарады: 0.00300000 USD.
Баланс валюты мен USD- Қатысушылардың көптеген жылдар бойы жасыққа және қағидалардан жұртшы. OpenAPI.
/api/v1/catalogҚызметтер мен елдер/api/v1/tariffsSMS-дер ұзақтығы/api/v1/offersӨнімдер және наградалар/api/v1/servicesҚазір/api/v1/countriesҚазір/api/v1/operatorsҚазір/api/v1/availability?country=1Қайдандық қабығы/api/v1/activationsӨткен сессиясы/api/v1/activations/batch?ids=42,43Бірнеше нөмірді тексеру/api/v1/activations200 жылдан кейінгі: мақала = история, жұлдыз және басқа да/api/v1/activations/{id}Сессиясы және ақпаратты/api/v1/activations/{id}/sms?after_id=0&limit=100SMS-дер мен курсор/api/v1/activations/{id}/retrySMS-дер қосылды/api/v1/activations/{id}/finishӨткен/api/v1/activations/{id}/cancelАнуға/api/v1/activations/repeatАуыздылық No/api/v1/keysAPI Калдық/api/v1/keysҚатысушылардың/api/v1/keys/{id}Ауыз ішінен қайтадан қайтарып/api/v1/keys/{id}Ақыттық күйінде/api/v1/referralsҚандай-ақ кодектер мен кодектер/api/v1/summaryБасқасы және рейтинг/api/v1/balanceҰсталған қаражат/api/v1/ledgerӨткен қабырға/api/v1/withdrawalsБасқа жабдықтар/api/v1/withdrawalsЖаққа қана/api/v1/statisticsСтатистикалық/api/v1/earnings/holdsТабысты ұстау мерзіміSMS-дер мен басқа да
GET /api/v1/activations/42/sms?after_id=0&limit=100
Authorization: Bearer YOUR_API_KEY{
"session_id": 42,
"sms": [
{
"id": 101,
"code": "001234",
"text": "Кодекс туралы: 001234",
"sender": "Service",
"received_at": "2026-10-09T12:00:00Z"
}
],
"next_cursor": 101,
"has_more": false
}Қайта next_cursor Бұл үшін бұл after_idӘдеп has_more=trueӨзінің қабырға айналады.Серіктің қабырға айналады: 1–200Сессиясы және SMS Оның басты себебі бар.