Mga dokumentasyon ng API
Ang mga numero, mga mensahe at mga ganito, direkt sa iyong app.
Mula sa isang request
Makakakuha ng isang API key sa iyong dashboard, mag-aalis ng isang numero at check for messages every 20 seconds. Pagkakaiba ay pinakatap kapag isang SMS na may isang code ay nakuha; mag-aalis ito sa loob ay hindi gumagana ang iyong balanse.
https://smscash.org/api/v1https://smscash.org/stubs/handler_api.phpcurl -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}'Alternative compatible interface address: /handler_api.php. Mga mga REST integrasyon ay mag-aalok.
Tagabuo ng request
Idempotency-Key: UUID · POST · 8–128
Awtomatikong pili: pinakamaraming code sa nakaraang oras, pagkatapos sa 24 oras. Walang numero: susunod na operator.
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}'package main
import (
"bytes"
"fmt"
"io"
"net/http"
"os"
"time"
)
func main() {
payload := []byte("{\"service\":\"go\",\"country\":86}")
req, err := http.NewRequest("POST", "https://smscash.org/api/v1/activations", bytes.NewReader(payload))
if err != nil { panic(err) }
req.Header.Set("Authorization", "Bearer " + os.Getenv("SMSCASH_API_KEY"))
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Idempotency-Key", "request-unique-001")
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) } // Keep the same operation key after a network error.
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil { panic(err) }
if res.StatusCode >= 300 {
fmt.Fprintf(os.Stderr, "HTTP %d, request_id=%s\n%s\n", res.StatusCode, res.Header.Get("X-Request-ID"), body)
os.Exit(1)
}
fmt.Println(string(body))
}// Node.js 18+: set SMSCASH_API_KEY in your environment.
const response = await fetch("https://smscash.org/api/v1/activations", {
method: "POST",
headers: {
Authorization: 'Bearer ' + process.env.SMSCASH_API_KEY,
'Content-Type': 'application/json',
'Idempotency-Key': "request-unique-001",
},
body: JSON.stringify({
"service": "go",
"country": 86
}),
signal: AbortSignal.timeout(15000),
redirect: 'error',
});
const result = await response.json();
if (!response.ok) {
const error = result.error || {};
console.error(response.status, error.code, error.hint, error.request_id);
throw new Error(error.message || 'API error');
}
console.log(result);
// SMS codes are strings: keep leading zeros. Never retry writes automatically.import json
import os
import urllib.error
import urllib.request
class NoRedirect(urllib.request.HTTPRedirectHandler):
def redirect_request(self, req, fp, code, msg, headers, newurl):
return None
headers = {
'Authorization': 'Bearer ' + os.environ['SMSCASH_API_KEY'],
'Content-Type': 'application/json',
'Idempotency-Key': "request-unique-001",
}
request = urllib.request.Request(
"https://smscash.org/api/v1/activations",
headers=headers,
data="{\"service\":\"go\",\"country\":86}".encode('utf-8'),
method="POST",
)
try:
with urllib.request.build_opener(NoRedirect).open(request, timeout=15) as response:
result = json.load(response)
print(result)
except urllib.error.HTTPError as error:
details = json.load(error).get('error', {})
print(error.code, details.get('code'), details.get('hint'), details.get('request_id'))
raise
# No automatic retries; SMS codes remain strings.Hindi sine-save ang susi. Hindi nagbibigay ng numero ang pagsusuring ito.
Mga Mga Pag-aaral sa Pag-aaral ng Integra
Mga serbisyo at bansa
Pagkakaiba ng isang serbisyo at bansa. Pagkakaiba sa pamamagitan ng SMS ay depende sa bansa.
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)
Dapat ang isang numero
POST /api/v1/activations
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Idempotency-Key: request-unique-001
{
"service": "go",
"country": 86
}Awtomatikong pili: pinakamaraming code sa nakaraang oras, pagkatapos sa 24 oras. Walang numero: susunod na operator.
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: stringAng numero ay valid sa 20 minuto. SMS ay tinatawag sa bawat 20 segundo. maaari kang mag-anulat ngayong mag-anulat.
Suriin ang maraming numero
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": 20
}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 messageBalanse · Naka-hold
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 — Magagamit; held_balance — Naka-hold. USD · 8
Maaari lamang i-withdraw ang pondong natapos na ang hold.
Mga client na handa nang gamitin
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 stringimport 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 stringme() · 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
https://smscash.org/sms-activate/stubs/handler_api.phphttps://smscash.org/hero-sms/stubs/handler_api.phpPersonal na API key ng gumagamit.
Pagkakaiba ng isang serbisyo at bansa. Pagkakaiba sa pamamagitan ng SMS ay depende sa bansa.
| ang code | Mga Description |
|---|---|
getNumber / getNumberV2 | Dapat ang isang numero |
getStatus / getStatusV2 | Dapat ang bagong code |
setStatus / finishActivation / cancelActivation | Mga session ng management |
getPrices / getNumbersStatus | Tapos na ang availability |
getRewards (SMScash) | Mga pahina sa SMS |
getServicesList / getServices | Mga serbisyo |
getCountries / getOperators | Mga serbisyo at bansa |
getActiveActivations | Mga Sesi |
getBalance | Balanse ng gumagamit |
getHoldBalance (SMScash) | Naka-hold |
cost = 0 USD · activationCost = 0 USDreward — Mga pahina sa 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' \
-H 'Idempotency-Key: request-unique-001'{
"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); 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.Ang numero ay valid sa 20 minuto. SMS ay tinatawag sa bawat 20 segundo. maaari kang mag-anulat ngayong mag-anulat.
Mga pag-authentication at retries
REST: ang header Authorization: Bearer YOUR_API_KEY. Mga Interface ng Pagkakaroon: Mga Parametro api_key at actionIpinagagamit ng HTTPS.
Para sa pag-aaral ng mga API key, i-click ang iyong account.
Ang frequency na ang API ay mag-request at ang numero ng mga numero ng telepono ay hindi limitasyon. Hindi na may mga araw o oras na mga quote.
Ang numero ay valid sa 20 minuto. SMS ay tinatawag sa bawat 20 segundo. maaari kang mag-anulat ngayong mag-anulat.
Sa isang lugar, isang unikal Idempotency-Key ang kailangan para sa numero ng mga alokasyon, ang mga katulad ng mga alokasyon, ang mga retry at ang mga pag-aalis. Ito ay optional ngunit ay mag-recommendado sa handler_api.php. I-reuse ang key kapag mag-retreat ng isang network request; gumagamit ng isang bagong key para sa isang bagong operasyon.
API Mga Key Scope
Dapat ay mag-sign a key sa anumang mga serbisyo, mga bansa at mga provider. Ang mga vacuum list ay maaaring mag-sign ng lahat ng mga opsyon na mayroon.
{
"label": "ang software",
"policy": {
"services": [
"go"
],
"countries": [
86
],
"providers": [
1
]
}
}PATCH /api/v1/keys/{id} Ang pangalan at politika ay mabuti sa lahat. Ang secret ay nagtatagdag lamang kapag ginawa.
10% sa total. 5% + 5% sa software code.
Kung mag-aalis ng isang numero, sila ay mag-aalis ref ang mga software. ang request ay mag-autorized sa pamamagitan ng key ng gumagamit. ang code ay sa "Referrals" section at sa GET /api/v1/referrals → software_ref.
| Mga Pangalamat | Mga invitation | Mga Software |
|---|---|---|
| Wala na ang ref | 10% | — |
| sa mga ref | 5% | 5% |
| Sa mga ref, walang referrer | — | 5% |
Ang platform ay nag-aalis ang bonus sa walang mag-suma ng mga ganito ng mga gumagamit. Ang software owner at ang referrer ay maaaring maging ang isa na tao. Ang gumagamit ay hindi maaaring gumagamit ng kanilang mga code.
Ang mga termino ay fixed kapag isang session ay nagbibigay; hindi na mag-aalis ang SMS at retry. Pag-aalis ang ref sa isang bagong re-set. Sa pag-aalis ng tarife, ang isang pag-aalis ng isang mga tao ng USD 0.003 ay nagbibigay ng USD 0.00015 bawat sa software na may mga referrer. Ang total na bonus ay USD 0.00030.
Mga Pangalamat ng API
11 XVBC-style mga meto at ang iyong SMScash balance.
GETgetNumberDapat ang isang numero+
Ang pag-aalis at referral recipients ay fixed sa allocation; ang pag-aalis ay pinapagdag kapag isang SMS na may isang code ay nakuha.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
service* | string | Mga magagamit na code ng serbisyo. Ang tugon ay limitado sa saklaw ng API key. |
country* | integer | I-take ng ID mula sa getCountries. |
operator | string | I-take ng ID mula sa operators/getOperators (API). operator=1 · any/0 |
session_duration | integer | Ang session ay mag-aalis 20 minuto. Pass 20 o mag-aalis ang parameter. |
with_operator | integer | Ang 1 ay nagdaragdag ng ID ng operator sa sagot; ang 0 o hindi paglalagay ay nagbabalik ng tatlong bahagi. |
ref | string | Public code ng software owner: 5% para sa kanya at 5% para sa invitator. walang ref - 10% para sa invitator. |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=getNumber.
Mga Pahayag ng Example
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'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) }
req.Header.Set("Idempotency-Key", "request-unique-001")
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", {
headers: {"Idempotency-Key": "request-unique-001"}
});
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",
headers={"Idempotency-Key": "request-unique-001"},
timeout=15,
)
print(response.status_code, response.text)ang mga respons
ACCESS_NUMBER:42:380670000000:1EMPTY_POOL- Awtomatikong pili: pinakamaraming code sa nakaraang oras, pagkatapos sa 24 oras. Walang numero: susunod na operator.
- Pass Idempotency-Key: ang parehong request na may parehong key ay lumabas sa pag-aalis ng session. Pag-aalis ang mga parameter ay nag-aalis ng IDEMPOTENCY_CONFLICT.
- Ang isang numero na bansa na hindi isang pool ay nagbibigay ng EMPTY_POOL; ang malapit na bansa format ay BAD_COUNTRY.
- Ang key ng isang pag-usap ng session ay gumagamit: ang replay ng mga alokasyon na may key ay lumabas sa SESSION_CLOSED at hindi nag-emit na isang bagong numero.
- Ang resulta ng mga alokasyon ay hindi mapagkukunan. Automatic retry ay hindi na-aktif sa pag-aktifya ng isang segundo numero.
GETgetNumbersStatusTapos na ang availability+
Mga numero ng telepono sa pamamagitan ng service at bansa.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
country* | integer | I-take ng ID mula sa getCountries. |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=getNumbersStatus.
Mga Pahayag ng Example
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())ang mga respons
{
"go_0": 0
}- Ang _0 suffix ay isang choice na walang isang anumang operator.
- Availability ay nakikipag-ugnay sa buong pool ng supplier. ang selected channel ay nag-control sa panahon ng isang numero ay nag-atake.
GETgetStatusDapat ang bagong code+
Easy request for session status and last SMS code. Ang mga zero na ito ay mag-save.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
id* | integer | Ang ID ng iyong session, na nakuha kapag ang numero ay nakuha. |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=getStatus.
Mga Pahayag ng Example
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)ang mga respons
STATUS_WAIT_CODESTATUS_OK:001234STATUS_CANCELNO_ACTIVATION- Poll every 20 seconds. I-read a message again ay hindi makakuha ng isang bagong pag-aalis.
- Pagkatapos ng retry ang old code ay hindi mapapunta: getStatus ay mag-aalok para sa next SMS.
- Sa isang numero na walang SMS ang mga ito ay mag-aalis, getStatus at getSms ang return STATUS_CANCEL; getSmsFull Ibalik ang mga sulong status, isang vacuum phone at isang vacuum sms ang list. REST /activations/{id} at /sms ang return 404 NO_ACTIVATION.
GETsetStatusMga session ng management+
Ipinagdag, i-cancel or re-emite ang mga SMS. ang session na mag-semin ay mag-semin.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
id* | integer | Ang ID ng iyong session, na nakuha kapag ang numero ay nakuha. |
status* | integer | 3 — mag-aalok ng next code sa hindi mag-aalok ng session; 6 — mag-aalok pagkatapos ng SMS; 8 — mag-aalok ngayong. |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=setStatus.
Mga Pahayag ng Example
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'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) }
req.Header.Set("Idempotency-Key", "request-unique-001")
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", {
headers: {"Idempotency-Key": "request-unique-001"}
});
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",
headers={"Idempotency-Key": "request-unique-001"},
timeout=15,
)
print(response.status_code, response.text)ang mga respons
ACCESS_RETRY_GETACCESS_ACTIVATIONACCESS_CANCEL- Retry ay mag-aalok ng next code sa loob ng 20 minuto. ang pag-aalok at ang mga oras ng pag-aalok ay hindi mabuti.
- Para sa status=3 use Idempotency-Key: pag-aari ng request ay hindi na-reset ang bagong code na nakuha. ang istorya ng SMS ay maaaring magagamit.
- Ang pag-anulungan ay hindi mag-uusap ang mga ganitong nag-aalis.
- Ang mga numero na may isang SMS code ay mag-aaral sa istorya. Ang mga numero na may mga kaligtasan at mga kaligtasan na walang code ay mag-aaral.
GETgetRepeatNumberIkaw ay nag-iisip sa mga numero+
Ipinakakuha ng isang bagong session na may isang anumang numero mula sa iyong istoryo. maaari mong mag-pilak ng isang iba't ibang mga serbisyo na mayroon sa isang bansa.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
number* | string | Ang iyong mga numero. Ang iba na mga numero at isang optional na mga + ay mag-aalok. |
service* | string | Mga magagamit na code ng serbisyo. Ang tugon ay limitado sa saklaw ng API key. |
session_duration | integer | Ang session ay mag-aalis 20 minuto. Pass 20 o mag-aalis ang parameter. |
with_operator | integer | Ang 1 ay nagdaragdag ng ID ng operator sa sagot; ang 0 o hindi paglalagay ay nagbabalik ng tatlong bahagi. |
ref | string | Public code ng software owner: 5% para sa kanya at 5% para sa invitator. walang ref - 10% para sa invitator. |
operator | string | I-take ng ID mula sa operators/getOperators (API). operator=1 · any/0 |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=getRepeatNumber.
Mga Pahayag ng Example
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'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) }
req.Header.Set("Idempotency-Key", "request-unique-001")
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", {
headers: {"Idempotency-Key": "request-unique-001"}
});
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",
headers={"Idempotency-Key": "request-unique-001"},
timeout=15,
)
print(response.status_code, response.text)ang mga respons
ACCESS_NUMBER:43:380670000000NUMBER_IN_USE- First, end or cancel your current session. Kung ang numero ay busy, ang re-exuance ay hindi mag-aalis.
- Ang bagong session ay nag-aalok ng isang bagong ID at ang current tariff. ang Old SMS ay hindi kopya sa it. ref ay ibinipad lagi.
- SMScash ay maaaring mag-repeating lamang ang mga numero mula sa historiya ng account. ang bansa ay inilabas sa pamamagitan ng numero.
- Ang key ng isang pag-usap ng session ay gumagamit: ang replay ng mga alokasyon na may key ay lumabas sa SESSION_CLOSED at hindi nag-emit na isang bagong numero.
GETgetSmsFullDapat ng SMS sa pamamagitan ng JSON+
Structured history ng lahat ng mga mensahe na may ID, sender, code, text and country, service and supplier data.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
id* | integer | Ang ID ng iyong session, na nakuha kapag ang numero ay nakuha. |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=getSmsFull.
Mga Pahayag ng Example
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())ang mga respons
{
"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"
}- Ang pag-ibig format para sa integration. Mag-ingat SMS[].id upang mag-process ang iba ng mga mensahe.
- Numeric status SMScash: 1 - active, 6 - completed, 8 - canceled o extended. status_name ay nag-iisip sa pag-aalis, na-received, na-finished, na-anul, na-extended.
- Ang mga kodong nag-aalok ay mayroon pagkatapos ng isang session na mag-aalok. Para sa mga malaking volume, gumagamit ng REST /activations/{id}/sms sa after_id.
- Sa isang numero na walang SMS ang mga ito ay mag-aalis, getStatus at getSms ang return STATUS_CANCEL; getSmsFull Ibalik ang mga sulong status, isang vacuum phone at isang vacuum sms ang list. REST /activations/{id} at /sms ang return 404 NO_ACTIVATION.
GETgetSmsDapat ng SMS bilang isang tekst string+
Ibalik ang buong SMS history sa string format para sa mga kliyente.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
id* | integer | Ang ID ng iyong session, na nakuha kapag ang numero ay nakuha. |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=getSms.
Mga Pahayag ng Example
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)ang mga respons
STATUS_OK:2026-10-09T12:00:00Z|001234|Код подтверждения: 001234STATUS_WAIT_CODESTATUS_CANCEL- Ang format ng mga mensahe: time, code, code, text. Ang mga mensahe ay nagsisimula sa pamamagitan ng isang column.
- Ang SMS na ito ay maaaring mag-aalis ng mga colons at vertical bars. Para sa reliable parsing, gumagamit ng getSmsFull.
GETgetServicesMga serbisyo+
Mga magagamit na code ng serbisyo. Ang tugon ay limitado sa saklaw ng API key.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
country | integer | I-take ng ID mula sa getCountries. |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=getServices.
Mga Pahayag ng Example
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())ang mga respons
{
"go": {
"name": "Google",
"code": "go"
}
}- Ang mga serbisyo na direktori ay ibinigay sa buong supplier. Ang numero na may-disa ay nag-control separat.
GETgetCountriesMga bansa+
Mga ID, pangalan at mga kod ng mga call para sa mga bansa sa selected channel.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=getCountries.
Mga Pahayag ng Example
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())ang mga respons
{
"86": {
"id": 86,
"name": "Italy",
"phone_code": "39"
}
}GETgetOperatorsMga Operator+
Mga available na operator: API ID, pangalan, at panahon ng pagpigil ng gantimpala.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
country | integer | I-take ng ID mula sa getCountries. |
operator | string | I-take ng ID mula sa operators/getOperators (API). operator=1 · any/0 |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=getOperators.
Mga Pahayag ng Example
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())ang mga respons
{
"1": {
"id": 1,
"provider_id": 1,
"operator": 1,
"name": "Оператор 1",
"earnings_hold_days": 45
}
}- I-take ng ID mula sa operators/getOperators (API).
GETgetRewardsMga pahina sa SMS+
Ang mga rate ay depende sa bansa. Ang lahat ng mga sumas ng table ay per paid SMS.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
country | integer | I-take ng ID mula sa getCountries. |
service | string | Mga magagamit na code ng serbisyo. Ang tugon ay limitado sa saklaw ng API key. |
operator | string | I-take ng ID mula sa operators/getOperators (API). operator=1 · any/0 |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=getRewards.
Mga Pahayag ng Example
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())ang mga respons
{
"59": {
"vi": {
"1": "0.01000000",
"3": "0.00500000"
}
}
}{}- Ang mga impormasyon ng tarifa ng USD ay nagbalik sa mga eksaktong decimal string na may 8 decimal mga lugar:
- Mga aktibong provider na magagamit ng iyong key.
- country ID → service code → operator ID → reward (USD)
GETgetBalanceBalanse ng gumagamit+
Addition SMScash: ang mga saldo ay mayroon na mag-aalis sa mga accruals, referral bonus at pag-aalis na mga pagbabayad.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=getBalance.
Mga Pahayag ng Example
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)ang mga respons
ACCESS_BALANCE:0.00- getBalance ay nag-balik ang mga available USD balance sa hanggang sa 8 decimal mga lugar.
- Maaari lamang i-withdraw ang pondong natapos na ang hold.
GETgetHoldBalanceNaka-hold+
Matapos matanggap ang SMS, naka-hold ang kita sa panahong itinakda ng provider. Sa itinakdang petsa, awtomatikong magagamit ang halaga para sa withdrawal.
Mga Parametro
| Mga Parametro | Mga Tip | Mga Description |
|---|---|---|
api_key* | string | Personal na API key ng gumagamit. |
* Mga parameter na kailangan. sa lahat ng mga pag-aaral ay mag-aalok ng action=getHoldBalance.
Mga Pahayag ng Example
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)ang mga respons
ACCESS_HOLD_BALANCE:34.50000001- SMScash · getHoldBalance · USD · 8
- Maaari lamang i-withdraw ang pondong natapos na ang hold.
Mga tagapagdag ng mga tagapagdag at mga tagapagdag ng mga tagapagdag
Sa handler_api.php ang mga resulta ng negosyo ay nag-iisa sa HTTP 200. I-click ang body text. Mga direktoriya at getSmsFull ay mag-balik JSON kung may suksess; ang mga error ay always text.
| ang code | HTTP | Ang dahilan at ang next step |
|---|---|---|
TARIFF_NOT_CONFIGURED | 200 | Hindi na rin ang mga rateAng numero ng mga alokasyon ay nagsisimula kapag ang SMS rewards ay makakuha ng. |
COUNTRY_BLOCKED | 200 | Ang numero ng mga alokasyon para sa bansa na ito ay bloke.Ikaw ay magsisimula ng isang bansa. |
BAD_SERVICE | 200 | Ang numero ng mga alokasyon para sa serbisyo na ito ay bloke.Magandang isang iba pang service. |
PROVIDER_NOT_READY | 200 | Ang mga numero ay hindi temporarily na dapat naAng mga katotohong API ay mag-update. |
BAD_KEY | 400 | Hindi api_key o ang mga inilagay format.Tapos na ang key sa request. |
INVALID_API_KEY | 401 | Ang key ay hindi malaman, nag-anugot o ang account ay hindi na-aktif.I-create a valid API key. |
BAD_COUNTRY | 400 | Ang bansa ay hindi na magkaroon ng isang positibong numero.I-take ng ID mula sa getCountries. |
BAD_SESSION_DURATION | 400 | Ang mga numero ng telepono ay nagbibigay ng isang pangunahing 20 minuto.Ang pag-ibig ng session_duration ay mag-ibig. |
BAD_REQUEST | 400 | Ang mga parameter ay hindi Idempotency-Key.Sila ayin ang iyong request. |
BAD_SERVICE / BAD_OPERATOR / INVALID_PROVIDER | 200 | Ang mga item ng mga hindi na rin o disabled directory.Ang mga katotohong API ay mag-update. |
BAD_NUMBER | 200 | Ang mga numero ay hindi na.Ang numero ay sa mga digits. |
BAD_ACTION / BAD_STATUS | 200 | Ang mga pangunahing mga pangunahing, ID o operasyon.Tingnan ang mga setting. |
EMPTY_POOL | 200 | Hindi na rin na may mga numero ng telepono na mayroon na ngayon.Pagkatapos ng 10-30 sekonda o mag-aalis ang mga filter. |
NUMBER_IN_USE | 200 | Ang isang anumang numero ay nagtatapos ng isang active session.I-fin ang session o mag-pilong isang numero. |
NO_ACTIVATION | 200 | Ang session o numero ng pag-aaral ay hindi na sa iyong account.Check ang ID at key. |
SESSION_CLOSED / SMS_REQUIRED | 200 | Ang transisyon ng estado ngayon ay hindi na dapat na.Tingnan ang kondisyon at pag-aalok ng SMS. |
SCOPE_BLOCKED | 200 | Ang service, bansa, o seller ay hindi mag-autorized para sa key.Updates ang API key ang pangangailangan. |
IDEMPOTENCY_CONFLICT | 200 | Ang mga ito ay sumusunod sa mga parameters.Para sa isang bagong operasyon, makakuha ng isang bagong Idempotency-Key. |
BAD_REF / SELF_REF | 400 | Ang software code ay hindi malaman, disabled, o ay may mga tao sa mga tao.I-click ang code ng software owner. |
INTERNAL_ERROR | 500 | Ang mga error ng server o vendor.Ipinagkukunan ng isang pag-aalis at ang mga bagay Idempotency-Key. |
ALLOCATION_PENDING | 200 | Ang mga numero ay nag-aalis. retry sa mga ito Idempotency-Key.Ang mga numero ay nag-aalis. retry sa mga ito Idempotency-Key. |
ALLOCATION_UNCERTAIN | 200 | Ang resulta ng mga alokasyon ay hindi mapagkukunan. Automatic retry ay hindi na-aktif sa pag-aktifya ng isang segundo numero.Ang resulta ng mga alokasyon ay hindi mapagkukunan. Automatic retry ay hindi na-aktif sa pag-aktifya ng isang segundo numero. |
Ang mga bagay ay nagbibigay ng isang item {"error":{"code":"…","message":"…"}} at regular na mga status ng HTTP 400/401/403/404/409/503.
{
"error": {
"code": "BAD_REQUEST",
"message": "Tingnan ang mga request fields.",
"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.Mga Mga Pag-aaral sa Pag-aaral ng Integra
Ang mga impormasyon ng tarifa ng USD ay nagbalik sa mga eksaktong decimal string na may 8 decimal mga lugar: 0.00300000 USD.
Ang balanse na mataas ay USD. Ang mga mapagkukunan at mga mapagkukunan ay maaaring mag-aalok sa OpenAPI.
/api/v1/catalogMga serbisyo at bansa/api/v1/tariffsSMS pag-aari ng mga bansa/api/v1/offersMga rate at nag-awan/api/v1/servicesMga Direktor/api/v1/countriesMga Direktor/api/v1/operatorsMga Direktor/api/v1/availability?country=1Mga numero ng Availability/api/v1/activationsMga session/api/v1/activations/batch?ids=42,43Suriin ang maraming numero/api/v1/activationsLast 200 session: scope=history, mag-aalok o lahat ng mga bagay/api/v1/activations/{id}Mga Sesiya at Mga Pahayag/api/v1/activations/{id}/sms?after_id=0&limit=100Mga SMS sa Cursor/api/v1/activations/{id}/retryMga Tulong sa SMS/api/v1/activations/{id}/finishMga Kompleto/api/v1/activations/{id}/cancelPaglalakad/api/v1/activations/repeatMga numero ng reissue/api/v1/keysAPI Mga Key/api/v1/keysIkaw ay isang key/api/v1/keys/{id}Mga pangalan o politika ng pagbabago/api/v1/keys/{id}Mga Key sa Pag-aalis/api/v1/referralsReferral code at ang mga ganito/api/v1/summaryAng balanse at sumusunod/api/v1/balanceNaka-hold/api/v1/ledgerMga LADGER/api/v1/withdrawalsPaglalakay ng Pag-aayos/api/v1/withdrawalsIpinagdag ng isang request/api/v1/statisticsAng mga statistikas/api/v1/earnings/holdsHold ng kitaAng mga SMS lamang ay nakuha
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": "ang code: 001234",
"sender": "Service",
"received_at": "2026-10-09T12:00:00Z"
}
],
"next_cursor": 101,
"has_more": false
}Salamat next_cursor at mag-aalis sa mga ito after_idAko ang has_more=true, ang next page ay maaaring mag-read sa ngayon. limit: 1–200Mga session at SMS Ang mga ito ay mayroon lamang sa mga owner.