Πληροφορίες API
Αριθμοί, μηνύματα και κέρδη, απευθείας από την εφαρμογή σας.
Ξεκινήστε με ένα αίτημα
Δημιουργήστε ένα κλειδί API στο δίσκο σας, λάβετε έναν αριθμό και ελέγξτε για μηνύματα κάθε 20 δευτερόλεπτα.Η πληρωμή πιστοποιείται όταν έρχεται ένα SMS με κώδικα.
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}'Εναλλακτική συμβατή διεύθυνση διεπαφής: /handler_api.php. Οι υπάρχουσες ενσωμάτωσεις REST συνεχίζουν να λειτουργούν.
Δημιουργία αιτημάτων
Idempotency-Key: UUID · POST · 8–128
Αυτόματη επιλογή: οι περισσότεροι κωδικοί την τελευταία ώρα, μετά σε 24 ώρες. Χωρίς αριθμούς: επόμενος πάροχος.
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.Το κλειδί δεν αποθηκεύεται. Αυτός ο έλεγχος δεν εκχωρεί αριθμούς.
ΠΡΟΣ ΤΗΝ ΝΕΑ ΕΝΕΡΓΑΣΙΑ
Υπηρεσίες και χώρες
Επιλέξτε μια υπηρεσία και χώρα.Η πληρωμή μέσω 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)
Πάρτε έναν αριθμό
POST /api/v1/activations
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Idempotency-Key: request-unique-001
{
"service": "go",
"country": 86
}Αυτόματη επιλογή: οι περισσότεροι κωδικοί την τελευταία ώρα, μετά σε 24 ώρες. Χωρίς αριθμούς: επόμενος πάροχος.
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Ο αριθμός είναι έγκυρος για 20 λεπτά. το SMS ελέγχεται κάθε 20 δευτερόλεπτα. μπορείτε να ακυρώσετε αμέσως.
Έλεγχος πολλών αριθμών
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 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
Μπορείτε να αναλάβετε μόνο χρήματα των οποίων η περίοδος δέσμευσης έχει λήξει.
Έτοιμοι πελάτες API
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.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' \
-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.Ο αριθμός είναι έγκυρος για 20 λεπτά. το SMS ελέγχεται κάθε 20 δευτερόλεπτα. μπορείτε να ακυρώσετε αμέσως.
Πιστοποιητικό και αποχώρηση
REST: ΚΕΦΑΛΑΙΟ Authorization: Bearer YOUR_API_KEY. Συμβατότητα με το διαδίκτυο: Παραμέτρους api_key και actionΧρησιμοποιήστε το HTTPS.
Για να διαχειριστείτε τα κλειδιά API, εισάγετε τον λογαριασμό σας.
Η συχνότητα αιτήσεων API και ο αριθμός των τηλεφώνων είναι απεριόριστος. δεν υπάρχουν ημερήσιες ή ωριαίες ποσοστώσεις.
Ο αριθμός είναι έγκυρος για 20 λεπτά. το SMS ελέγχεται κάθε 20 δευτερόλεπτα. μπορείτε να ακυρώσετε αμέσως.
Στο υπόλοιπο, ένα μοναδικό Idempotency-Key απαιτείται για την κατανομή αριθμών, επαναλαμβανόμενη κατανομή, αίτηση αποχώρησης και πληρωμής. είναι προαιρετική, αλλά συνιστάται στο handler_api.php. επαναχρησιμοποιήστε το κλειδί κατά την αποχώρηση αίτησης δικτύου. χρησιμοποιήστε ένα νέο κλειδί για μια νέα λειτουργία.
API Κλειδιά Σκέπ
Μπορείτε να περιορίσετε ένα κλειδί σε συγκεκριμένες υπηρεσίες, χώρες και πάροχους. κενές λίστες επιτρέπουν όλες τις διαθέσιμες επιλογές.
{
"label": "Το λογισμικό μου",
"policy": {
"services": [
"go"
],
"countries": [
86
],
"providers": [
1
]
}
}PATCH /api/v1/keys/{id} αλλάζει πλήρως το όνομα και την πολιτική.Το μυστικό αποκαλύπτεται μόνο όταν δημιουργείται.
10% συνολικά. 5% + 5% με κωδικό λογισμικού.
Όταν εκδίδετε έναν αριθμό, παρακαλούμε να παρέχετε ref ιδιοκτήτης του λογισμικού.Η αίτηση επιτρέπεται από το κλειδί του εκτελεστή.Ο κώδικας βρίσκεται στην ενότητα "Προπομπές" και στην GET /api/v1/referrals → software_ref.
| Ζητήστε | προσκληση | Λογισμικό |
|---|---|---|
| Χωρίς το REF | 10% | — |
| Με το REF | 5% | 5% |
| Με το REF, χωρίς αναφορά | — | 5% |
Η πλατφόρμα πληρώνει το μπόνους χωρίς να μειώνεται το κέρδος του χρήστη.Ο ιδιοκτήτης λογισμικού και ο αναφερόμενος μπορεί να είναι το ίδιο πρόσωπο.Ο χρήστης δεν μπορεί να χρησιμοποιήσει τον δικό του κωδικό.
Οι όροι καθορίζονται όταν δημιουργείται μια συνεδρίαση. διαβάζοντας SMS και αποχώρηση δεν τις αλλάζουν. Πάρτε 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). operator=1 · any/0 |
session_duration | integer | Η συνεδρίαση διαρκεί 20 λεπτά. περάστε 20 ή ξεχάστε αυτή την παράμετρο. |
with_operator | integer | Το 1 προσθέτει το ID του παρόχου στην απάντηση· το 0 ή η παράλειψη επιστρέφει τρία μέρη. |
ref | string | Δημόσιο κώδικα του ιδιοκτήτη λογισμικού: 5% Για αυτόν και 5% Για τον προσκαλέμενο, χωρίς ref - 10% Για τον προσκαλείο. |
* Απαιτείται παράμετρος. σε όλες τις αιτήσεις επίσης περάσει δράση=getNumber.
Παραδείγματα αιτήσεων
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)Απάντηση
ACCESS_NUMBER:42:380670000000:1EMPTY_POOL- Αυτόματη επιλογή: οι περισσότεροι κωδικοί την τελευταία ώρα, μετά σε 24 ώρες. Χωρίς αριθμούς: επόμενος πάροχος.
- Περίμενο Idempotency-Key: το ίδιο αίτημα με την ίδια κλειδί επιστρέφει την προηγούμενη συνεδρίαση. IDEMPOTENCY_CONFLICT.
- Μια αριθμητική χώρα χωρίς μια πισίνα δίνει EMPTY_POOL· η λάθος μορφή χώρας είναι BAD_COUNTRY.
- Το κλειδί μιας διαγραφής συνεδρίας παραμένει χρησιμοποιημένο: η αναπαραγωγή της κατανομής με το κλειδί αυτό επιστρέφει το SESSION_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 suffix σημαίνει μια επιλογή χωρίς συγκεκριμένο φορέα εκμετάλλευσης.
- Η διαθεσιμότητα αναφέρεται στην συνολική πισίνα του προμηθευτή.Ο επιλεγμένος καναλός ελέγχεται όταν κατατεθεί ένας αριθμός.
GETgetStatusΚάντε τον τελευταίο κώδικα+
Απλή αίτηση για την κατάσταση της συνεδρίας και τον τελευταίο κωδικό SMS. Τα κύρια μηδέν στον κωδικό διατηρούνται.
Παραμέτρους
| Παραμέτρων | Τύπος | Περιγραφή |
|---|---|---|
api_key* | string | Το προσωπικό κλειδί API του χρήστη. |
id* | integer | Το ID της συνεδρίας σας, που λαμβάνεται όταν εκδόθηκε ο αριθμός. |
* Απαιτείται παράμετρος. σε όλες τις αιτήσεις επίσης περάσει δράση=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 | Το ID της συνεδρίας σας, που λαμβάνεται όταν εκδόθηκε ο αριθμός. |
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' \
-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)Απάντηση
ACCESS_RETRY_GETACCESS_ACTIVATIONACCESS_CANCEL- Η επιστροφή περιμένει τον επόμενο κώδικα εντός των αρχικών 20 λεπτών. η έκδοση και οι ώρες λήξης δεν αλλάζουν.
- Για το status=3 Χρησιμοποιήστε Idempotency-Key: επαναλαμβάνοντας την αίτηση δεν θα επαναλάβει τον νέο κωδικό που έχει ήδη λάβει. SMS παραμένει διαθέσιμη.
- Η ακύρωση δεν αφαιρεί τα ήδη κερδισμένα βραβεία.
- Μόνο αριθμοί με κωδικό 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% Για τον προσκαλείο. |
operator | string | Πάρε ID από operators/getOperators (API). operator=1 · any/0 |
* Απαιτείται παράμετρος. σε όλες τις αιτήσεις επίσης περάσει δράση=getRepeatNumber.
Παραδείγματα αιτήσεων
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)Απάντηση
ACCESS_NUMBER:43:380670000000NUMBER_IN_USE- Πρώτα, κλείστε ή ακυρώστε την τρέχουσα συνεδρία σας.Εάν ο αριθμός είναι απασχολημένος, η επανεξαγωγή δεν πραγματοποιείται.
- Η νέα συνεδρία λαμβάνει ένα νέο ID και το τρέχον δασμό. παλιό SMS δεν αντιγράφεται σε αυτό. ref ρυθμίζεται ξανά.
- Το SMScash επιτρέπει την επανάληψη μόνο αριθμών από την ιστορία αυτού του λογαριασμού.
- Το κλειδί μιας διαγραφής συνεδρίας παραμένει χρησιμοποιημένο: η αναπαραγωγή της κατανομής με το κλειδί αυτό επιστρέφει το SESSION_CLOSED και δεν εκδίδει άλλο αριθμό.
GETgetSmsFullΓράψτε SMS ως JSON+
Σχεδιασμένο ιστορικό όλων των μηνυμάτων με τα στοιχεία ταυτότητας, αποστολέα, κώδικα, κείμενο και χώρα, υπηρεσίες και δεδομένα προμηθευτή.
Παραμέτρους
| Παραμέτρων | Τύπος | Περιγραφή |
|---|---|---|
api_key* | string | Το προσωπικό κλειδί API του χρήστη. |
id* | integer | Το ID της συνεδρίας σας, που λαμβάνεται όταν εκδόθηκε ο αριθμός. |
* Απαιτείται παράμετρος. σε όλες τις αιτήσεις επίσης περάσει δράση=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": "Оператор 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.
GETgetSmsΑποκτήστε SMS ως γραμματοσειρά κειμένου+
Επιστρέφει ολόκληρη την ιστορία SMS σε μορφή γραμμής για τους υπάρχοντες πελάτες.
Παραμέτρους
| Παραμέτρων | Τύπος | Περιγραφή |
|---|---|---|
api_key* | string | Το προσωπικό κλειδί API του χρήστη. |
id* | integer | Το ID της συνεδρίας σας, που λαμβάνεται όταν εκδόθηκε ο αριθμός. |
* Απαιτείται παράμετρος. σε όλες τις αιτήσεις επίσης περάσει δράση=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- Τύπος μηνύματος: χρόνος κώδικα κώδικα κώδικα κώδικα.Πολύς μηνύματα χωρίζονται από έναν στήθος.
- Το ίδιο το SMS κειμένου μπορεί να περιέχει αποστάσεις και κάθετες γραμμές. Για αξιόπιστη διαίρεση, χρησιμοποιήστε getSmsFull.
GETgetServicesΥπηρεσίες+
Διαθέσιμες κωδικοί υπηρεσίας.Η απάντηση περιορίζεται στην περιοχή του κλειδιού API.
Παραμέτρους
| Παραμέτρων | Τύπος | Περιγραφή |
|---|---|---|
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Χώρες+
Ταυτοποίηση, ονόματα και κώδικες κλήσης για τις χώρες στο επιλεγμένο κανάλι.
Παραμέτρους
| Παραμέτρων | Τύπος | Περιγραφή |
|---|---|---|
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ΟΙ ΠΡΟΣΩΠΙΣΤΕΣ+
Διαθέσιμοι πάροχοι: ID API, όνομα και περίοδος δέσμευσης αμοιβής.
Παραμέτρους
| Παραμέτρων | Τύπος | Περιγραφή |
|---|---|---|
api_key* | string | Το προσωπικό κλειδί API του χρήστη. |
country | integer | Πάρε ID από getCountries. |
operator | string | Πάρε ID από operators/getOperators (API). operator=1 · 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": "Оператор 1",
"earnings_hold_days": 45
}
}- Πάρε ID από operators/getOperators (API).
GETgetRewardsΒραβείο για SMS+
Τα ποσοστά εξαρτώνται από τη χώρα. Όλα τα ποσά του τραπέζου είναι ανά πληρωμένο SMS.
Παραμέτρους
| Παραμέτρων | Τύπος | Περιγραφή |
|---|---|---|
api_key* | string | Το προσωπικό κλειδί API του χρήστη. |
country | integer | Πάρε ID από getCountries. |
service | string | Διαθέσιμες κωδικοί υπηρεσίας.Η απάντηση περιορίζεται στην περιοχή του κλειδιού API. |
operator | string | Πάρε ID από operators/getOperators (API). operator=1 · 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)
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.fp επιχειρηματικές αποτελέσεις συνήθως έρχονται με 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. |
BAD_COUNTRY | 400 | Η χώρα λείπει ή όχι ένα θετικό αριθμό.Πάρε ID από getCountries. |
BAD_SESSION_DURATION | 400 | Οι αριθμοί τηλεφώνου εκδίδονται για ακριβώς 20 λεπτά.Δικαίωμα session_duration. |
BAD_REQUEST | 400 | Παράμετρο ή Idempotency-Key.Παρακαλώ διορθώστε την αίτησή σας. |
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 | Ο αριθμός της συνεδρίας ή του προηγούμενου αριθμού δεν ανήκει στον λογαριασμό σας.Ελέγξτε το ID και το κλειδί. |
SESSION_CLOSED / SMS_REQUIRED | 200 | Η μεταβατική διαδικασία δεν είναι διαθέσιμη.Ελέγξτε την κατάσταση και τη διαθεσιμότητα των SMS. |
SCOPE_BLOCKED | 200 | Η υπηρεσία, η χώρα ή ο προμηθευτής δεν είναι εξουσιοδοτημένοι για το κλειδί.Αναβάθμιση του πεδίου εφαρμογής του API. |
IDEMPOTENCY_CONFLICT | 200 | Το κλειδί ερωτήματος αυτό συνδέεται ήδη με άλλες παραμέτρους.Για μια νέα λειτουργία, δημιουργεί άλλο Idempotency-Key. |
BAD_REF / SELF_REF | 400 | Ο κωδικός λογισμικού είναι άγνωστος, αναπηρής ή ανήκει στον ίδιο τον χρήστη.Ελέγξτε τον κωδικό του ιδιοκτήτη του λογισμικού. |
INTERNAL_ERROR | 500 | Εξαιτίας του παρεμβολή του server ή του προμηθευτή.Αναπαραγωγή με περίοδο και το ίδιο Idempotency-Key. |
ALLOCATION_PENDING | 200 | Η κατανομή αριθμού είναι ήδη εμφανίζεται. Αναπληρώστε με το ίδιο Idempotency-Key.Η κατανομή αριθμού είναι ήδη εμφανίζεται. Αναπληρώστε με το ίδιο Idempotency-Key. |
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/activationsΤελευταία 200 συνεδρίες: scope = ιστορία, περιμένοντας ή όλα/api/v1/activations/{id}Ημέρα και μηνύματα/api/v1/activations/{id}/sms?after_id=0&limit=100SMS με νέο κουζέρτο/api/v1/activations/{id}/retryΠεριμένω το SMS/api/v1/activations/{id}/finishΣυμπλήρωση/api/v1/activations/{id}/cancelΑκύρωση/api/v1/activations/repeatΑριθμός επιστροφής/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Η επόμενη σελίδα μπορεί να διαβάσει αμέσως. limit: 1–200Οι συνεδρίες και SMS Διατίθενται μόνο στον ιδιοκτήτη.