Protokol API untuk bekerja dengan SMS-Activate
API adalah protokol antara perangkat lunak Anda dan server kami
API diperlukan untuk otomatisasi proses penerimaan sms, otp, dan pva di sisi Anda
API kami sepenuhnya kompatibel dengan situs pesaing
Semua permintaan harus dikirim ke https://api.sms-activate.ai/stubs/handler_api.php
Permintaan POST atau GET.
Semua permintaan harus menyertakan kunci API dalam bentuk parameter GET api_key
Unduh implementasi protokol dalam php Unduh implementasi protokol siap pakai dalam PythonAPI Aktivasi
Parameter:
$api_key - Kunci API
$country * - nomor negara lihat tabel
$operator * nomor operator seluler, Anda dapat menentukan beberapa nomor yang dipisahkan dengan koma (hanya tersedia untuk:
** tersedia untuk $country = 0, $country = 1, $country = 2
JAWABAN:
Respons layanan akan dalam format json, contoh:
{"vk_0":76,"ok_0":139,"wa_0":90,"vi_0":223,"tg_0":158,"wb_0":106,"go_0":182,"av_0":244,"av_1":211,"fb_0":107}
Di mana bagian sebelum tanda hubung adalah nama layanan, setelah penanda apakah perlu menyertakan pengalihan. 0 - tidak. 1 - ya.
Parameter:
$api_key - Kunci API
$service * - Layanan lihat tabel
* parameter opsional. Jika tidak ditentukan, negara teratas untuk semua layanan akan ditampilkan secara default.
$freePrice * - parameter opsional. Jika disediakan true, jumlah dan harga akan diberikan sesuai Harga Gratis
JAWABAN:
Respons layanan akan dalam format json, contoh:
{
0: {
"country: 0,
"count": 43575,
"price": 15.00,
"retail_price": 30.00
}, ...
}
$freePrice = true:
{
0: {
"country: 0,
"count": 43575,
"price": 15.00,
"retail_price": 30.00,
"freePriceMap": {
"15.00": 43242,
"18.00": 333
}
}, ...
}
Permintaan saldo dengan akun cashback:
* mengembalikan saldo dengan mempertimbangkan cashback yang terkumpul, jika kotak centang di pengaturan akun cashback 'Gunakan cashback untuk aktivasi' dicentang
Parameter:
$api_key - Kunci API
JAWABAN:
ACCESS_BALANCE: 'saldo akun'
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
ERROR_SQL - kesalahan sql-server
* mengembalikan semua operator yang tersedia untuk negara yang ditransfer, jika negara tidak ditransfer - akan mengembalikan semua operator yang tersedia untuk setiap negara
Parameter:
$api_key - Kunci API
$country - kode negara
JAWABAN:
Respons layanan akan dalam format json:
{"status":"success", "countryOperators": {
"Country1Code": ["operator1Name","operator2Name","operator3Name", ...],
"Country2Code": ["operator1Name","operator2Name","operator3Name", ...],
...
}}
Contoh:
{"status":"success", "countryOperators": {
"0": ["beeline","megafon","mts", ...],
"1": ["life","mts","kyivstar","utel" ...],
...
}}
* di dalam 'countryOperators' - kuncinya akan menjadi kode negara
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
ERROR_SQL - kesalahan sql-server
OPERATORS_NOT_FOUND - tidak ada catatan yang ditemukan (misalnya, negara yang ditransfer tidak ada)
Parameter:
$api_key - Kunci API
JAWABAN:
Respons layanan akan dalam format json:
{"status":"success", "activeActivations": [
{
"activationId" : "635468021",
"serviceCode" : "vk",
"phoneNumber" : "79********1",
"activationCost" : "12.50",
"activationStatus" : "4",
"smsCode" : ["CODE"],
"smsText" : "[Your CODE registration code]",
"activationTime" : "2022-06-01 16:59:16",
"discount" : "0.00",
"repeated" : "0",
"countryCode" : "0",
"countryName" : "Russia",
"canGetAnotherSms" : "1",
}]
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
ERROR_SQL - kesalahan sql-server
NO_ACTIVATIONS - entri tidak ditemukan (tidak ada aktivasi aktif)
Parameter:
$api_key - Kunci API
$service - layanan untuk pemesanan lihat tabel
$forward * - apakah perlu meminta nomor dengan penerusan
* parameter opsional, menerima 0 (jangan jalankan, diatur secara default), 1 (jalankan)
$maxPrice * - harga maksimum di mana Anda siap membeli nomor pada Harga Gratis
* parameter opsional, jika tidak ditentukan, pembelian akan terjadi pada harga reguler
$phoneException * - mengecualikan awalan untuk nomor Rusia. Masukkan dengan koma. Format catatan: kode negara dan 3 hingga 6 digit dari mask (misalnya 7918, 7900111). Nilai default adalah nilai yang ditentukan di akun.
$operator* adalah operator seluler dari nomor tersebut, Anda dapat menentukan beberapa di antaranya dengan koma (hanya tersedia untuk **)
$activationType - jenis aktivasi: 0 - dengan SMS (default), 1 - dengan nomor, 2 - dengan suara
$language - bahasa parsing (diperlukan untuk aktivasi dengan suara) lihat tabel
$userId * - ID pengguna yang akan diblokir karena statistik aktivasi yang buruk, namun akun reseller itu sendiri tidak terpengaruh.
* kolom opsional
** tersedia untuk $country = 0, $country = 1, $country = 2
$ref - kirimkan ID referral.
$country - nomor negara lihat tabel
$useCashBack* - menerima nilai boolean, jika parameter bernilai 'true', pembelian nomor akan dilakukan menggunakan saldo cashback. Setelah saldo cashback habis, semua pembelian berikutnya akan dilakukan menggunakan saldo utama. PENTING untuk diingat bahwa semua pembelian berikutnya akan pertama-tama menggunakan cashback, dan setelah itu saldo utama yang digunakan (bahkan jika Anda mengirimkan parameter 'false' setelahnya).
* parameter opsional, menerima nilai 'true'
Dengan mendapatkan nomor melalui API, Anda menyetujui aturan proyek aturan proyek
KESALAHAN YANG MUNGKIN TERJADI:
WRONG_MAX_PRICE:$min- harga maksimum yang ditentukan lebih rendah dari yang diizinkan
$min - harga minimum yang diizinkan
BAD_ACTION - tindakan tidak valid
BAD_SERVICE - nama layanan tidak valid
BAD_KEY - kunci API tidak valid
ERROR_SQL - kesalahan sql-server
BANNED:'YYYY-m-d H-i-s' - waktu pemblokiran akun
WRONG_EXCEPTION_PHONE - prefiks pengecualian tidak valid
NO_BALANCE_FORWARD - dana tidak cukup untuk membeli pengalihan panggilan
CHANNELS_LIMIT - akun diblokir
NO_NUMBERS - tidak ada nomor tersedia
Jika Anda mencoba mendapatkan nomor dari operator tertentu yang tidak beroperasi di negara yang dipilih atau yang tidak menyediakan layanan yang dipilih, nomor dari operator pertama yang sesuai dengan parameter permintaan akan dikembalikan
metode ini bekerja serupa dengan metode getNumber, menerima parameter yang sama serta tambahan seperti yang dijelaskan di bawah ini, tetapi mengembalikan informasi aktivasi tambahan
Parameter:
$orderId- ID aktivasi dari sistem reseller. Saat melakukan pembelian, data ini dibandingkan dengan ID aktivasi dan reseller di sistem kami. Dengan demikian, kami ingin mencapai idempotensi (pesanan yang sama tidak akan diproses ulang).
JAWABAN:
Jika permintaan berhasil, respons akan dalam format berikut:
{
"activationId": 635468024,
"phoneNumber": "79584******",
"activationCost": "12.50",
"countryCode": "0",
"canGetAnotherSms": "1",
"activationTime": "2022-06-01 17:30:57",
"activationOperator": "mtt"
}
Jika Anda mencoba mendapatkan nomor dari operator tertentu yang tidak beroperasi di negara yang dipilih atau yang tidak menyediakan layanan yang dipilih, nomor dari operator pertama yang sesuai dengan parameter permintaan akan dikembalikan
KESALAHAN YANG MUNGKIN TERJADI:
ORDER_ALREADY_EXISTS- pesanan sudah dibuat
Saat Anda menerima SMS ke nomor tertentu, jika Anda telah mengaktifkan fungsi Webhooks di pengaturan, kami akan mengirimkan informasi tentang SMS tersebut ke alamat yang Anda tentukan menggunakan permintaan POST
JAWABAN:
Format responsnya adalah sebagai berikut:
{
"activationId": 635468024,
"service": "go",
"text": "Your sms text",
"code": "Your sms code",
"country": 0,
"receivedAt": "2022-06-01 17:30:57",
}
Saat mengirim permintaan, kami akan menunggu respons dari skrip Anda dengan status HTTP 200. Jika skrip Anda tidak merespons, kami akan mengirim ulang permintaan dalam waktu 2 jam, namun tidak lebih dari 8 kali.
Anda dapat mengaktifkan fungsi ini di pengaturan profil
Parameter:
$api_key - Kunci API
$service - layanan untuk pemesanan lihat tabel
$forward * - apakah perlu meminta nomor dengan penerusan
* parameter opsional, karakter penerusan dipisahkan dengan koma, jumlah digit penerusan harus sesuai dengan jumlah layanan yang dikirimkan dalam parameter $service. Hanya diperbolehkan mengirimkan 1 layanan dengan pengalihan, misalnya "0,1,0,0" - benar, "0,1,1,0" - salah. Menggunakan nilai 0 (jangan eksekusi, default), 1 (eksekusi)
$operator * - operator seluler dari nomor tersebut, Anda dapat menentukan beberapa nomor yang dipisahkan dengan koma (hanya tersedia untuk **):
$ref - kirimkan ID referral.
$country - nomor negara lihat tabel
Dengan mendapatkan nomor melalui API, Anda menyetujui aturan proyek aturan proyek
JAWABAN:
NO_NUMBERS - tidak ada nomor tersedia
NO_BALANCE - saldo habis
{{'phone':phone,'activation':activation,'service':service},
{'phone':phone,'activation':activation,'service':service}}, di mana (phone - id operasi, activation - Nomor telepon, service - Layanan)
KESALAHAN YANG MUNGKIN TERJADI:
BAD_ACTION - tindakan tidak valid
BAD_SERVICE - nama layanan tidak valid
BAD_KEY - kunci API tidak valid
ERROR_SQL - kesalahan sql-server
BANNED:'YYYY-m-d H-i-s' - waktu pemblokiran akun
Parameter:
$api_key - Kunci API
$id - ID Aktivasi
$forward * - nomor telepon yang ingin Anda teruskan
* diperlukan hanya jika parameter diteruskan dengan getNumber forward=1.
$status - status aktivasi
1 - beri tahu tentang ketersediaan nomor (sms dikirim ke nomor)
3 - minta satu kode lagi (gratis)
6 - selesaikan aktivasi *
8 - laporkan bahwa nomor telah digunakan dan batalkan aktivasi
* jika ada status 'kode diterima' - tandai sebagai berhasil dan selesaikan, jika ada status 'persiapan' - hapus dan tandai sebagai error, jika ada status 'menunggu percobaan ulang' - pindahkan aktivasi ke SMS tertunda
** Tidak mungkin mengubah status aktivasi yang metode verifikasinya dipilih melalui panggilan jika nomor sudah tiba
Logika sederhana kronologi bekerja dengan API:
Mendapatkan nomor menggunakan metode getNumber, kemudian tindakan berikut tersedia:
8 - batalkan aktivasi (jika nomor tidak cocok untuk Anda)
1 - informasikan bahwa SMS telah dikirim (opsional)
Untuk aktivasi dengan status 1:
8 - batalkan aktivasi
Segera setelah menerima kode:
3 - minta satu SMS lagi
6 - konfirmasi kode SMS dan selesaikan aktivasi
Untuk aktivasi dengan status 3:
6 - konfirmasi kode SMS dan selesaikan aktivasi
JAWABAN:
ACCESS_READY - kesiapan nomor dikonfirmasi
ACCESS_RETRY_GET - menunggu SMS baru
ACCESS_ACTIVATION - layanan telah berhasil diaktifkan
ACCESS_CANCEL - aktivasi dibatalkan
KESALAHAN YANG MUNGKIN TERJADI:
EARLY_CANCEL_DENIED - pembatalan nomor tidak diperbolehkan dalam 2 menit pertama
ERROR_SQL - kesalahan sql-server
NO_ACTIVATION - ID aktivasi tidak ditemukan
BAD_SERVICE - nama layanan tidak valid
BAD_STATUS - status tidak valid
BAD_KEY - kunci API tidak valid
BAD_ACTION - tindakan tidak valid
WRONG_ACTIVATION_ID - ID salah atau ID bukan angka.
Parameter:
$api_key - Kunci API
$id - ID Aktivasi
JAWABAN:
STATUS_WAIT_CODE - menunggu SMS
STATUS_WAIT_RETRY: 'masa lalu, kode tidak cocok' - menunggu klarifikasi kode
STATUS_WAIT_RESEND - menunggu pengiriman ulang SMS *
* perangkat lunak harus menekan kirim ulang SMS dan mengubah status menjadi 6
STATUS_CANCEL - aktivasi dibatalkan
STATUS_OK: 'kode aktivasi' - kode diterima
KESALAHAN YANG MUNGKIN TERJADI:
NO_ACTIVATION - ID aktivasi tidak ditemukan
ERROR_SQL - kesalahan sql-server
BAD_KEY - kunci API tidak valid
BAD_ACTION - tindakan tidak valid
Parameter:
$api_key - Kunci API
$id - ID Aktivasi
JAWABAN:
Format responsnya adalah sebagai berikut:
{
"verificationType": 2,
"sms": {
"dateTime": "0000-00-00 00:00:00",
"code": "code",
"text": "sms text",
},
"call": {
"from": "phone",
"text": "voice text",
"dateTime": "0000-00-00 00:00:00",
"url": "voice file url",
"parsingCount": 1,
}
}
STATUS_CANCEL - aktivasi dibatalkan
KESALAHAN YANG MUNGKIN TERJADI:
NO_ACTIVATION - ID aktivasi tidak ditemukan
ERROR_SQL - kesalahan sql-server
BAD_KEY - kunci API tidak valid
BAD_ACTION - tindakan tidak valid
Parameter:
$api_key - Kunci API
$start - timestamp dalam format Unix Timestamp (opsional) - tanggal mulai untuk mempertimbangkan aktivasi
$end - timestamp dalam format Unix Timestamp (opsional) - tanggal akhir untuk mempertimbangkan aktivasi
$offset - offset elemen pertama yang dikembalikan dalam respons. Default adalah 0
$limit - jumlah maksimum catatan yang dikembalikan. Maksimal 100. Default adalah 50.
JAWABAN:
Format responsnya adalah sebagai berikut:
[{
"id": 635468024,
"date": "2022-11-12 15:58:39",
"phone": "79918529716",
"sms": "sms":"["Your sms code"]",
"cost": 100 //Если активация не завершена, то cost = 0,
"status": "4",
}]
KESALAHAN YANG MUNGKIN TERJADI:
ERROR_SQL - kesalahan sql-server
BAD_KEY - kunci API tidak valid
BAD_ACTION - tindakan tidak valid
Parameter:
$api_key - Kunci API
$service - nama layanan
JAWABAN:
Format responsnya adalah sebagai berikut:
[{
"country": 0,
"share": 50 - // (Purchases of the chosen service by country as a percentage of the total quantity of purchases at our service),
"rate": 50 - // (% of successful activations among the total number of activations by the country)
}]
KESALAHAN YANG MUNGKIN TERJADI:
ERROR_SQL - kesalahan sql-server
BAD_KEY - kunci API tidak valid
WRONG_SERVICE - layanan tidak valid
BAD_ACTION - tindakan tidak valid
Parameter:
$api_key - Kunci API
$id - ID Aktivasi
JAWABAN:
Respons layanan akan dalam format json, contoh:
{"status":"2","phone":false}
STATUS YANG MUNGKIN:
2 - aktivasi baru
3 - berhasil selesai
4 - dibatalkan
5 - dikembalikan
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
INVALID_ACTIVATION_ID - ID aktivasi tidak valid
Parameter:
$api_key - Kunci API
$serviceNama pendek layanan (Opsional, secara default semua layanan) lihat tabel
$countryNama kode negara (Opsional, secara default semua negara) lihat tabel
JAWABAN:
JSON - objek dalam format
{"Country":{"Service":{"cost":Cost,"count":Count}}}
Parameter:
$api_key - Kunci API
$serviceNama pendek layanan (Opsional, secara default semua layanan) lihat tabel
JAWABAN:
JSON - objek dalam format
{"Service":{"Country":{"count":Quantity,"price":"Price"}}}
Parameter:
$api_key - Kunci API
JAWABAN:
JSON - objek dalam format {{'Страна':{'id':0,'rus':"Россия","eng:"Russia","chn":"俄罗斯","visible":1,"retry":1,"rent":1,"multiService":1}},
di mana (
id : ID negara;
rus : nama negara dalam bahasa Rusia;
eng : nama negara dalam bahasa Inggris;
chn : nama negara dalam bahasa Tionghoa;
visible : 0 - negara tidak ditampilkan di situs, 1 - ditampilkan;
retry : 0 - SMS ulang TIDAK tersedia, 1 - tersedia;
rent : 0 - negara tidak disewakan, 1 - disewakan;
multiService : 0 - negara TIDAK tersedia untuk layanan multi, 1 - tersedia.)
Parameter:
$api_key- Kunci API
$country *- ID Negara. Jika Anda menyertakan negara, kami akan mengembalikan layanan yang memiliki harga untuk negara yang dipilih
$lang *- bahasa yang digunakan untuk menyediakan `name`. Nilai yang mungkin: 'ru', 'en', 'es', 'cn'. Defaultnya adalah 'en'
* parameter opsional
JAWABAN:
JSON - objek dalam format { "status": "success", "services": [ { "code": "aoo", "name": "Pegasus Airlines" } ] }
Setelah menerima SMS pertama untuk nomor yang dialihkan, Anda dapat membeli layanan terkait lainnya seperti Yula, Yandex, Avito, atau lainnya
Biaya layanan tambahan hanya 5p
Parameter:
$api_key - Kunci API
$service - untuk nama pendek layanan, lihat tabel lihat tabel
$id - ID Aktivasi Induk
JAWABAN:
ADDITIONAL:$id:$phone - aktivasi baru berhasil dibuat. Di mana ID adalah ID aktivasi tambahan, phone adalah nomor telepon
KESALAHAN YANG MUNGKIN TERJADI:
WRONG_ADDITIONAL_SERVICE - Layanan tambahan tidak valid (hanya layanan untuk penerusan yang diizinkan)
WRONG_ACTIVATION_ID - ID aktivasi induk salah
WRONG_SECURITY - terjadi kesalahan saat mencoba mengirimkan ID aktivasi tanpa pengalihan, atau aktivasi yang sudah selesai/tidak aktif
REPEAT_ADDITIONAL_SERVICE - kesalahan terjadi saat mencoba memesan layanan yang sudah dibeli lagi NO_BALANCE - Dana tidak mencukupi
ERROR_SQL- kesalahan database, hubungi layanan pelanggan
Jika Anda telah melakukan aktivasi yang berhasil pada nomor tersebut, maka Anda dapat melakukannya lagi.
Biaya aktivasi tambahan ditentukan berdasarkan negara dan layanan. Biaya spesifik dapat diperoleh dari .
Parameter:
$api_key - Kunci API
$activationId - ID Aktivasi Induk
JAWABAN:
ACCESS_NUMBER:$id:$phone - aktivasi baru berhasil dibuat. Di mana $id adalah ID aktivasi tambahan, $phone adalah nomor telepon
KESALAHAN YANG MUNGKIN TERJADI:
RENEW_ACTIVATION_NOT_AVAILABLE- nomor tidak tersedia untuk aktivasi tambahan
WRONG_ACTIVATION_ID - ID aktivasi induk salah
ERROR_SQL- kesalahan database, hubungi layanan pelanggan
NEW_ACTIVATION_IMPOSSIBLE- tidak mungkin melakukan aktivasi tambahan
NO_BALANCE - tidak ada uang di akun
Anda dapat mengetahui ketersediaan nomor untuk aktivasi tambahan dan mendapatkan biayanya
Parameter:
$api_key - Kunci API
$activationId - ID Aktivasi Induk
JAWABAN:
JSON - objek dalam format {'status': 'success', 'cost':200,"service":"tw","phone":777777777,"country":14},
KESALAHAN YANG MUNGKIN TERJADI:
RENEW_ACTIVATION_NOT_AVAILABLE- nomor tidak tersedia untuk aktivasi tambahan
WRONG_ACTIVATION_ID - ID aktivasi induk salah
SIM_OFFLINE - Kartu SIM offline
JAWABAN:
Format responsnya adalah sebagai berikut:
{
"result": "OK"
}
STATUS_CANCEL - aktivasi dibatalkan
NO_CALL- tidak ada panggilan yang diterima
PARSE_COUNT_EXCEED- batas upaya parsing (maksimum 4)
KESALAHAN YANG MUNGKIN TERJADI:
WRONG_ACTIVATION_ID - ID tidak valid, aktivasi tidak ada
ERROR_SQL - kesalahan sql-server
BAD_KEY - kunci API tidak valid
BAD_ACTION - tindakan tidak valid
Sewa API
Parameter:
$api_key - Kunci API
$time* - durasi sewa (default: 4 jam)
$operator* - operator seluler untuk nomor, Anda dapat menentukan beberapa dengan dipisahkan koma (default: Apa saja)
$country* - negara (default: Rusia)
$incomingCall * - jika diteruskan "true"dapatkan nomor yang mendukung fungsi penerimaan panggilan
JAWABAN:
Respons layanan akan dalam format json, contoh:
{ "countries": { "0": 0 }, "operators": { "0": "aiva", "1": "any", "2": "beeline", ... "16": "yota" }, "services": { "full": { "cost": 42.93, "quant": 20 }, "vk": { "cost": 21.95, "quant": 20 }, "ok": { "cost": 7.68, "quant": 55 }, "ot": { "cost": 5.2, "quant": 42 } } }
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
OUT_OF_STOCK - nomor untuk negara tersebut tidak tersedia
Parameter:
$api_key - Kunci API
$service - layanan yang membutuhkan Anda mendapatkan nomor
$time* - durasi sewa dalam jam (default: 4 jam). Periode waktu berikutnya yang tersedia adalah 12 jam, lalu 24 jam. Saat meminta sewa selama sehari atau lebih, Anda harus mentransfer: 24, 48, 72, dll.
$operator* - operator seluler untuk nomor, Anda dapat menentukan beberapa dengan dipisahkan koma (default: Apa saja)
$country* - negara (default: Rusia)
$url * - tautan untuk webhook (tidak dianggap secara default)
$incomingCall * - jika diteruskan "true"dapatkan nomor yang mendukung fungsi penerimaan panggilan
* parameter opsional. Jika tidak ditentukan, parameter default akan digunakan.
JAWABAN:
Respons layanan akan dalam format json, contoh:
{ "status": "success", "phone": { "id": 1049, "endDate": "2020-01-31T12:01:52", "number": "79959707564" } }
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
Jawaban dalam format json:
{ "status": "error", "message": "*possible_answer*" }
Kemungkinan jawaban di bidang "message":
BAD_SERVICE - layanan tidak ditentukan atau nama salah
NO_BALANCE - tidak ada uang di akun
NO_NUMBERS - tidak ada nomor tersedia
ACCOUNT_INACTIVE - tidak ada nomor tersedia
SERVER_ERROR - kesalahan server
CHANNELS_LIMIT - akun diblokir
Parameter:
$api_key - Kunci API
$id - ID Sewa diterima dalam balasan saat memesan nomor
$page* - nomor halaman dari mana pemilihan dimulai (penomoran halaman dimulai dari 0, dari baru ke lama; default adalah 0)
$size* - ukuran halaman (default 10)
* parameter opsional. Jika tidak ditentukan, parameter default akan digunakan.
JAWABAN:
Respons layanan akan dalam format json, contoh:
{ "status": "success", "quantity": "2", "values": { "0": { "phoneFrom": "79180230628", "text": "5", "service": "ot", "date": "2020-01-30 14:31:58" }, "1": { "phoneFrom": "79180230628", "text": "4", "service": "ot", "date": "2020-01-30 14:04:16" } } }
* berhasil hanya ketika ada sms (kotak 'quantity' > 0).
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
Jawaban dalam format json:
{ "status": "error", "message": "*possible_answer*" } Kemungkinan jawaban di bidang "message": NO_ID_RENT - ID sewa tidak ditentukan INVALID_PHONE - nomor disewa bukan oleh Anda (ID sewa tidak valid) STATUS_FINISH - sewa dibayar dan selesai STATUS_CANCEL - sewa dibatalkan dengan pengembalian dana STATUS_WAIT_CODE - menunggu SMS pertama STATUS_REVOKE - Nomor diblokir, dana Anda telah dikembalikan
Parameter:
$api_key - Kunci API
$id - ID Sewa diterima dalam balasan saat memesan nomor
$status - kode untuk mengubah status (nomor)
Status dapat berupa:
JAWABAN:
Respons layanan akan dalam format json:
{ "status": "success" }
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
Jawaban dalam format json:
{ "status": "error", "message": "*possible_answer*" }
Kemungkinan jawaban di bidang "message":
NO_ID_RENT - ID sewa tidak ditentukan
INCORECT_STATUS - status hilang atau ditentukan secara salah
CANT_CANCEL - tidak mungkin membatalkan sewa (lebih dari 20 menit)
INVALID_PHONE - nomor disewa bukan oleh Anda (ID sewa tidak valid)
ALREADY_FINISH - sewa telah selesai
ALREADY_CANCEL - sewa telah dibatalkan
SERVER_ERROR - kesalahan server
👉Perhatian! Metode ini hanya menampilkan 10 nomor terakhir. Jika Anda membutuhkan lebih banyak nomor, gunakan getRentStatus metode untuk memeriksa status.
Parameter:
$api_key - Kunci API
JAWABAN:
Respons layanan akan dalam format json:
{ "status": "success", "values": { "0": { "id": "12345", "phone": "79181234567" }, "1": { "id": "12345", "phone": "79181234568" } } }
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
BAD_ACTION - tindakan tidak valid
Jawaban dalam format json:
{ "status": "error", "message": "*possible_answer*" }
Kemungkinan jawaban di bidang "message":
NO_NUMBERS - tidak ada nomor yang disewa
SERVER_ERROR - kesalahan server
Parameter:
$api_key - Kunci API
$id - id sewa
$rent_time- waktu sewa (default: 4 jam)
JAWABAN:
Respons layanan akan dalam format json:
{ "status": "success", "phone": { "id": 1049, "endDate": "2020-01-31T12:01:52", "number": "79959707564"} }
Ketika sewa yang selesai diperpanjang, itu akan dipesan ulang, ID baru akan diberikan
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
BAD_ACTION - tindakan tidak valid
SERVER_ERROR - kesalahan server
Jawaban dalam format json:
{ "status": "error", "message": "*possible_answer*", "info": "*details*" }
Kemungkinan jawaban di bidang "message":
NO_ID_RENT - tidak ada ID sewa
INVALID_TIME - waktu salah. Jumlah jam yang tersedia dari 4 hingga 1344
MAX_HOURS_EXCEED - Waktu maksimum yang tersedia terlampaui
maks - waktu maksimum yang tersedia
INVALID_PHONE - ID sewa tidak benar
RENT_DIE - masa sewa tidak dapat diperpanjang karena nomor telah kedaluwarsa
NO_BALANCE - dana tidak mencukupi
CHANNELS_LIMIT - akun diblokir
* metode ini hanya tersedia untuk penyewaan dengan operator MTT.
Parameter:
$api_key - Kunci API
$id - id sewa
$rent_time - durasi sewa
JAWABAN:
Respons layanan akan dalam format json:
{ "status": "success", "price": 6.33 }
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
BAD_ACTION - tindakan tidak valid
SERVER_ERROR - kesalahan server
Jawaban dalam format json:
{ "status": "error", "message": "*possible_answer*" }
Kemungkinan jawaban di bidang "message":
NO_ID_RENT - tidak ada ID sewa
INVALID_PHONE - ID sewa tidak benar
INVALID_TIME - pengaturan waktu salah
RENT_DIE - masa sewa tidak dapat diperpanjang karena nomor telah kedaluwarsa
MAX_HOURS_EXCEED - Waktu maksimum yang tersedia terlampaui
maks - waktu maksimum yang tersedia
CHANNELS_LIMIT - akun diblokir
API JAVA
Sertakan pustaka di Maven
<artifactId>SMSActivateApi</artifactId>
<version>1.0</version>
</dependecy>
Anda dapat melihat contoh pendaftaran melalui tautan ke MavenRepository
Impor kelas utama untuk berinteraksi dengan API SMS-Activate.
Untuk menggunakan pustaka ini, Anda memerlukan kunci API, yang dapat diperoleh di halaman ini dan pada tautan di bawah.
Kunci API SMS-ActivateUntuk mendapatkan saldo saat ini di akun Anda, gunakan metode getBalance... Jika Anda tertarik dengan cashback selain saldo, maka panggil metode getBalanceAndCashBack.
Metode getBalanceAndCashBack mengembalikan objek kelasSMSActivateGetBalanceAndCashBack.
Parameter:
NONE
TIPE PENGEMBALIAN:
BigDecimal
Parameter:
NONE
TIPE PENGEMBALIAN:
Parameter:
countryId(Integer) - pengenal negara.
service(String) - nama singkat layanan.
forward*(boolean) - apakah meminta nomor dengan pengalihan panggilan.
operatorSet*(Set) - kumpulan operator.
phoneException*(Set) - mengecualikan awalan hanya untuk Rusia, kumpulan angka dari 3 hingga 6 digit (7918,7900111).
* kotak opsional. Jika tidak ada yang ditentukan, jumlah default akan diberikan sesuai dengan pengaturan di profil.
TIPE PENGEMBALIAN:
Parameter:
countryId(Integer) - pengenal negara.
operatorSet*(Set) - kumpulan operator yang tersedia untuk layanan tersebut
TIPE PENGEMBALIAN:
Parameter:
id(Integer) - pengidentifikasi aktivasi
service(String) - nama singkat layanan.
Sebagai pengganti pengidentifikasi aktivasi, Anda dapat mengirimkan objek kelas yang diterima SMSActivateActivation setelah menggunakan metode getNumber atau salah satu aktivasi setelah digunakan getMultiServiceNumber.
TIPE PENGEMBALIAN:
Parameter:
countryId(Integer) - pengenal negara.
serviceMap(Set) - kumpulan layanan yang aktivasinya dibeli
multiForwardList(List) - daftar layanan dengan pengalihan panggilan yang tersedia
operatorSet(Set) - kumpulan operator.
TIPE PENGEMBALIAN:
Parameter:
NONE
TIPE PENGEMBALIAN:
Parameter:
countryId(Integer) - pengenal negara.
service(String) - nama singkat layanan.
TIPE PENGEMBALIAN:
Parameter:
countryId(Integer) - pengenal negara.
TIPE PENGEMBALIAN:
Parameter:
activationId(Integer) - pengidentifikasi aktivasi
Sebagai pengganti pengidentifikasi aktivasi, Anda dapat mengirimkan objek kelas yang diterima SMSActivateActivation setelah menggunakan metode getNumber atau salah satu aktivasi setelah digunakan getMultiServiceNumber.
TIPE PENGEMBALIAN:
Parameter:
id(Integer) - pengidentifikasi aktivasi
status(SMSActivateClientStatus) - status yang akan diatur untuk aktivasi
Sebagai pengganti pengidentifikasi aktivasi, Anda dapat mengirimkan objek kelas yang diterima SMSActivateActivation setelah menggunakan metode getNumber atau salah satu aktivasi setelah digunakan getMultiServiceNumber.
TIPE PENGEMBALIAN:
Parameter:
NONE
TIPE PENGEMBALIAN:
Parameter:
activationId(Integer) - pengidentifikasi aktivasi
Sebagai pengganti pengidentifikasi aktivasi, Anda dapat mengirimkan objek kelas yang diterima SMSActivateActivation setelah menggunakan metode getNumber atau salah satu aktivasi setelah digunakan getMultiServiceNumber.
TIPE PENGEMBALIAN:
Algoritma untuk menerima teks lengkap SMS dengan aktivasi
Mendapatkan nomor menggunakan metode getNumber, kemudian tindakan berikut tersedia:
CANCEL - 8 - Batalkan aktivasi (jika nomor tidak sesuai dengan Anda)
MESSAGE_WAS_SENT - Memberitahukan bahwa SMS telah dikirim (Wajib untuk menerima teks lengkap SMS)
Setelah menetapkan status MESSAGE_WAS_SENT yang wajib, atur variabel untuk menerima SMS menggunakan metode waitSMS dengan parameter aktivasi dan waktu tunggu untuk SMS.
Setelah menerima SMS, Anda dapat mengambilnya menggunakan metode getFullSMS dan kemudian menampilkan teks lengkap menggunakan metode getText().
Setelah itu, Anda dapat mengatur aktivasi ke status berikut:
Untuk mengaktifkan dengan status MESSAGE_WAS_SENT:
CANCEL - Batalkan aktivasi
Segera setelah menerima kode:
REQUEST_ONE_MORE_CODE - Minta SMS lain
FINISH - Konfirmasi kode SMS dan selesaikan aktivasi
Untuk mengaktifkan dengan status REQUEST_ONE_MORE_CODE:
FINISH - Konfirmasi kode SMS dan selesaikan aktivasi
Parameter:
countryId(Integer) - pengenal negara.
service(String) - nama singkat layanan.
hours(Integer)* - durasi sewa
operator(String)* - nama operator seluler
urlWebhook(String)* - tautan untuk webhook (Tidak diperhitungkan secara default)
Apa itu webHook?* parameter opsional. Jika tidak ditentukan, defaultnya akan menjadi
TIPE PENGEMBALIAN:
Parameter:
countryId(Integer) - pengenal negara.
operatorSet(Set) - kumpulan operator seluler
hours(Integer)* - durasi sewa
* parameter opsional. Jika tidak ditentukan, defaultnya akan menjadi
TIPE PENGEMBALIAN:
Parameter:
rentId(Integer) - pengenal nomor yang disewa
Sebagai ganti rentId, Anda dapat meneruskan objek kelas yang dihasilkan SMSActivateRentActivation setelah menggunakan metode getRentNumber
TIPE PENGEMBALIAN:
API Email
Deskripsi status API
3 - Menunggu
4 - Dibatalkan
5 - Berhasil
DESKRIPSI:
Kepatuhan yang lebih ketat terhadap prinsip-prinsip REST API dan peningkatan jumlah kotak surat gmail.com untuk mendaftarkan akun Telegram.
Parameter:
$api_key - Kunci API
$site- Situs yang membutuhkan email
JAWABAN:
Respons layanan akan dalam format json, contoh:
{
"status":"OK",
"response":{
"zones":[
{
"name":"info",
"cost":2.5
},
...
],
"popular":[
{
"name":"mail.ru",
"cost":6,
"count":159008
},
...
]
}
}
KESALAHAN YANG MUNGKIN TERJADI:
BAD_SITE- Situs tidak ditentukan
BAD_KEY - kunci API tidak valid
BAD_ACTION - tindakan tidak valid
Parameter:
$api_key - Kunci API
$site - situs yang membutuhkan email
$mail_type - jenis mail: domain atau zona populer (1 - zona 2 - populer)
$mail_domain - zona atau domain yang dipilih
JAWABAN:
Respons layanan akan dalam format json, contoh:
{
"status":"OK",
"response":{"email":"[email protected]","id":241}
}
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
BAD_ACTION - tindakan tidak valid
MAIL_TYPE_ERROR - tidak ada domain seperti itu untuk situs yang ditentukan
CHANNELS_LIMIT - akun diblokir
Parameter:
$api_key - Kunci API
$id- ID email yang memerlukan aktivasi ulang
JAWABAN:
Respons layanan akan dalam format json, contoh:
{
"status": "OK",
"response": {
"email": "[email protected]",
"id": 360
}
}
KESALAHAN YANG MUNGKIN TERJADI:
BAD_KEY - kunci API tidak valid
BAD_ACTION - tindakan tidak valid
BLOCKED_SITE - situs web diblokir
BAD_BALANCE - dana tidak mencukupi
ACTIVATION_NOT_FOUND - aktivasi tidak ditemukan
CHANNELS_LIMIT - akun diblokir
Parameter:
$api_key - Kunci API
$page- nomor halaman
$per_page- jumlah pembelian di setiap halaman
$search- bilah pencarian
$sort- arah pengurutan. (desc, asc)
JAWABAN:
Respons layanan akan dalam format json, contoh:
{
"status":"OK",
"response":{
"list":[
{
"id":"241",
"site":"apple.com",
"email":"[email protected]",
"status":"3",
"value":null,
"cost":"6.00",
"date":"2023-10-06 14:24:13",
"full_message":""
}
],
"pages":1,
"count":1
}
}
Parameter:
$api_key - Kunci API
$id- ID pembelian
JAWABAN:
Respons layanan akan dalam format json, contoh:
{
"status":"OK",
"response":true
}
KESALAHAN YANG MUNGKIN TERJADI:
EARLY_CANCEL_DENIED - Anda tidak dapat membatalkan email selama 2 menit pertama.
Parameter:
$api_key - Kunci API
$id- ID email yang dibeli, dikembalikan setelah pembelian email
JAWABAN:
Respons layanan akan dalam format json, contoh:
{
"status":"OK",
"response":{
"value":"Содержания письма"
}
}
Perangkat lunak Mitra API
Parameter:
$api_key - Kunci API
$id- ID perangkat lunak yang perlu Anda beli
JAWABAN:
Respons layanan akan dalam format json, contoh:
{
"status": "success",
"key": "F5qrzFoY6afj3zrEq7SeMplbx",
"manual": "Software download link:"
}
KESALAHAN YANG MUNGKIN TERJADI:
BAD_DATA - ID salah atau ID bukan angka
BAD_ACTION - tindakan tidak valid atau reseller belum diverifikasi.
<?php
include_once ("smsactivateApi.php");//Inclusion of a class in a project
$sms = new SMSActivate($API_KEY);//Create class instance SMSActivate
$freeSlots = $sms->getNumbersStatus(0, 'tele2');//Get the number of available numbers for the country of Russia and the tele2 operator
echo "Номеров Вконтакте: " . $freeSlots['vk']."\n";//Show for Vk
echo "Номеров Whatsapp: " . $freeSlots['wa']."\n";//Show for whatsapp
var_dump($freeSlots); //Show all services with quantity
$array=$activate->getTopCountriesByService(); //Get an array whose elements contain information for each country
$balance = $sms->getBalance();//Get balance
echo "On the account " . $balance." rub.\n";//Show balance
$balance = $sms->getBalanceAndCashBack();//Request a balance with cashback account
echo "On the account " . $balance." rub.\n";//Request a balance with cashback account
$operators = $sms->getOperators();
//Get operators for all countries
if (in_array('mts', $operators['countryOperators'][0])) {
//check if 'mts' is available for Russia
//perform an action
}
if (in_array('chinamobile', $operators['countryOperators'][3])) {
//check if 'chinamobile' is available for China
//perform an action
}
$activations = $sms->getActiveActivations();
$number = $sms->getNumber('ok',0, 0, 'tele2');//Get Odnoklassniki number without forwarding
echo "Activation № " . $number['id']. "Phone ". $number['number'] \n";//Show id and activation number
$result = $sms->getNumber('vk', 0 , 1);
if (!is_array($result)) {
echo 'Ошибка: ' . $result . '\n';//If an error occurs, a string will be returned, if successful, an array will be returned.
} else {
echo 'Id: ' . $result['id'] ."\n";
echo 'Номер: ' . $result['number'] ."\n";
}
$result = $sms->getNumberV2('vk', 0 , 1);
$number = $sms->getMultiServiceNumber('ok,vk,vi,av','0,0,0,1', 0, 'tele2');//Get a number for services Odnoklassniki, Vkontakte, Viber without call forwarding and Avito with call forwarding
foreach ($number as $value) {
echo "Activation № " . $value['activation']. " for service ". $value['service'] ."\n";
}
echo "Number " . $value['phone'] ."\n";//Show activation id and number
$status = $sms->setStatus($number['id'], 3);//Change activation status by id (get 1 more code)
$status = $sms->getStatus($number['id']);//Get activation status by id
if (is_array($status) {
echo "статус : " . $status['status'];//Can be STATUS_OK or STATUS_WAIT_RETRY, otherwise a line with error text will be returned
echo "код: " . $status['code'];
} else {
echo $status ."\n";
}
$incomingCall = $sms->getIncomingCallStatus($id);//Get activation data by call
echo $incomingCall['phone'] //Show incoming number
$prices = $sms->getPrices(1, 'vk');//Get the current price for the service
echo "Price for VK (Ukraine) : " .$prices[1]['vk']['cost']." rub. quantity: ". $prices[1]['vk']['count'];//Show the result
$countries = $sms->getCountries();//Get a list of all countries
$additional = $sms->getAdditionalService('fx', $id);//Get additional activation for PGbonus service based on id activation
echo "Activation no.: " . $additional[id] . " Telephone: " . $additional[number];//Show the result
$getAvailableRentNumbers = $sms->getRentServicesAndCountries('2');//Request available countries for rent and services (for 2 hours for all operators)
echo "Full rental - Cost:" . $getAvailableRentNumbers['services']['full']['cost'] . " Quant :" .$getAvailableRentNumbers['services']['full']['quant'] ." \n"; //Display full price information
foreach( $getAvailableRentNumbers['operators'] as $value) {
echo " Operator " . $value ."\n"; }//List operators
$getRentNumber = $sms->getRentNumber('vk','10','0','yota');//Get a number for rent for Vkontakte for 10 hours, operator 'Yota', country - Russia
if ($getRentNumber['status'] === 'success'){
echo "The rental was successful! Your phone number is: " . $getRentNumber['phone']['number']." \nRent expiration : ". $getRentNumber['phone']['endDate']." \nId numbers :" .$getRentNumber['phone']['id'] ; }//Display rental information
else
echo "Error code : " . $getRentNumber['message'];
$getRentStatus = $sms->getRentStatus($getRentNumber['phone']['id']);//Get the rent status with id from the received number
if ($getRentStatus['status'] == 'success'){
foreach( $getRentStatus['values']as $index => $value) {
echo " Message " . $index .": from the number - " . $value['phoneFrom'] . " Service - " . $value ['service'] . "message text - " . $value['text'] . "Date - " . $value['date']; } }//display a list of messages received while renting a phone
else
echo "Error code : " . $getRentStatus['message'];
$setRentStatus = $sms->setRentStatus($getRentNumber['phone']['id'],1);//Set rental status 'finish' with id from received number
if ($setRentStatus['status'] == 'success')
echo " Status change was successful! ";
else
echo "Error code : " . $setRentStatus['message'];
$getRentList = $sms->getRentList();//Get a list of currently rented numbers
if (getRentList['status'] == 'success')
foreach( $getRentList['values'] as $value) {
echo " ID " . $value["id"] . " Number " . $value["phone"] ."\n"; }//List numbers
else
echo "Error code : " . $getRentList['message'];
$result = $sms->continueRentNumber($id);//Extend the lease of activation id for 4 hours (by default)
if ($result['status'] == 'success') {
echo "Number: " . $result['phone']['number']"//Display number
echo "id: " . $result['phone']['id']"//Display activation id
echo "The lease is valid until: " . $result['phone']['endDate']"//Display the date and time of the end of the lease
} else {
echo "Error code : " . $result['msg'];
}
$result = $sms->getContinueRentPriceNumber($id, 12);//Get the cost of renewing the lease to activate the id for 12 hours
if ($result['status'] == 'success') {
echo " Renewal cost " . $result['price'];//Withdraw the cost
} else {
echo "Error code: " . $result['message']; //Display error code
}
from sms-activate.click import SMSActivateAPI
# SMSActivateAPI Contains all basic tools for working with the SMSActivate API
sa = SMSActivateAPI(API_KEY)
sa.debug_mode = True
# Used for debugging. When debug_mode is active, all responses from the server and class will be output to the console
print(sa.version())
# Returns the current version of the library
status = sa.getNumbersStatus(country=0, operator='tele2')
try:
print(status['vk_0']) # 274789
except:
print(status['message']) # Error text
result = sa.getTopCountriesByService('vk')
try:
print(result[0]['count']) # 2350
except:
print(result['message']) # Error text
balance = sa.getBalance() # {'balance': '100.00'}
try:
print(balance['balance']) # 100.00
except:
print(balance['message']) # Error text
balance = sa.getBalanceAndCashBack() # {'balance': '100.00'}
try:
print(balance['balance']) # 100.00
except:
print(balance['message']) # Error text
operators = sa.getOperators(country=0)
try:
print(operators['countryOperators']['0'])
except:
print(operators['error']) # Error status
activations = sa.getActiveActivations()
try:
print(activations['activeActivations'])
except:
print(activations['error']) # Error status
number = sa.getNumber(service='vk', operator='tele2', country=0, verification="true") # {'activation_id': 000000000, 'phone': 79999999999}
try:
print(number['phone']) # 79999999999
except:
print(number['message']) # Error text
number = sa.getNumberV2(service='vk', country=0)
try:
print(number['phoneNumber']) # 79999999999
except:
print(number['message']) # Error text
multinumber = sa.getMultiServiceNumber(service='fb,ig', operator='tele2', country=0) # [{'phone': '79999999999', 'activation': 000000000, 'service': 'fb'}, {'phone': '79999999999', 'activation': 000000001, 'service': 'ig'}]
try:
print(multinumber[0]['phone']) # 79999999999
except:
print(multinumber['message']) # Error text
status = sa.setStatus(id=000000000, status=1) # ACCESS_READY
try:
print(status) # ACCESS_READY
except:
print(status['message']) # Error text
status = sa.getStatus(id=000000000) # STATUS_WAIT_CODE
try:
print(sa.activationStatus(status)) # {'status': 'STATUS_WAIT_CODE', 'message': 'Ожидание смс'}
except:
print(status['message']) # Error text
status = sa.getIncomingCallStatus(id=000000000)
try:
print(status['status']) # 2
except:
print(status['message']) # Error text
prices = sa.getPrices(service='fb', country=0)
try:
print(prices['0']) # {'fb': {'cost': 9, 'count': 27934}}
except:
print(prices['message']) # Error text
countries = sa.getCountries()
try:
print(countries['0']['eng']) # Russia
except:
print(countries['message']) # Error text
service = sa.getAdditionalService(id=000000000, service='ig')
try:
print(service['phone']) # 79999999999
except:
print(service['message']) # Error text
service = sa.getRentServicesAndCountries(time=4, operator='tele2', country=0)
try:
print(service['services']['full']['cost']) # 100.00
except:
print(service['message']) # Error text
rent = sa.getRentNumber(service='ig', time=4, operator='tele2', country=0)
try:
print(rent['phone']['number']) # 79999999999
except:
print(rent['message']) # Error text
status = sa.getRentStatus(000000000)
try:
print(status['values']['0']['text']) # SMS
except:
print(status['message']) # Error text
status = sa.setRentStatus(id=000000000, status=1)
try:
print(status['status']) # success
except:
print(status['message']) # Error text
rent = sa.getRentList()
try:
print(rent['values']['0']['phone']) # 79999999999
except:
print(rent['message']) # Error text
rent = sa.continueRentNumber(id=000000000, time=4)
try:
print(rent['phone']['number']) # 79999999999
except:
print(rent['message']) # Error text
rent = sa.getContinueRentPriceNumber(000000000)
try:
print(status['price']) # 4.00
except:
print(status['message']) # Error text
import ru.sms_activate.SMSActivateApi;//Inclusion of a class in a project
SMSActivateApi smsActivateApi = new SMSActivate("API_KEY");//Create an instance of the SMSActivate class
BigDecimal balance = smsActivateApi.getBalance();//Get the current account balance
System.out.println("Balance: "+ balance)//Withdraw the received balance
SMSActivateGetBalanceAndCashbackResponse smsActivateGetBalanceAndCashbackResponse = smsActivateApi.getBalanceAndCashback();//Get current balance and cashback
System.out.println("Cashback + balance: "+ smsActivateGetBalanceAndCashbackResponse.getBalanceAndCashback());//Withdraw the amount of balance and cashback
SMSActivateActivation activation=smsActivateApi.getNumber(0,"vk")//Get activation for the Vkontakte service in Russia
System.out.println(activation);//Withdraw the received activation
SMSActivateGetNumbersStatusResponse smsActivateGetNumbersStatusResponse= smsActivateApi.getNumberStatus(0,null);//Get information about available services for Russia
SMSActivateServiceInfo go = smsActivateGetNumbersStatusResponse.getSMSActivateServiceInfoByShortName("go");//Getting information about numbers for the Google service
System.out.println("Short name service: " + go.getShortName();//Get the short name of the service
System.out.println("count phone numbers: "+ go.getCountPhoneNumber();//Get the number of numbers for the service
System.out.println(""Forwarding is available: "+ go.isForward() ? "yes" : "no"//Find out if the service has a redirect
SMSActivateActivation activation=smsActivateApi.getNumbersStatus(0,"ot",true);//Activations
smsActivateApi.setStatus(activation, SMSActivateClientStatus.MESSAGE_WAS_SENT);//Setting the MESSAGE_WAS_SENT status after sending SMS for the number
SMSActivateActivation childActivation =smsActivateApi.getAdditionalService(activation,"av");//Requesting a new activation for an additional service
System.out.println(childActivation);//Displaying information about additional activation
Set<String>operatorSet= new HashSet<>();
operatorSet.add("mts");//Adding an MTS operator to the set of operators
Map<String,Boolean>serviceMap= new HashMap<>();
serviceMap.put("av",false);//Adding the Avito service to the list of services (specify true if you need a service with redirection)
SMSActivateGetMultiServiceNumberResponse multiServiceNumberResponse=smsActivateApi.getMultiServiceNumber(0, serviceMap, operatorSet);//Getting activation for multiple services
multiServiceNumberResponse.getSMSActivateActivationList().forEach(activation->{
System.out.println("Id: " + activation.getId());
System.out.println("Number: " + activation.getNumber());
System.out.println("Service name: " + activation.getShortName());
}
//Displaying information about received activations
SMSActivateGetPricesResponse smsActivateGetPricesResponse=smsActivateApi.getPricesByCountryIdAndServiceShortName(0, "vk");//Obtaining a list of prices for Russia on the Vkontakte service. For a complete list of prices, use the getAllPrices () method;
SMSActivateGetPriceInfo vk=smsActivateGetPricesResponse.getPriceInfo(0, "vk");//Getting information about the Vkontakte service for Russia
System.out.println(">>> Cost: "+ vk.getCost());//Get a price for the service
System.out.println(">>> count phone numbers: " + vk.getCountPhoneNumbers());//Get the number of numbers for the service
SMSActivateActivation activation=smsActivateApi.getNumber(0,"vk")//Get activation for the Vkontakte service in Russia
System.out.println(activation);//Withdraw the received activation
SMSActivateGetStatusResponse getResponse = smsActivateApi.getStatus(activation);//Getting a status for activation
System.out.println(getResponse.getSMSActivateGetStatus());//Displaying information about the activation status
smsActivateApi.setStatus(activation, SMSActivateClientStatus.MESSAGE_WAS_SENT);//Setting the MESSAGE_WAS_SENT status after receiving SMS for the number
smsActivateApi.setStatus(activation, SMSActivateClientStatus.FINISH);//Setting the FINISH status after receiving SMS for the number
SMSActivateGetCountriesResponse smsActivateGetCountriesResponse =smsActivateApi.getCountries();//Getting a list of countries with information
SMSActivateCountryInfo countryInfo = smsActivateGetCountriesResponse.get(0)//Getting information about the first country on the list
System.out.println("Russian name: "+countryInfo.getRussianName();//Display the Russian name of the country
System.out.println("English name: "+countryInfo.getEnglishName();//Display the Russian name of the country
System.out.println("Support multi-service: "+ countryInfo.isSupportMultiService() ? "yes" : "no"//Show if the country supports multi-services
SMSActivateActivation activation=smsActivateApi.getNumber(0,"vk")//Get activation for the Vkontakte service in Russia
smsActivateApi.setStatus(activation, SMSActivateClientStatus.MESSAGE_WAS_SENT);//Setting the MESSAGE_WAS_SENT status after sending SMS for the number
String code=smsActivateApi.waitSms(activation,2)//Set receiving sms within 2 minutes
if(code == null) {
smsActivateApi.setStatus(activation, SMSActivateClientStatus.CANCEL);//Setting the CANCEL status if sms has not arrived
}
else{
SMSActivateGetFullSmsResponse smsActivateGetFullSmsResponse=smsActivateApi.getFullSms(activation)//Receiving sms text
System.out.println("Full SMS: "+smsActivateGetFullSmsResponse.getText());//SMS text output
}
SMSActivateRentActivation rentActivation= smsActivateApi.getRentNumber(0, "vk", 6);//Getting a number with rent
System.out.println(">> ID: "+rentActivation.getId());//Activation ID withdrawal
System.out.println(">> Number: "+rentActivation.getId());//Displaying the activation number
System.out.println(">> End date: "+rentActivation.getId());//Displaying the activation expiration date
SMSActivateGetRentServicesAndCountriesResponse smsActivateGetRentServicesAndCountriesResponse= smsActivateApi.getRentServicesAndCountries(0, null, 4);//Obtaining information on services and countries that support rental
smsActivateGetRentServicesAndCountriesResponse.getAllRentServices().forEach((serviceShortName, smsActivateRentService)->{
System.out.println("Service shortname: " + serviceShortName);
System.out.println(" count phone numbers: " + smsActivateRentService.getCountPhoneNumbers());
System.out.println(">> Cost: " + smsActivateRentService.getCost());
}
//Displaying information about received services
SMSActivateRentActivation rentActivation= smsActivateApi.getRentNumber(0, "vk");//Getting a number with rent
SMSActivateGetRentStatusResponse smsActivateGetRentStatusResponse= smsActivateApi.getRentStatus(rentActivation);//Getting activation status
System.out.println(">> Count sms: "+ smsActivateGetRentStatusResponse.getCountSms());//Displaying the number of sms on the rented number





















































