โปรโตคอล API สำหรับการทำงานกับ SMS-Activate
API คือโปรโตคอลการสื่อสารระหว่างซอฟต์แวร์ของคุณและเซิร์ฟเวอร์ของเรา
API จำเป็นสำหรับการอัตโนมัติกระบวนการรับ SMS, OTP และ PVA ในฝั่งของคุณ
API ของเราเข้ากันได้เต็มที่กับเว็บไซต์คู่แข่ง
คำขอทั้งหมดต้องส่งไปที่ https://api.sms-activate.ai/stubs/handler_api.php
คำขอแบบ POST หรือ GET
คำขอทั้งหมดต้องมีคีย์ API ในรูปแบบพารามิเตอร์ GET ชื่อ api_key
ดาวน์โหลดการใช้งานโปรโตคอลใน PHP ดาวน์โหลดโค้ดตัวอย่างการใช้งานโปรโตคอลใน Python ที่พร้อมใช้งานAPI การเปิดใช้งาน
พารามิเตอร์:
$api_key - คีย์ API
$country * - รหัสประเทศ ดูตาราง
$operator * รหัสผู้ให้บริการมือถือ คุณสามารถระบุหลายรหัสโดยคั่นด้วยเครื่องหมายจุลภาค (ใช้ได้เฉพาะสำหรับ:
** มีให้บริการสำหรับ $country = 0, $country = 1, $country = 2
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{"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}
โดยส่วนที่อยู่ก่อนเครื่องหมายขีดคือชื่อของบริการ ส่วนหลังรหัสระบุว่าจำเป็นต้องรวมการเปลี่ยนเส้นทางหรือไม่ 0 - ไม่จำเป็น 1 - จำเป็น
พารามิเตอร์:
$api_key - คีย์ API
$service * - บริการ ดูตาราง
* พารามิเตอร์ทางเลือก หากไม่ระบุ ระบบจะแสดงประเทศยอดนิยมสำหรับทุกบริการเป็นค่าเริ่มต้น
$freePrice * - พารามิเตอร์ทางเลือก หากระบุ true, จำนวนและราคาจะแสดงตามราคาฟรี
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{
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
}
}, ...
}
คำขอตรวจสอบยอดเงินพร้อมบัญชีแคชแบ็ก:
* แสดงยอดเงินโดยคำนึงถึงแคชแบ็กที่สะสมไว้ หากมีการเลือกช่อง 'ใช้แคชแบ็กสำหรับการเปิดใช้งาน' ในการตั้งค่าบัญชีแคชแบ็ก
พารามิเตอร์:
$api_key - คีย์ API
คำตอบ:
ACCESS_BALANCE: 'ยอดเงินในบัญชี'
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
ERROR_SQL - ข้อผิดพลาดของ sql-server
* ส่งคืนรายชื่อผู้ให้บริการทั้งหมดที่มีสำหรับประเทศที่ระบุ หากไม่ได้ระบุประเทศ จะส่งคืนรายชื่อผู้ให้บริการทั้งหมดที่มีในแต่ละประเทศ
พารามิเตอร์:
$api_key - คีย์ API
$country - รหัสประเทศ
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json:
{"status":"success", "countryOperators": {
"Country1Code": ["operator1Name","operator2Name","operator3Name", ...],
"Country2Code": ["operator1Name","operator2Name","operator3Name", ...],
...
}}
ตัวอย่าง:
{"status":"success", "countryOperators": {
"0": ["beeline","megafon","mts", ...],
"1": ["life","mts","kyivstar","utel" ...],
...
}}
* ภายใน 'countryOperators' - คีย์จะเป็นรหัสประเทศ
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
ERROR_SQL - ข้อผิดพลาดของ sql-server
OPERATORS_NOT_FOUND - ไม่พบข้อมูล (เช่น ระบุประเทศที่ไม่มีอยู่จริง)
พารามิเตอร์:
$api_key - คีย์ API
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ 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",
}]
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
ERROR_SQL - ข้อผิดพลาดของ sql-server
NO_ACTIVATIONS - ไม่พบรายการ (ไม่มีการเปิดใช้งานที่กำลังดำเนินอยู่)
พารามิเตอร์:
$api_key - คีย์ API
$service - บริการสำหรับการสั่งซื้อ ดูตาราง
$forward * - จำเป็นต้องขอหมายเลขพร้อมการโอนสายหรือไม่
* พารามิเตอร์เสริม รับค่า 0 (ไม่ดำเนินการ, เป็นค่าเริ่มต้น), 1 (ดำเนินการ)
$maxPrice * - ราคาสูงสุดที่คุณยินดีจ่ายเพื่อซื้อหมายเลขในโหมดราคาอิสระ
* พารามิเตอร์เสริม หากไม่ได้ระบุ การซื้อจะเกิดขึ้นในราคาปกติ
$phoneException * - ยกเว้นเลขนำหน้าสำหรับหมายเลขรัสเซีย กรอกโดยคั่นด้วยเครื่องหมายจุลภาค รูปแบบการบันทึก: รหัสประเทศและตัวเลขหน้ากาก 3 ถึง 6 หลัก (เช่น 7918, 7900111) ค่าเริ่มต้นคือค่าที่กำหนดไว้ในบัญชี
$operator* คือผู้ให้บริการมือถือของหมายเลข คุณสามารถระบุหลายรายการโดยคั่นด้วยเครื่องหมายจุลภาค (ใช้ได้เฉพาะกับ **)
$activationType - ประเภทการเปิดใช้งาน: 0 - พร้อม SMS (ค่าเริ่มต้น), 1 - พร้อมหมายเลข, 2 - พร้อมเสียง
$language - ภาษาสำหรับการแยกวิเคราะห์ (จำเป็นสำหรับการเปิดใช้งานด้วยเสียง) ดูตาราง
$userId * - ID ผู้ใช้ที่จะถูกแบนเนื่องจากสถิติการเปิดใช้งานที่ไม่ดี แต่บัญชีของผู้ขายต่อเองจะไม่ได้รับผลกระทบ
* ฟิลด์ไม่บังคับ
** มีให้บริการสำหรับ $country = 0, $country = 1, $country = 2
$ref - ส่งต่อ ID ผู้แนะนำ
$country - รหัสประเทศ ดูตาราง
$useCashBack* - รับค่าบูลีน หากพารามิเตอร์เป็น 'true' การซื้อหมายเลขจะดำเนินการโดยใช้เงินคืน เมื่อเงินในยอดเงินคืนหมด การซื้อทั้งหมดหลังจากนั้นจะใช้ยอดเงินหลัก โปรดจำไว้ว่าสำคัญมากว่าการซื้อทั้งหมดหลังจากนั้นจะใช้เงินคืนก่อน แล้วจึงใช้ยอดเงินหลัก (แม้ว่าจะส่งพารามิเตอร์ 'false' หลังจากนั้นก็ตาม)
* พารามิเตอร์ไม่บังคับ รับค่า 'true'
โดยการรับหมายเลขผ่าน API คุณยอมรับกับ กฎของโครงการ กฎของโครงการ
ข้อผิดพลาดที่อาจเกิดขึ้น:
WRONG_MAX_PRICE:$min- ราคาสูงสุดที่ระบุนั้นต่ำกว่าราคาที่อนุญาต
$min - ราคาขั้นต่ำที่อนุญาต
BAD_ACTION - การกระทำไม่ถูกต้อง
BAD_SERVICE - ชื่อบริการไม่ถูกต้อง
BAD_KEY - คีย์ API ไม่ถูกต้อง
ERROR_SQL - ข้อผิดพลาดของ sql-server
BANNED:'YYYY-m-d H-i-s' - เวลาที่บัญชีถูกบล็อก
WRONG_EXCEPTION_PHONE - คำนำหน้ายกเว้นไม่ถูกต้อง
NO_BALANCE_FORWARD - ยอดเงินไม่เพียงพอสำหรับการซื้อโอนสาย
CHANNELS_LIMIT - บัญชีถูกบล็อก
NO_NUMBERS - ไม่มีหมายเลข
หากคุณพยายามขอหมายเลขจากผู้ให้บริการเฉพาะรายที่ไม่ได้ดำเนินการในประเทศที่เลือก หรือไม่มีบริการที่เลือก ระบบจะส่งคืนหมายเลขจากผู้ให้บริการรายแรกที่ตรงกับพารามิเตอร์คำขอ
เมธอดนี้ทำงานคล้ายกับเมธอด getNumber, รับพารามิเตอร์เดียวกันและเพิ่มเติมตามที่อธิบายด้านล่าง แต่ส่งคืนข้อมูลการเปิดใช้งานเพิ่มเติม
พารามิเตอร์:
$orderId- ID การเปิดใช้งานจากระบบของผู้ขายต่อ เมื่อทำการซื้อ ข้อมูลนี้จะถูกเปรียบเทียบกับ ID การเปิดใช้งานและผู้ขายต่อในระบบของเรา ดังนั้น เราจึงต้องการบรรลุความเป็นไอมโพเทนต์ (คำสั่งซื้อเดียวกันจะไม่ถูกประมวลผลซ้ำ)
คำตอบ:
หากคำขอสำเร็จ การตอบกลับจะมีรูปแบบดังนี้:
{
"activationId": 635468024,
"phoneNumber": "79584******",
"activationCost": "12.50",
"countryCode": "0",
"canGetAnotherSms": "1",
"activationTime": "2022-06-01 17:30:57",
"activationOperator": "mtt"
}
หากคุณพยายามขอหมายเลขจากผู้ให้บริการเฉพาะรายที่ไม่ได้ดำเนินการในประเทศที่เลือก หรือไม่มีบริการที่เลือก ระบบจะส่งคืนหมายเลขจากผู้ให้บริการรายแรกที่ตรงกับพารามิเตอร์คำขอ
ข้อผิดพลาดที่อาจเกิดขึ้น:
ORDER_ALREADY_EXISTS- คำสั่งซื้อได้ถูกสร้างไปแล้ว
เมื่อคุณได้รับ SMS ไปยังหมายเลข หากคุณเปิดใช้งานฟังก์ชัน Webhooks ในการตั้งค่า เราจะส่งข้อมูลเกี่ยวกับ SMS ไปยังที่อยู่ที่คุณระบุผ่านคำขอ POST
คำตอบ:
รูปแบบการตอบกลับจะเป็นดังนี้:
{
"activationId": 635468024,
"service": "go",
"text": "Your sms text",
"code": "Your sms code",
"country": 0,
"receivedAt": "2022-06-01 17:30:57",
}
เมื่อส่งคำขอ เราจะรอการตอบกลับจากสคริปต์ของคุณด้วยสถานะ HTTP 200 หากสคริปต์ของคุณไม่ตอบสนอง เราจะส่งคำขอใหม่ภายใน 2 ชั่วโมง แต่ไม่เกิน 8 ครั้ง
คุณสามารถเปิดใช้งานฟังก์ชันนี้ได้ใน การตั้งค่าโปรไฟล์
พารามิเตอร์:
$api_key - คีย์ API
$service - บริการสำหรับการสั่งซื้อ ดูตาราง
$forward * - จำเป็นต้องขอหมายเลขพร้อมการโอนสายหรือไม่
* พารามิเตอร์เสริม ตัวอักษรสำหรับการส่งต่อคั่นด้วยเครื่องหมายจุลภาค จำนวนหลักของการส่งต่อต้องตรงกับจำนวนบริการที่ส่งในพารามิเตอร์ $service. อนุญาตให้ส่งบริการเพียง 1 รายการที่มีการเปลี่ยนเส้นทาง ตัวอย่างเช่น "0,1,0,0" - ถูกต้อง, "0,1,1,0" - ไม่ถูกต้อง ใช้ค่า 0 (ไม่ดำเนินการ, ค่าเริ่มต้น), 1 (ดำเนินการ)
$operator * - ผู้ให้บริการมือถือของหมายเลข คุณสามารถระบุหลายหมายเลขโดยคั่นด้วยเครื่องหมายจุลภาค (ใช้ได้เฉพาะสำหรับ **):
$ref - ส่งต่อ ID ผู้แนะนำ
$country - รหัสประเทศ ดูตาราง
โดยการรับหมายเลขผ่าน API คุณยอมรับกับ กฎของโครงการ กฎของโครงการ
คำตอบ:
NO_NUMBERS - ไม่มีหมายเลข
NO_BALANCE - ยอดเงินหมดแล้ว
{{'phone':phone,'activation':activation,'service':service},
{'phone':phone,'activation':activation,'service':service}}, โดยที่ (phone - รหัสการดำเนินการ, activation - หมายเลขโทรศัพท์, service - บริการ)
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_ACTION - การกระทำไม่ถูกต้อง
BAD_SERVICE - ชื่อบริการไม่ถูกต้อง
BAD_KEY - คีย์ API ไม่ถูกต้อง
ERROR_SQL - ข้อผิดพลาดของ sql-server
BANNED:'YYYY-m-d H-i-s' - เวลาที่บัญชีถูกบล็อก
พารามิเตอร์:
$api_key - คีย์ API
$id - รหัสการเปิดใช้งาน
$forward * - หมายเลขโทรศัพท์ที่คุณต้องการส่งต่อถึง
* จำเป็นเฉพาะเมื่อมีการส่งพารามิเตอร์พร้อม getNumber forward=1.
$status - สถานะการเปิดใช้งาน
1 - แจ้งเกี่ยวกับการมีอยู่ของหมายเลข (SMS ถูกส่งไปยังหมายเลขแล้ว)
3 - ขอรหัสเพิ่มเติมหนึ่งครั้ง (ฟรี)
6 - สิ้นสุดการเปิดใช้งาน *
8 - รายงานข้อเท็จจริงที่ว่าหมายเลขถูกใช้ไปแล้วและยกเลิกการเปิดใช้งาน
* หากมีสถานะ 'รับรหัสแล้ว' จะทำเครื่องหมายว่าสำเร็จและเสร็จสิ้น หากมีสถานะ 'กำลังเตรียม' จะลบและทำเครื่องหมายว่าเกิดข้อผิดพลาด หากมีสถานะ 'รอลองใหม่' จะโอนการเปิดใช้งานไปยัง SMS ที่รอดำเนินการ
** ไม่สามารถเปลี่ยนสถานะการเปิดใช้งานซึ่งเลือกวิธีการยืนยันด้วยการโทร หากหมายเลขมาถึงแล้ว
ตรรกะอย่างง่ายของลำดับการทำงานกับ API:
รับหมายเลขโดยใช้เมธอด getNumber จากนั้นการดำเนินการต่อไปนี้จะมีให้:
8 - ยกเลิกการเปิดใช้งาน (หากหมายเลขไม่เหมาะสมสำหรับคุณ)
1 - แจ้งว่า SMS ได้ถูกส่งแล้ว (ไม่บังคับ)
สำหรับการเปิดใช้งานที่มีสถานะ 1:
8 - ยกเลิกการเปิดใช้งาน
ทันทีหลังจากได้รับรหัส:
3 - ขอ SMS เพิ่มเติมหนึ่งครั้ง
6 - ยืนยันรหัส SMS และสิ้นสุดการเปิดใช้งาน
สำหรับการเปิดใช้งานที่มีสถานะ 3:
6 - ยืนยันรหัส SMS และสิ้นสุดการเปิดใช้งาน
คำตอบ:
ACCESS_READY - ยืนยันความพร้อมของหมายเลขแล้ว
ACCESS_RETRY_GET - กำลังรอ SMS ใหม่
ACCESS_ACTIVATION - เปิดใช้งานบริการสำเร็จแล้ว
ACCESS_CANCEL - ยกเลิกการเปิดใช้งาน
ข้อผิดพลาดที่อาจเกิดขึ้น:
EARLY_CANCEL_DENIED - ไม่อนุญาตให้ยกเลิกหมายเลขภายใน 2 นาทีแรก
ERROR_SQL - ข้อผิดพลาดของ sql-server
NO_ACTIVATION - ไม่พบ ID การเปิดใช้งาน
BAD_SERVICE - ชื่อบริการไม่ถูกต้อง
BAD_STATUS - สถานะไม่ถูกต้อง
BAD_KEY - คีย์ API ไม่ถูกต้อง
BAD_ACTION - การกระทำไม่ถูกต้อง
WRONG_ACTIVATION_ID - ID ไม่ถูกต้อง หรือ ID ไม่ใช่ตัวเลข
พารามิเตอร์:
$api_key - คีย์ API
$id - รหัสการเปิดใช้งาน
คำตอบ:
STATUS_WAIT_CODE - กำลังรอ SMS
STATUS_WAIT_RETRY: 'รหัสในอดีต, ไม่ตรงกัน' - กำลังรอการยืนยันรหัส
STATUS_WAIT_RESEND - กำลังรอการส่ง SMS ซ้ำ *
* ซอฟต์แวร์ต้องกดส่ง SMS ใหม่และเปลี่ยนสถานะเป็น 6
STATUS_CANCEL - ยกเลิกการเปิดใช้งาน
STATUS_OK: 'รหัสเปิดใช้งาน' - ได้รับรหัสแล้ว
ข้อผิดพลาดที่อาจเกิดขึ้น:
NO_ACTIVATION - ไม่พบ ID การเปิดใช้งาน
ERROR_SQL - ข้อผิดพลาดของ sql-server
BAD_KEY - คีย์ API ไม่ถูกต้อง
BAD_ACTION - การกระทำไม่ถูกต้อง
พารามิเตอร์:
$api_key - คีย์ API
$id - รหัสการเปิดใช้งาน
คำตอบ:
รูปแบบการตอบกลับจะเป็นดังนี้:
{
"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 - ยกเลิกการเปิดใช้งาน
ข้อผิดพลาดที่อาจเกิดขึ้น:
NO_ACTIVATION - ไม่พบ ID การเปิดใช้งาน
ERROR_SQL - ข้อผิดพลาดของ sql-server
BAD_KEY - คีย์ API ไม่ถูกต้อง
BAD_ACTION - การกระทำไม่ถูกต้อง
พารามิเตอร์:
$api_key - คีย์ API
$start - เวลาในรูปแบบ Unix Timestamp (ไม่บังคับ) - วันที่เริ่มต้นสำหรับการนับการเปิดใช้งาน
$end - เวลาในรูปแบบ Unix Timestamp (ไม่บังคับ) - วันที่สิ้นสุดสำหรับการนับการเปิดใช้งาน
$offset - ค่าออฟเซ็ตของรายการแรกที่ส่งคืนในการตอบสนอง ค่าเริ่มต้นคือ 0
$limit - จำนวนบันทึกสูงสุดที่ส่งคืน สูงสุดคือ 100 ค่าเริ่มต้นคือ 50
คำตอบ:
รูปแบบการตอบกลับจะเป็นดังนี้:
[{
"id": 635468024,
"date": "2022-11-12 15:58:39",
"phone": "79918529716",
"sms": "sms":"["Your sms code"]",
"cost": 100 //Если активация не завершена, то cost = 0,
"status": "4",
}]
ข้อผิดพลาดที่อาจเกิดขึ้น:
ERROR_SQL - ข้อผิดพลาดของ sql-server
BAD_KEY - คีย์ API ไม่ถูกต้อง
BAD_ACTION - การกระทำไม่ถูกต้อง
พารามิเตอร์:
$api_key - คีย์ API
$service - ชื่อบริการ
คำตอบ:
รูปแบบการตอบกลับจะเป็นดังนี้:
[{
"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)
}]
ข้อผิดพลาดที่อาจเกิดขึ้น:
ERROR_SQL - ข้อผิดพลาดของ sql-server
BAD_KEY - คีย์ API ไม่ถูกต้อง
WRONG_SERVICE - บริการไม่ถูกต้อง
BAD_ACTION - การกระทำไม่ถูกต้อง
พารามิเตอร์:
$api_key - คีย์ API
$id - รหัสการเปิดใช้งาน
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{"status":"2","phone":false}
สถานะที่เป็นไปได้:
2 - การเปิดใช้งานใหม่
3 - เสร็จสิ้นสำเร็จ
4 - ยกเลิกแล้ว
5 - คืนเงินแล้ว
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
INVALID_ACTIVATION_ID - รหัสการเปิดใช้งานไม่ถูกต้อง
พารามิเตอร์:
$api_key - คีย์ API
$serviceชื่อย่อของบริการ (ไม่บังคับ, ค่าเริ่มต้นคือทุกบริการ) ดูตาราง
$countryชื่อรหัสประเทศ (ไม่บังคับ, ค่าเริ่มต้นคือทุกประเทศ) ดูตาราง
คำตอบ:
JSON - ออบเจ็กต์ในรูปแบบ
{"Country":{"Service":{"cost":Cost,"count":Count}}}
พารามิเตอร์:
$api_key - คีย์ API
$serviceชื่อย่อของบริการ (ไม่บังคับ, ค่าเริ่มต้นคือทุกบริการ) ดูตาราง
คำตอบ:
JSON - ออบเจ็กต์ในรูปแบบ
{"Service":{"Country":{"count":Quantity,"price":"Price"}}}
พารามิเตอร์:
$api_key - คีย์ API
คำตอบ:
JSON - ออบเจ็กต์ในรูปแบบ {{'Страна':{'id':0,'rus':"Россия","eng:"Russia","chn":"俄罗斯","visible":1,"retry":1,"rent":1,"multiService":1}},
โดยที่ (
id : รหัสประเทศ;
rus : ชื่อประเทศเป็นภาษารัสเซีย;
eng : ชื่อประเทศเป็นภาษาอังกฤษ;
chn : ชื่อประเทศเป็นภาษาจีน;
visible : 0 - ไม่แสดงประเทศบนเว็บไซต์, 1 - แสดง;
retry : 0 - ไม่รองรับการส่ง SMS ซ้ำ, 1 - รองรับ;
rent : 0 - ประเทศไม่พร้อมให้เช่า, 1 - พร้อมให้เช่า;
multiService : 0 - ประเทศไม่รองรับบริการหลายประเภท, 1 - รองรับ)
พารามิเตอร์:
$api_key- คีย์ API
$country *- รหัสประเทศ หากคุณระบุประเทศ เราจะคืนค่าบริการที่มีราคาสำหรับประเทศที่เลือก
$lang *- ภาษาที่ใช้แสดง `name` ค่าที่เป็นไปได้: 'ru', 'en', 'es', 'cn' ค่าเริ่มต้นคือ 'en'
* พารามิเตอร์เสริม
คำตอบ:
JSON - ออบเจ็กต์ในรูปแบบ { "status": "success", "services": [ { "code": "aoo", "name": "Pegasus Airlines" } ] }
เมื่อได้รับ SMS แรกสำหรับหมายเลขที่ส่งต่อแล้ว คุณสามารถซื้อบริการอื่นๆ ที่เกี่ยวข้อง เช่น Yula, Yandex, Avito หรือบริการอื่นๆ ได้
ค่าบริการเพิ่มเติมเพียง 5p เท่านั้น
พารามิเตอร์:
$api_key - คีย์ API
$service - สำหรับชื่อย่อของบริการ ดูได้ที่ตาราง ดูตาราง
$id - รหัสการเปิดใช้งานหลัก
คำตอบ:
ADDITIONAL:$id:$phone - สร้างการเปิดใช้งานใหม่สำเร็จ โดย ID คือรหัสของการเปิดใช้งานเพิ่มเติม และ phone คือหมายเลขโทรศัพท์
ข้อผิดพลาดที่อาจเกิดขึ้น:
WRONG_ADDITIONAL_SERVICE - บริการเพิ่มเติมไม่ถูกต้อง (อนุญาตเฉพาะบริการสำหรับการส่งต่อเท่านั้น)
WRONG_ACTIVATION_ID - รหัสการเปิดใช้งานหลักไม่ถูกต้อง
WRONG_SECURITY - เกิดข้อผิดพลาดเมื่อพยายามส่งรหัสการเปิดใช้งานโดยไม่มีการเปลี่ยนเส้นทาง หรือเป็นการเปิดใช้งานที่เสร็จสิ้นหรือไม่ aktif แล้ว
REPEAT_ADDITIONAL_SERVICE - เกิดข้อผิดพลาดเมื่อพยายามสั่งซื้อบริการที่เคยซื้อไปแล้วอีกครั้ง NO_BALANCE - ยอดเงินไม่เพียงพอ
ERROR_SQL- ข้อผิดพลาดฐานข้อมูล กรุณาติดต่อฝ่ายบริการลูกค้า
หากคุณเคยเปิดใช้งานหมายเลขสำเร็จแล้ว คุณสามารถดำเนินการได้อีกครั้ง
ค่าใช้จ่ายในการเปิดใช้งานเพิ่มเติมขึ้นอยู่กับประเทศและบริการ คุณสามารถตรวจสอบค่าใช้จ่ายเฉพาะได้จาก .
พารามิเตอร์:
$api_key - คีย์ API
$activationId - รหัสการเปิดใช้งานหลัก
คำตอบ:
ACCESS_NUMBER:$id:$phone - สร้างการเปิดใช้งานใหม่สำเร็จ โดย $id คือรหัสของการเปิดใช้งานเพิ่มเติม และ $phone คือหมายเลขโทรศัพท์
ข้อผิดพลาดที่อาจเกิดขึ้น:
RENEW_ACTIVATION_NOT_AVAILABLE- หมายเลขนี้ไม่สามารถเปิดใช้งานเพิ่มเติมได้
WRONG_ACTIVATION_ID - รหัสการเปิดใช้งานหลักไม่ถูกต้อง
ERROR_SQL- ข้อผิดพลาดฐานข้อมูล กรุณาติดต่อฝ่ายบริการลูกค้า
NEW_ACTIVATION_IMPOSSIBLE- ไม่สามารถทำการเปิดใช้งานเพิ่มเติมได้
NO_BALANCE - ไม่มีเงินในบัญชี
คุณสามารถตรวจสอบความพร้อมของหมายเลขสำหรับการเปิดใช้งานเพิ่มเติมและรับราคาได้
พารามิเตอร์:
$api_key - คีย์ API
$activationId - รหัสการเปิดใช้งานหลัก
คำตอบ:
JSON - ออบเจ็กต์ในรูปแบบ {'status': 'success', 'cost':200,"service":"tw","phone":777777777,"country":14},
ข้อผิดพลาดที่อาจเกิดขึ้น:
RENEW_ACTIVATION_NOT_AVAILABLE- หมายเลขนี้ไม่สามารถเปิดใช้งานเพิ่มเติมได้
WRONG_ACTIVATION_ID - รหัสการเปิดใช้งานหลักไม่ถูกต้อง
SIM_OFFLINE - ซิมการ์ดออฟไลน์
คำตอบ:
รูปแบบการตอบกลับจะเป็นดังนี้:
{
"result": "OK"
}
STATUS_CANCEL - ยกเลิกการเปิดใช้งาน
NO_CALL- ไม่มีการรับสาย
PARSE_COUNT_EXCEED- เกินขีดจำกัดการพยายามแยกวิเคราะห์ (สูงสุดคือ 4 ครั้ง)
ข้อผิดพลาดที่อาจเกิดขึ้น:
WRONG_ACTIVATION_ID - ID ไม่ถูกต้อง หรือไม่พบการเปิดใช้งาน
ERROR_SQL - ข้อผิดพลาดของ sql-server
BAD_KEY - คีย์ API ไม่ถูกต้อง
BAD_ACTION - การกระทำไม่ถูกต้อง
เช่า API
พารามิเตอร์:
$api_key - คีย์ API
$time* - ระยะเวลาเช่า (ค่าเริ่มต้น: 4 ชั่วโมง)
$operator* - ผู้ให้บริการมือถือของหมายเลข คุณสามารถระบุหลายรายโดยคั่นด้วยเครื่องหมายจุลภาค (ค่าเริ่มต้น: ใดๆ)
$country* - ประเทศ (ค่าเริ่มต้น: รัสเซีย)
$incomingCall * - หากมีการโอนสาย "true"รับหมายเลขที่รองรับฟังก์ชันการรับสาย
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{ "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 } } }
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
OUT_OF_STOCK - ไม่มีหมายเลขสำหรับประเทศดังกล่าว
พารามิเตอร์:
$api_key - คีย์ API
$service * - บริการที่คุณต้องการขอหมายเลข
$time* - ระยะเวลาเช่าเป็นชั่วโมง (ค่าเริ่มต้น: 4 ชั่วโมง) ช่วงเวลาถัดไปที่มีให้เลือกคือ 12 ชั่วโมง จากนั้นคือ 24 ชั่วโมง เมื่อขอเช่าเป็นเวลาหนึ่งวันหรือมากกว่า ต้องระบุค่า: 24, 48, 72 เป็นต้น
$operator* - ผู้ให้บริการมือถือของหมายเลข คุณสามารถระบุหลายรายโดยคั่นด้วยเครื่องหมายจุลภาค (ค่าเริ่มต้น: ใดๆ)
$country* - ประเทศ (ค่าเริ่มต้น: รัสเซีย)
$url * - ลิงก์สำหรับ webhook (จะไม่ถูกพิจารณาหากไม่ได้ระบุ)
$incomingCall * - หากมีการโอนสาย "true"รับหมายเลขที่รองรับฟังก์ชันการรับสาย
* พารามิเตอร์เสริม หากไม่ระบุ จะใช้พารามิเตอร์เริ่มต้น
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{ "status": "success", "phone": { "id": 1049, "endDate": "2020-01-31T12:01:52", "number": "79959707564" } }
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
ตอบกลับในรูปแบบ json:
{ "status": "error", "message": "*possible_answer*" }
คำตอบที่เป็นไปได้ในฟิลด์ "message":
BAD_SERVICE - ไม่ได้ระบุบริการ หรือชื่อไม่ถูกต้อง
NO_BALANCE - ไม่มีเงินในบัญชี
NO_NUMBERS - ไม่มีหมายเลข
ACCOUNT_INACTIVE - ไม่มีหมายเลข
SERVER_ERROR - ข้อผิดพลาดของเซิร์ฟเวอร์
CHANNELS_LIMIT - บัญชีถูกบล็อก
พารามิเตอร์:
$api_key - คีย์ API
$id - ID การเช่าที่ได้รับในการตอบกลับเมื่อสั่งหมายเลข
$page* - หมายเลขหน้าที่เริ่มการเลือก (การนับหน้าเริ่มจาก 0 เรียงจากใหม่ไปเก่า ค่าเริ่มต้นคือ 0)
$size* - ขนาดหน้า (ค่าเริ่มต้น 10)
* พารามิเตอร์เสริม หากไม่ระบุ จะใช้พารามิเตอร์เริ่มต้น
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{ "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" } } }
* สำเร็จเฉพาะเมื่อมี SMS (ค่า 'quantity' > 0)
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
ตอบกลับในรูปแบบ json:
{ "status": "error", "message": "*possible_answer*" } คำตอบที่เป็นไปได้ในฟิลด์ "message": NO_ID_RENT - ไม่ได้ระบุ ID การเช่า INVALID_PHONE - หมายเลขถูกเช่าโดยคุณไม่ใช่ (รหัสการเช่าไม่ถูกต้อง) STATUS_FINISH - การเช่าชำระและเสร็จสมบูรณ์แล้ว STATUS_CANCEL - ยกเลิกการเช่าพร้อมคืนเงิน STATUS_WAIT_CODE - รอรับ SMS แรก STATUS_REVOKE - หมายเลขถูกบล็อก เงินของคุณได้รับการคืนแล้ว
พารามิเตอร์:
$api_key - คีย์ API
$id - ID การเช่าที่ได้รับในการตอบกลับเมื่อสั่งหมายเลข
$status - รหัสสำหรับเปลี่ยนสถานะ (หมายเลข)
สถานะสามารถเป็น:
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json:
{ "status": "success" }
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
ตอบกลับในรูปแบบ json:
{ "status": "error", "message": "*possible_answer*" }
คำตอบที่เป็นไปได้ในฟิลด์ "message":
NO_ID_RENT - ไม่ได้ระบุ ID การเช่า
INCORECT_STATUS - ขาดหรือระบุสถานะไม่ถูกต้อง
CANT_CANCEL - ไม่สามารถยกเลิกการเช่าได้ (เกิน 20 นาที)
INVALID_PHONE - หมายเลขถูกเช่าโดยคุณไม่ใช่ (รหัสการเช่าไม่ถูกต้อง)
ALREADY_FINISH - การเช่าเสร็จสมบูรณ์แล้ว
ALREADY_CANCEL - การเช่าถูกยกเลิกแล้ว
SERVER_ERROR - ข้อผิดพลาดของเซิร์ฟเวอร์
👉โปรดทราบ! วิธีนี้แสดงเฉพาะ 10 หมายเลขล่าสุด หากคุณต้องการหมายเลขเพิ่มเติม ให้ใช้ getRentStatus วิธีการตรวจสอบสถานะ
พารามิเตอร์:
$api_key - คีย์ API
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json:
{ "status": "success", "values": { "0": { "id": "12345", "phone": "79181234567" }, "1": { "id": "12345", "phone": "79181234568" } } }
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
BAD_ACTION - การกระทำไม่ถูกต้อง
ตอบกลับในรูปแบบ json:
{ "status": "error", "message": "*possible_answer*" }
คำตอบที่เป็นไปได้ในฟิลด์ "message":
NO_NUMBERS - ไม่มีหมายเลขที่เช่า
SERVER_ERROR - ข้อผิดพลาดของเซิร์ฟเวอร์
พารามิเตอร์:
$api_key - คีย์ API
$id - id การเช่า
$rent_time- เวลาเช่า (ค่าเริ่มต้น: 4 ชั่วโมง)
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json:
{ "status": "success", "phone": { "id": 1049, "endDate": "2020-01-31T12:01:52", "number": "79959707564"} }
เมื่อต่ออายุการเช่าที่เสร็จสมบูรณ์แล้ว จะทำการสั่งซื้อใหม่และให้ id ใหม่
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
BAD_ACTION - การกระทำไม่ถูกต้อง
SERVER_ERROR - ข้อผิดพลาดของเซิร์ฟเวอร์
ตอบกลับในรูปแบบ json:
{ "status": "error", "message": "*possible_answer*", "info": "*details*" }
คำตอบที่เป็นไปได้ในฟิลด์ "message":
NO_ID_RENT - ไม่มีรหัสการเช่า
INVALID_TIME - เวลาไม่ถูกต้อง จำนวนชั่วโมงที่มีอยู่ตั้งแต่ 4 ถึง 1344
MAX_HOURS_EXCEED - เกินเวลาสูงสุดที่มีอยู่
สูงสุด - เวลาสูงสุดที่มีอยู่
INVALID_PHONE - รหัสการเช่าไม่ถูกต้อง
RENT_DIE - ไม่สามารถขยายระยะเวลาเช่าได้ เนื่องจากหมายเลขหมดอายุแล้ว
NO_BALANCE - ยอดเงินไม่เพียงพอ
CHANNELS_LIMIT - บัญชีถูกบล็อก
* วิธีนี้ใช้ได้เฉพาะกับการเช่าผ่านผู้ให้บริการ MTT เท่านั้น
พารามิเตอร์:
$api_key - คีย์ API
$id - id การเช่า
$rent_time - ระยะเวลาเช่า
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json:
{ "status": "success", "price": 6.33 }
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
BAD_ACTION - การกระทำไม่ถูกต้อง
SERVER_ERROR - ข้อผิดพลาดของเซิร์ฟเวอร์
ตอบกลับในรูปแบบ json:
{ "status": "error", "message": "*possible_answer*" }
คำตอบที่เป็นไปได้ในฟิลด์ "message":
NO_ID_RENT - ไม่มีรหัสการเช่า
INVALID_PHONE - รหัสการเช่าไม่ถูกต้อง
INVALID_TIME - การตั้งค่าเวลาไม่ถูกต้อง
RENT_DIE - ไม่สามารถขยายระยะเวลาเช่าได้ เนื่องจากหมายเลขหมดอายุแล้ว
MAX_HOURS_EXCEED - เกินเวลาสูงสุดที่มีอยู่
สูงสุด - เวลาสูงสุดที่มีอยู่
CHANNELS_LIMIT - บัญชีถูกบล็อก
API JAVA
รวมไลบรารีใน Maven
<artifactId>SMSActivateApi</artifactId>
<version>1.0</version>
</dependency>
คุณสามารถดูตัวอย่างการลงทะเบียนได้ที่ ลิงก์ไปยัง MavenRepository
นำเข้าคลาสหลักเพื่อโต้ตอบกับ API ของ SMS-Activate
ในการใช้ไลบรารี คุณต้องมีคีย์ API ซึ่งสามารถรับได้จากหน้านี้และลิงก์ด้านล่าง
SMS-Activate API-Keyเพื่อดึงยอดเงินคงเหลือปัจจุบันในบัญชีของคุณ ให้ใช้เมธอด getBalance... หากคุณสนใจรับเงินคืนเพิ่มเติมจากยอดคงเหลือ ให้เรียกใช้เมธอด getBalanceAndCashBack.
วิธีการ getBalanceAndCashBack ส่งคืนออบเจ็กต์คลาสSMSActivateGetBalanceAndCashBack.
พารามิเตอร์:
NONE
ประเภทการส่งกลับ:
BigDecimal
พารามิเตอร์:
NONE
ประเภทการส่งกลับ:
พารามิเตอร์:
countryId(Integer) - รหัสประเทศ
service(String) - ชื่อย่อของบริการ
forward*(boolean) - ระบุว่าต้องการขอหมายเลขที่มีการโอนสายหรือไม่
operatorSet*(เซ็ต) - เซ็ตของผู้ให้บริการ
phoneException*(เซ็ต) - ยกเว้นเลขหมายนำหน้าเฉพาะสำหรับรัสเซีย เซ็ตของตัวเลขตั้งแต่ 3 ถึง 6 หลัก (7918,7900111)
* ช่องไม่บังคับ หากไม่ได้ระบุอะไรไว้ ระบบจะกำหนดจำนวนเริ่มต้นตามการตั้งค่าในโปรไฟล์
ประเภทการส่งกลับ:
พารามิเตอร์:
countryId(Integer) - รหัสประเทศ
operatorSet*(เซ็ต) - เซ็ตของผู้ให้บริการที่พร้อมใช้งานสำหรับบริการนั้นๆ
ประเภทการส่งกลับ:
พารามิเตอร์:
id(จำนวนเต็ม) - รหัสประจำตัวการเปิดใช้งาน
service(String) - ชื่อย่อของบริการ
แทนที่จะใช้รหัสประจำตัวการเปิดใช้งาน คุณสามารถส่งอ็อบเจ็กต์คลาสที่ได้รับมา SMSActivateActivation หลังจากการใช้เมธอด getNumber หรือหนึ่งในการเปิดใช้งานหลังจากใช้งานแล้ว getMultiServiceNumber.
ประเภทการส่งกลับ:
พารามิเตอร์:
countryId(Integer) - รหัสประเทศ
serviceMap(เซ็ต) - เซ็ตของบริการที่มีการซื้อการเปิดใช้งานไว้
multiForwardList(ลิสต์) - รายการบริการที่สามารถใช้การโทรต่อสายได้
operatorSet(เซ็ต) - เซ็ตของผู้ให้บริการ
ประเภทการส่งกลับ:
พารามิเตอร์:
NONE
ประเภทการส่งกลับ:
พารามิเตอร์:
countryId(Integer) - รหัสประเทศ
service(String) - ชื่อย่อของบริการ
ประเภทการส่งกลับ:
พารามิเตอร์:
countryId(Integer) - รหัสประเทศ
ประเภทการส่งกลับ:
พารามิเตอร์:
activationId(จำนวนเต็ม) - รหัสประจำตัวการเปิดใช้งาน
แทนที่จะใช้รหัสประจำตัวการเปิดใช้งาน คุณสามารถส่งอ็อบเจ็กต์คลาสที่ได้รับมา SMSActivateActivation หลังจากการใช้เมธอด getNumber หรือหนึ่งในการเปิดใช้งานหลังจากใช้งานแล้ว getMultiServiceNumber.
ประเภทการส่งกลับ:
พารามิเตอร์:
id(จำนวนเต็ม) - รหัสประจำตัวการเปิดใช้งาน
status(SMSActivateClientStatus) - สถานะที่ต้องการตั้งค่าสำหรับการเปิดใช้งาน
แทนที่จะใช้รหัสประจำตัวการเปิดใช้งาน คุณสามารถส่งอ็อบเจ็กต์คลาสที่ได้รับมา SMSActivateActivation หลังจากการใช้เมธอด getNumber หรือหนึ่งในการเปิดใช้งานหลังจากใช้งานแล้ว getMultiServiceNumber.
ประเภทการส่งกลับ:
พารามิเตอร์:
NONE
ประเภทการส่งกลับ:
พารามิเตอร์:
activationId(จำนวนเต็ม) - รหัสประจำตัวการเปิดใช้งาน
แทนที่จะใช้รหัสประจำตัวการเปิดใช้งาน คุณสามารถส่งอ็อบเจ็กต์คลาสที่ได้รับมา SMSActivateActivation หลังจากการใช้เมธอด getNumber หรือหนึ่งในการเปิดใช้งานหลังจากใช้งานแล้ว getMultiServiceNumber.
ประเภทการส่งกลับ:
ขั้นตอนการรับข้อความ SMS ฉบับเต็มพร้อมการเปิดใช้งาน
รับหมายเลขโดยใช้เมธอด getNumber จากนั้นการดำเนินการต่อไปนี้จะมีให้:
CANCEL - 8 - ยกเลิกการเปิดใช้งาน (หากหมายเลขไม่ตรงกับที่คุณต้องการ)
MESSAGE_WAS_SENT - แจ้งว่า SMS ได้ถูกส่งแล้ว (จำเป็นต้องตั้งค่าสถานะนี้เพื่อรับข้อความ SMS ฉบับเต็ม)
หลังจากตั้งค่าสถานะ MESSAGE_WAS_SENT ที่จำเป็นแล้ว ให้ตั้งค่าตัวแปรเพื่อรับ SMS โดยใช้เมธอด waitSMS พร้อมพารามิเตอร์การเปิดใช้งานและระยะเวลาในการรอ SMS
หลังจากได้รับ SMS แล้ว คุณสามารถดึงข้อมูลโดยใช้เมธอด getFullSMS จากนั้นแสดงข้อความฉบับเต็มโดยใช้เมธอด getText()
หลังจากนั้น คุณสามารถตั้งค่าการเปิดใช้งานเป็นสถานะต่อไปนี้:
สำหรับการเปิดใช้งานด้วยสถานะ MESSAGE_WAS_SENT:
CANCEL - ยกเลิกการเปิดใช้งาน
ทันทีหลังจากได้รับรหัส:
REQUEST_ONE_MORE_CODE - ขอรับ SMS อีกครั้ง
FINISH - ยืนยันรหัส SMS และเสร็จสิ้นการเปิดใช้งาน
สำหรับการเปิดใช้งานด้วยสถานะ REQUEST_ONE_MORE_CODE:
FINISH - ยืนยันรหัส SMS และเสร็จสิ้นการเปิดใช้งาน
พารามิเตอร์:
countryId(Integer) - รหัสประเทศ
service(String) - ชื่อย่อของบริการ
hours(Integer)* - ระยะเวลาเช่า
operator(String)* - ชื่อผู้ให้บริการเครือข่ายมือถือ
urlWebhook(String)* - ลิงก์สำหรับ webhook (ไม่ถูกพิจารณาโดยค่าเริ่มต้น)
WebHook คืออะไร?* พารามิเตอร์เสริม หากไม่ได้ระบุ จะใช้ค่าเริ่มต้นคือ
ประเภทการส่งกลับ:
พารามิเตอร์:
countryId(Integer) - รหัสประเทศ
operatorSet(เซ็ต) - ชุดของผู้ให้บริการเครือข่ายมือถือ
hours(Integer)* - ระยะเวลาเช่า
* พารามิเตอร์เสริม หากไม่ได้ระบุ จะใช้ค่าเริ่มต้นคือ
ประเภทการส่งกลับ:
พารามิเตอร์:
rentId(Integer) - ตัวระบุของหมายเลขที่เช่า
แทนที่จะใช้ rentId คุณสามารถส่งออบเจ็กต์คลาสที่ได้ผลลัพธ์มาแทนได้ SMSActivateRentActivation หลังจากการใช้เมธอด getRentNumber
ประเภทการส่งกลับ:
Email API
คำอธิบายสถานะ API
3 - กำลังรอ
4 - ยกเลิก
5 - สำเร็จ
คำอธิบาย:
ปฏิบัติตามหลักการของ REST API อย่างเคร่งครัดมากขึ้น และเพิ่มจำนวนกล่องจดหมาย gmail.com สำหรับการลงทะเบียนบัญชี Telegram
พารามิเตอร์:
$api_key - คีย์ API
$site- เว็บไซต์ที่คุณต้องการอีเมลสำหรับ
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{
"status":"OK",
"response":{
"zones":[
{
"name":"info",
"cost":2.5
},
...
],
"popular":[
{
"name":"mail.ru",
"cost":6,
"count":159008
},
...
]
}
}
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_SITE- ไม่ได้ระบุเว็บไซต์
BAD_KEY - คีย์ API ไม่ถูกต้อง
BAD_ACTION - การกระทำไม่ถูกต้อง
พารามิเตอร์:
$api_key - คีย์ API
$site - เว็บไซต์ที่คุณต้องการอีเมลสำหรับ
$mail_type - ประเภทอีเมล: โดเมนหรือโซนยอดนิยม (1 - โซน 2 - ยอดนิยม)
$mail_domain - โซนหรือโดเมนที่เลือก
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{
"status":"OK",
"response":{"email":"[email protected]","id":241}
}
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
BAD_ACTION - การกระทำไม่ถูกต้อง
MAIL_TYPE_ERROR - ไม่พบโดเมนดังกล่าวสำหรับเว็บไซต์ที่ระบุ
CHANNELS_LIMIT - บัญชีถูกบล็อก
พารามิเตอร์:
$api_key - คีย์ API
$id- รหัสของอีเมลที่ต้องการเปิดใช้งานอีกครั้ง
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{
"status": "OK",
"response": {
"email": "[email protected]",
"id": 360
}
}
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_KEY - คีย์ API ไม่ถูกต้อง
BAD_ACTION - การกระทำไม่ถูกต้อง
BLOCKED_SITE - เว็บไซต์ที่ถูกบล็อก
BAD_BALANCE - ยอดเงินไม่เพียงพอ
ACTIVATION_NOT_FOUND - ไม่พบการเปิดใช้งาน
CHANNELS_LIMIT - บัญชีถูกบล็อก
พารามิเตอร์:
$api_key - คีย์ API
$page- หมายเลขหน้า
$per_page- จำนวนการซื้อต่อหน้า
$search- แถบค้นหา
$sort- ทิศทางการเรียงลำดับ (desc, asc)
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{
"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
}
}
พารามิเตอร์:
$api_key - คีย์ API
$id- รหัสการซื้อ
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{
"status":"OK",
"response":true
}
ข้อผิดพลาดที่อาจเกิดขึ้น:
EARLY_CANCEL_DENIED - คุณไม่สามารถยกเลิกอีเมลภายใน 2 นาทีแรกได้
พารามิเตอร์:
$api_key - คีย์ API
$id- รหัสของอีเมลที่ซื้อแล้ว ซึ่งจะได้รับหลังจากทำการซื้ออีเมล
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{
"status":"OK",
"response":{
"value":"Содержания письма"
}
}
ซอฟต์แวร์พันธมิตร API
พารามิเตอร์:
$api_key - คีย์ API
$id- รหัสของซอฟต์แวร์ที่คุณต้องการซื้อ
คำตอบ:
การตอบกลับจากบริการจะอยู่ในรูปแบบ json ตัวอย่าง:
{
"status": "success",
"key": "F5qrzFoY6afj3zrEq7SeMplbx",
"manual": "Software download link:"
}
ข้อผิดพลาดที่อาจเกิดขึ้น:
BAD_DATA - รหัสไม่ถูกต้องหรือรหัสไม่ใช่ตัวเลข
BAD_ACTION - การดำเนินการไม่ถูกต้องหรือตัวแทนจำหน่ายยังไม่ได้รับการยืนยัน
<?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.pics 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





















































