Dimar FZC LLC
Flamingo Villas A-32-01-05-03 25314 아랍에미리트, 아즈만
+971585072431, /assets/img/icons/logo/logo.svg, [이메일 보호됨]

SMS-Activate와 연동하기 위한 API 프로토콜

API는 귀하의 소프트웨어와 당사 서버 간의 프로토콜입니다.

API는 귀사 측에서 SMS, OTP 및 PVA 수신 과정을 자동화하는 데 필요합니다.

당사의 API는 경쟁사 사이트와 완전히 호환됩니다.

모든 요청은 https://api.sms-activate.ai/stubs/handler_api.php로 전송되어야 합니다.

POST 또는 GET 요청.

모든 요청에는 api_key GET 매개변수 형태의 API 키가 포함되어야 합니다.

PHP로 구현된 프로토콜 다운로드 Python으로 구현된 готовый 프로토콜 다운로드

인증 API

사용 가능한 가상 번호 수량 조회
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getNumbersStatus&country=$country&operator=$operator

매개변수:

$api_key - API 키

$country * - 국가 번호 표 참조

$운영자 * 이동통신사 번호. 쉼표로 구분하여 여러 개 지정 가능(다음 국가에서만 이용 가능:

러시아
메가폰, MTS, 비라인, 텔레2, 로스텔레콤, 모두
우크라이나
키이스타, 라이프, 유텔, MTS, 보다폰
카자흐스탄
tele2, beeline, activ, altel

** 사용 가능 국가: $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 - 포함.

전체 서비스 목록

서비스별 상위 국가 조회 무료 가격
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getTopCountriesByService&service=$service&freePrice=$freePrice

매개변수:

$api_key - API 키

$service * - 서비스 표 참조

* 선택적 매개변수입니다. 지정하지 않으면 기본적으로 모든 서비스에 대해 상위 국가가 표시됩니다.

$freePrice * - 선택적 매개변수입니다. 제공될 경우 true, 수량과 가격은 Free Price 기준에 따라 제공됩니다.

응답:

서비스 응답은 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 } }, ... }
잔액 조회
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getBalance

캐시백 계정 잔액 조회:

https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getBalanceAndCashBack

* 캐시백 계정 설정에서 '활성화에 캐시백 사용' 체크박스가 선택되어 있으면 누적된 캐시백을 반영한 잔액을 반환합니다.

매개변수:

$api_key - API 키

응답:

ACCESS_BALANCE: '계정 잔액'

가능한 오류:

BAD_KEY - 유효하지 않은 API 키

ERROR_SQL - SQL 서버 오류

사용 가능한 통신사 조회
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getOperators&country=$country

* 전송된 국가에서 사용 가능한 모든 운영자를 반환합니다. 국가가 지정되지 않으면 각 국가에서 사용 가능한 모든 운영자를 반환합니다.

매개변수:

$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 서버 오류

OPERATORS_NOT_FOUND - 기록을 찾을 수 없습니다(예: 존재하지 않는 국가가 전달됨)

활성화된 인증 내역 조회
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getActiveActivations

매개변수:

$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 서버 오류

NO_ACTIVATIONS - 항목을 찾을 수 없습니다(활성화된 활성화 없음)

번호 요청 무료 가격
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getNumber&service=$service&forward=$forward&operator=$operator&ref=$ref&country=$country&phoneException=$phoneException&maxPrice=maxPrice&useCashBack=$useCashBack&activationType=$activationType&language=$language&userId=$userId

매개변수:

$api_key - API 키

$service - 주문할 서비스 표 참조

$forward * - 포워딩 기능이 포함된 번호를 요청할지 여부

* 선택적 매개변수로, 0(실행 안 함, 기본값) 또는 1(실행)을 허용합니다.

$maxPrice * - Free Price에서 번호를 구매할 준비가 된 최대 가격

* 선택적 매개변수이며, 지정하지 않으면 일반 가격으로 구매가 진행됩니다.

$phoneException * - 러시아 번호의 접두사 제외. 쉼표로 구분하여 입력하세요. 기록 형식: 국가 코드와 마스크의 3~6자리 숫자(예: 7918, 7900111). 기본값은 계정에 지정된 값입니다.

$operator*는 해당 번호의 이동통신사입니다. 쉼표로 구분하여 여러 개를 지정할 수 있습니다(**에서만 사용 가능)

$activationType - 활성화 유형: 0 - SMS 수신(기본값), 1 - 번호 제공, 2 - 음성 통화

$language - 파싱 언어(음성 활성화 시 필수) 표 참조

$userId * - 활성화 통계가 불량한 경우 차단할 사용자 ID이지만, 리셀러의 자체 계정에는 영향을 미치지 않습니다.

러시아
메가폰, MTS, 비라인, 텔레2, 로스텔레콤, 모두
우크라이나
키이스타, 라이프, 유텔, MTS, 보다폰
카자흐스탄
tele2, beeline, activ, altel

* 선택 사항 필드

** 사용 가능 국가: $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 서버 오류

BANNED:'YYYY-m-d H-i-s' - 계정이 차단된 시간

WRONG_EXCEPTION_PHONE - 잘못된 제외 접두사

NO_BALANCE_FORWARD - 전화 연결 구매 자금이 부족합니다

CHANNELS_LIMIT - 계정 차단됨

NO_NUMBERS - 번호 없음

선택한 국가에서 운영되지 않거나 선택한 서비스를 지원하지 않는 특정 통신사의 번호를 요청하려는 경우, 요청 매개변수와 일치하는 첫 번째 통신사의 번호가 반환됩니다.

V2 번호 요청 무료 가격
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getNumberV2&service=$service&forward=$forward&operator=$operator&ref=$ref&country=$country&phoneException=$phoneException&maxPrice=maxPrice&activationType=$activationType&language=$language&userId=$userId

이 메서드는 다음 메서드와 유사하게 작동합니다. 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를 수신할 때 설정에서 웹훅 기능을 활성화했다면, 지정된 주소로 POST 요청을 통해 SMS 정보를 전송합니다.

응답:

응답 형식은 다음과 같습니다:

{
"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회까지 재요청을 보냅니다.

이 기능은 다음에서 활성화할 수 있습니다: 프로필 설정

여러 서비스를 위한 가상 번호 주문
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getMultiServiceNumber&multiService=$service&multiForward=$forward&operator=$operator&ref=$ref&country=$country

매개변수:

$api_key - API 키

$service - 주문할 서비스 표 참조

$forward * - 포워딩 기능이 포함된 번호를 요청할지 여부

* 선택적 매개변수이며, 전달 문자는 쉼표로 구분됩니다. 전달되는 서비스의 수와 전달 자릿수가 일치해야 합니다. $service. 리디렉션과 함께 전송할 수 있는 서비스는 1개만 허용됩니다. 예를 들어 "0,1,0,0"은 올바르고, "0,1,1,0"은 잘못되었습니다. 값은 0(실행 안 함, 기본값) 또는 1(실행)을 사용합니다.

$operator * - 번호의 이동통신사로, 쉼표로 구분하여 여러 개를 지정할 수 있습니다(**에서만 사용 가능):

러시아
메가폰, MTS, 비라인, 텔레2, 로스텔레콤, 모두
우크라이나
키이스타, 라이프, 유텔, MTS, 보다폰
카자흐스탄
tele2, beeline, activ, altel

$ref - 추천인 ID를 전달합니다.

$country - 국가 번호 표 참조

API를 통해 번호를 발급받음으로써 귀하는 다음 내용에 동의한 것으로 간주됩니다. 프로젝트 규칙 프로젝트 규칙

응답:

NO_NUMBERS - 번호 없음

NO_BALANCE - 잔액이 부족합니다

{{'phone':phone,'activation':activation,'service':service},
{'phone':phone,'activation':activation,'service':service}}
, 여기서 (phone - 작업 ID, activation - 전화번호, service - 서비스)

가능한 오류:

BAD_ACTION - 잘못된 작업

BAD_SERVICE - 잘못된 서비스 이름

BAD_KEY - 유효하지 않은 API 키

ERROR_SQL - SQL 서버 오류

BANNED:'YYYY-m-d H-i-s' - 계정이 차단된 시간

활성화 상태 변경
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=setStatus&status=$status&id=$id&forward=$forward

매개변수:

$api_key - API 키

$id - 활성화 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 서버 오류

NO_ACTIVATION - 활성화 ID가 존재하지 않습니다

BAD_SERVICE - 잘못된 서비스 이름

BAD_STATUS - 잘못된 상태입니다

BAD_KEY - 유효하지 않은 API 키

BAD_ACTION - 잘못된 작업

WRONG_ACTIVATION_ID - 잘못된 ID이거나 ID가 숫자가 아닙니다.

활성화 상태 가져오기
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getStatus&id=$id

매개변수:

$api_key - API 키

$id - 활성화 ID

응답:

STATUS_WAIT_CODE - SMS 대기 중

STATUS_WAIT_RETRY: '과거, 일치하지 않는 코드' - 코드 명확화 대기 중

STATUS_WAIT_RESEND - SMS 재전송 대기 중 *

* 소프트웨어는 SMS 재전송을 누르고 상태를 6으로 변경해야 합니다

STATUS_CANCEL - 활성화가 취소되었습니다

STATUS_OK: '활성화 코드' - 수신된 코드

가능한 오류:

NO_ACTIVATION - 활성화 ID가 존재하지 않습니다

ERROR_SQL - SQL 서버 오류

BAD_KEY - 유효하지 않은 API 키

BAD_ACTION - 잘못된 작업

활성화 상태 가져오기 버전 2
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getStatusV2&id=$id

매개변수:

$api_key - API 키

$id - 활성화 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 서버 오류

BAD_KEY - 유효하지 않은 API 키

BAD_ACTION - 잘못된 작업

활성화 내역 가져오기
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getHistory&start=$start&end=$end&offset=$offset&limit=$limit

매개변수:

$api_key - API 키

$start - Unix 타임스탬프 형식의 타임스탬프(선택 사항) - 활성화를 고려할 시작 날짜

$end - Unix 타임스탬프 형식의 타임스탬프(선택 사항) - 활성화를 고려할 종료 날짜

$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 서버 오류

BAD_KEY - 유효하지 않은 API 키

BAD_ACTION - 잘못된 작업

서비스별 상위 10개 국가 가져오기
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getListOfTopCountriesByService&service=$service

매개변수:

$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 서버 오류

BAD_KEY - 유효하지 않은 API 키

WRONG_SERVICE - 잘못된 서비스

BAD_ACTION - 잘못된 작업

수신 전화 상태 확인
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getIncomingCallStatus&activationId=$id

매개변수:

$api_key - API 키

$id - 활성화 ID

응답:

서비스 응답은 JSON 형식으로 반환됩니다. 예시:

{"status":"2","phone":false}

가능한 상태:

2 - 새로운 활성화

3 - 성공적으로 완료됨

4 - 취소됨

5 - 반환됨

가능한 오류:

BAD_KEY - 유효하지 않은 API 키

INVALID_ACTIVATION_ID - 잘못된 활성화 ID

국가별 현재 가격 조회
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getPrices&service=$service&country=$country

매개변수:

$api_key - API 키

$service서비스 약칭 (선택 사항, 기본값은 모든 서비스) 표 참조

$country국가 코드명 (선택 사항, 기본값은 모든 국가) 표 참조

응답:

JSON - 객체 형식
{"Country":{"Service":{"cost":Cost,"count":Count}}}

인증 서비스의 최신 가격 정보 가져오기
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getPricesVerification&service=$service

매개변수:

$api_key - API 키

$service서비스 약칭 (선택 사항, 기본값은 모든 서비스) 표 참조

응답:

JSON - 객체 형식
{"Service":{"Country":{"count":Quantity,"price":"Price"}}}

전체 국가 목록 가져오기
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getCountries

매개변수:

$api_key - API 키

응답:

JSON - 객체 형식 {{'Страна':{'id':0,'rus':"Россия","eng:"Russia","chn":"俄罗斯","visible":1,"retry":1,"rent":1,"multiService":1}},

여기서 (

id : 국가 ID;

rus : 러시아어 국가명;

eng : 영어 국가명;

chn : 중국어 국가명;

visible : 0 - 사이트에 표시되지 않음, 1 - 표시됨;

retry : 0 - SMS 재발송 불가, 1 - 가능;

rent : 0 - 대여 불가 국가, 1 - 대여 가능;

multiService : 0 - 다중 서비스 불가, 1 - 가능.)

전체 서비스 목록 가져오기
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getServicesList

매개변수:

$api_key- API 키

$country *- 국가 ID. 국가를 지정하면 선택한 국가에 대한 가격이 있는 서비스를 반환합니다.

$lang *- `name` 제공 시 사용할 언어. 가능한 값: 'ru', 'en', 'es', 'cn'. 기본값은 'en'입니다.

* 선택적 매개변수

응답:

JSON - 객체 형식 { "status": "success", "services": [ { "code": "aoo", "name": "페가수스 항공" } ] }

전환 번호를 위한 추가 서비스

전용 번호로 첫 번째 SMS를 수신한 후, Yula, Yandex, Avito 등 기타 관련 서비스를 추가로 구매할 수 있습니다.

추가 서비스 비용은 단 5p입니다.

https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getAdditionalService&service=$service&id=$id

매개변수:

$api_key - API 키

$service - 서비스 약칭은 표를 참조하세요. 표 참조

$id - 상위 활성화 ID

응답:

ADDITIONAL:$id:$phone - 새로운 활성화가 성공적으로 생성되었습니다. 여기서 ID는 추가 활성화의 ID이며, phone은 전화번호입니다.

가능한 오류:

WRONG_ADDITIONAL_SERVICE - 잘못된 추가 서비스 (전송 전용 서비스만 허용됨)

WRONG_ACTIVATION_ID - 잘못된 상위 활성화 ID

WRONG_SECURITY - 리디렉션 없이 활성화 ID를 전송하려 했거나, 완료되거나 비활성화된 활성화에 대한 오류가 발생했습니다.

REPEAT_ADDITIONAL_SERVICE - 이미 구매한 서비스를 다시 주문하려고 할 때 오류가 발생합니다. NO_BALANCE - 잔액 부족

ERROR_SQL- 데이터베이스 오류, 고객 서비스에 문의하십시오.

가상 번호 재활성화

번호에서 성공적인 활성화를 수행한 경우, 다시 활성화할 수 있습니다.

추가 활성화 비용은 국가와 서비스에 따라 결정됩니다. 구체적인 비용은 다음에서 확인할 수 있습니다.

https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getExtraActivation&activationId=$activationId

매개변수:

$api_key - API 키

$activationId - 상위 활성화 ID

응답:

ACCESS_NUMBER:$id:$phone - 새로운 활성화가 성공적으로 생성되었습니다. 여기서 $id는 추가 활성화의 ID이며, $phone은 전화번호입니다.

가능한 오류:

RENEW_ACTIVATION_NOT_AVAILABLE- 해당 번호는 추가 활성화에 사용할 수 없습니다.

WRONG_ACTIVATION_ID - 잘못된 상위 활성화 ID

ERROR_SQL- 데이터베이스 오류, 고객 서비스에 문의하십시오.

NEW_ACTIVATION_IMPOSSIBLE- 추가 활성화가 불가능합니다.

NO_BALANCE - 계정 잔액이 없습니다.

추가 번호 활성화 가격 확인

번호의 추가 활성화 가능 여부와 비용을 확인할 수 있습니다.

https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=checkExtraActivation&activationId=$activationId

매개변수:

$api_key - API 키

$activationId - 상위 활성화 ID

응답:

JSON - 객체 형식 {'status': 'success', 'cost':200,"service":"tw","phone":777777777,"country":14},

가능한 오류:

RENEW_ACTIVATION_NOT_AVAILABLE- 해당 번호는 추가 활성화에 사용할 수 없습니다.

WRONG_ACTIVATION_ID - 잘못된 상위 활성화 ID

SIM_OFFLINE - SIM 카드 오프라인

음성 메시지 반복 파싱
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=parseCall&id=$id&newLang=$newLang

매개변수:

$api_keyAPI 키

$id - 활성화 ID

$newLang - 새로운 파싱 언어 표 참조

응답:

응답 형식은 다음과 같습니다:

{
"result": "OK"
}

STATUS_CANCEL - 활성화가 취소되었습니다

NO_CALL- 전화를 받지 못했습니다

PARSE_COUNT_EXCEED- 파싱 시도 횟수 제한 (최대 4회)

가능한 오류:

WRONG_ACTIVATION_ID - 유효하지 않은 ID입니다. 활성화 정보가 존재하지 않습니다.

ERROR_SQL - SQL 서버 오류

BAD_KEY - 유효하지 않은 API 키

BAD_ACTION - 잘못된 작업

대여 API

사용 가능한 국가 및 서비스 요청
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getRentServicesAndCountries&rent_time=$time&operator=$operator&country=$country&incomingCall=$incomingCall

매개변수:

$api_key - API 키

$time* - 대여 시간 (기본값: 4시간)

$operator* - 번호의 이동통신사입니다. 쉼표로 구분하여 여러 개를 지정할 수 있습니다 (기본값: Any).

$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 - 해당 국가의 번호를 사용할 수 없습니다

가상 번호 대여 주문
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getRentNumber&service=$service&rent_time=$time&operator=$operator&country=$country&url=$url&incomingCall=$incomingCall

매개변수:

$api_key - API 키

$service - 번호를 발급받아야 하는 서비스입니다

$time* - 시간 단위의 대여 시간 (기본값: 4시간). 다음으로 이용 가능한 기간은 12시간, 그다음은 24시간입니다. 하루 이상 대여를 요청하려면 24, 48, 72 등을 입력해야 합니다.

$operator* - 번호의 이동통신사입니다. 쉼표로 구분하여 여러 개를 지정할 수 있습니다 (기본값: Any).

$country* - 국가 (기본값: 러시아)

$url * - 웹훅 링크입니다 (기본적으로 고려되지 않음).

$incomingCall * - 전달된 경우 "true"전화 수신 기능을 지원하는 번호를 받습니다

웹훅(WebHook)이란 무엇인가요?

* 선택적 매개변수입니다. 지정하지 않으면 기본 매개변수가 사용됩니다.

응답:

서비스 응답은 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 - 계정 차단됨

대여 상태 확인
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getRentStatus&id=$id&page=$page&size=$size

매개변수:

$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가 있을 때만 성공합니다 (box 'quantity' > 0).

가능한 오류:

BAD_KEY - 유효하지 않은 API 키

JSON 형식으로 답변:

{ "status": "error", "message": "*possible_answer*" }

필드에서 가능한 답변 "message":

NO_ID_RENT - 대여 ID가 지정되지 않았습니다

INVALID_PHONE - 해당 번호는 귀하가 대여한 것이 아닙니다 (유효하지 않은 대여 ID)

STATUS_FINISH - 대여 요금이 결제되고 완료되었습니다

STATUS_CANCEL - 환불 처리와 함께 대여가 취소되었습니다

STATUS_WAIT_CODE - 첫 번째 SMS 수신 대기 중

STATUS_REVOKE - 번호가 차단되었으며, 고객님의 자금은 환불되었습니다

대여 상태 변경
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=setRentStatus&id=$id&status=$status

매개변수:

$api_key - API 키

$id - 번호 주문 시 응답에서 받은 대여 ID

$status - 상태 변경 코드 (번호)

상태는 다음과 같을 수 있습니다:

1
완료
2
취소

응답:

서비스 응답은 JSON 형식으로 반환됩니다:

{ "status": "success" }

가능한 오류:

BAD_KEY - 유효하지 않은 API 키

JSON 형식으로 답변:

{ "status": "error", "message": "*possible_answer*" }

필드에서 가능한 답변 "message":

NO_ID_RENT - 대여 ID가 지정되지 않았습니다

INCORECT_STATUS - 상태가 누락되었거나 잘못 지정되었습니다

CANT_CANCEL - 대여를 취소할 수 없습니다 (20분 이상 경과)

INVALID_PHONE - 해당 번호는 귀하가 대여한 것이 아닙니다 (유효하지 않은 대여 ID)

ALREADY_FINISH - 대여가 이미 완료되었습니다

ALREADY_CANCEL - 대여가 이미 취소되었습니다

SERVER_ERROR - 서버 오류

현재 활성화 목록
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getRentList

👉주의! 이 방법은 최근 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 - 서버 오류

대여 기간 연장
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=continueRentNumber&id=$id&rent_time=$time

매개변수:

$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 - 대여 ID가 없습니다

INVALID_TIME - 잘못된 시간입니다. 사용 가능한 시간은 4시간에서 1344시간 사이입니다

MAX_HOURS_EXCEED - 사용 가능한 최대 시간을 초과했습니다

정보:

최대 - 사용 가능한 최대 시간

INVALID_PHONE - 잘못된 대여 ID

RENT_DIE - 번호가 만료되어 임대 연장이 불가능합니다

NO_BALANCE - 잔액 부족

CHANNELS_LIMIT - 계정 차단됨

대여 갱신 비용 확인
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getContinueRentPriceNumber&id=$id&rent_time=$time

* 이 방법은 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 - 대여 ID가 없습니다

INVALID_PHONE - 잘못된 대여 ID

INVALID_TIME - 잘못된 시간 설정

RENT_DIE - 번호가 만료되어 임대 연장이 불가능합니다

MAX_HOURS_EXCEED - 사용 가능한 최대 시간을 초과했습니다

정보:

최대 - 사용 가능한 최대 시간

CHANNELS_LIMIT - 계정 차단됨

API JAVA

작업 시작

Maven에 라이브러리 포함

<dependency><groupId>ru.sms-activate</groupId>
<artifactId>SMSActivateApi</artifactId>
<version>1.0</version>
</dependency>

다음 링크에서 등록 예시를 확인할 수 있습니다: MavenRepository 링크

SMS-Activate API와 상호작용하기 위한 메인 클래스를 가져옵니다.

import ru.sms_activate.SMSActivateApi

라이브러리를 사용하려면 API 키가 필요하며, 이 페이지와 아래 링크에서 발급받을 수 있습니다.

SMS-Activate API 키
잔액 작업 예시

계정의 현재 잔액을 확인하려면 다음 메서드를 사용하세요. getBalance... 잔액 외에도 캐시백 정보가 필요하다면 다음 메서드를 호출하세요. getBalanceAndCashBack.

방법 getBalanceAndCashBack 클래스 객체를 반환합니다.SMSActivateGetBalanceAndCashBack.

getBalance: 현재 계정 잔액 조회

매개변수:

없음

반환 타입:

BigDecimal

getBalanceAndCashBack: 잔액과 캐시백 금액을 총 잔액으로 조회

매개변수:

없음

getNumber: 활성화 번호 받기

매개변수:

countryId(Integer) - 국가 식별자.

service(String) - 서비스 약칭.

forward*(boolean) - 전화転送 기능이 포함된 번호 요청 여부.

operatorSet*(세트) - 운영자 세트.

phoneException*(세트) - 러시아 전용 접두사 제외, 3~6자리 숫자 세트(예: 7918, 7900111).

* 선택 항목. 아무것도 지정하지 않으면 프로필 설정에 따라 기본 수량이 제공됩니다.

반환 타입:

SMSActivateActivation

getNumberStatus: 사용 가능한 서비스에 대한 정보 가져오기

매개변수:

countryId(Integer) - 국가 식별자.

operatorSet*(세트) - 해당 서비스에서 이용 가능한 운영자 세트

getAdditionalService: 전화 연결 번호에 대한 추가 서비스를 반환합니다.

매개변수:

id(정수) - 활성화 식별자

service(String) - 서비스 약칭.

활성화 식별자 대신 수신된 클래스 객체를 전달할 수 있습니다 SMSActivateActivation 메서드 사용 후 getNumber 또는 사용 후 활성화 중 하나 getMultiServiceNumber.

getMultiServiceNumber: 여러 서비스에 대한 활성화 받기

매개변수:

countryId(Integer) - 국가 식별자.

serviceMap(세트) - 활성화를 구매한 서비스 세트

multiForwardList(목록) - 전화 연결이 가능한 서비스 목록

operatorSet(세트) - 운영자 세트.

getAllPrices: 전체 활성화 가격 목록 가져오기

매개변수:

없음

반환 타입:

SMSActivateGetPriceInfo

getPricesByCountryIdAndServiceShortName: 국가 및 서비스별 활성화 가격 목록 가져오기

매개변수:

countryId(Integer) - 국가 식별자.

service(String) - 서비스 약칭.

반환 타입:

SMSActivateGetPriceInfo

getPricesAllServicesByCountryId: 국가별 활성화 가격 목록 가져오기

매개변수:

countryId(Integer) - 국가 식별자.

반환 타입:

SMSActivateGetPriceInfo

getStatus: 활성화 상태 가져오기

매개변수:

activationId(정수) - 활성화 식별자

활성화 식별자 대신 수신된 클래스 객체를 전달할 수 있습니다 SMSActivateActivation 메서드 사용 후 getNumber 또는 사용 후 활성화 중 하나 getMultiServiceNumber.

setStatus: 활성화 상태 설정

매개변수:

id(정수) - 활성화 식별자

status(SMSActivateClientStatus) - 활성화에 설정할 상태

활성화 식별자 대신 수신된 클래스 객체를 전달할 수 있습니다 SMSActivateActivation 메서드 사용 후 getNumber 또는 사용 후 활성화 중 하나 getMultiServiceNumber.

getCountries: 국가 정보 가져오기

매개변수:

없음

getFullSms: 번호로부터 SMS 전체 텍스트 가져오기

매개변수:

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 코드 확인 및 활성화 완료

getRentNumber: 대여 옵션으로 번호 받기

매개변수:

countryId(Integer) - 국가 식별자.

service(String) - 서비스 약칭.

hours(정수형)* - 대여 시간

operator(문자열)* - 이동통신사 이름

urlWebhook(문자열)* - 웹훅 링크 (기본적으로 고려되지 않음)

웹훅(WebHook)이란 무엇인가요?

* 선택적 매개변수. 지정하지 않으면 기본값은 다음과 같습니다.

반환 타입:

SMSActivateRentActivation

GetRentServicesAndCountriesRun: 대여 가능한 서비스 및 국가 조회

매개변수:

countryId(Integer) - 국가 식별자.

operatorSet(세트) - 이동통신사 집합

hours(정수형)* - 대여 시간

* 선택적 매개변수. 지정하지 않으면 기본값은 다음과 같습니다.

GetRentStatusJava: 대여 상태 조회

매개변수:

rentId(정수형) - 대여된 번호의 식별자

rentId 대신 결과 클래스 객체를 전달할 수 있습니다. SMSActivateRentActivation 메서드 사용 후 getRentNumber

반환 타입:

SMSActivateRentStatus

이메일 API

API 상태 설명

3 - 대기 중

4 - 취소됨

5 - 성공

메일 API 버전 2

설명:

REST API 원칙을 더 엄격하게 준수하고 Telegram 계정 등록을 위한 gmail.com 메일박스 수를 늘렸습니다.

제안 목록 가져오기
https://api.sms-activate.ai/stubs/handler_api.php?action=getDomains&api_key=$api_key&site=$site

매개변수:

$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 - 잘못된 작업

이메일로 인증 구매하기
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=buyMailActivation&site=$site&mail_type=$mail_type&mail_domain=$mail_domain

매개변수:

$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 - 계정 차단됨

메일 재활성화
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=reorderMailActivation&id=$id

매개변수:

$api_key - API 키

$id- 재활성화가 필요한 메일의 ID

응답:

서비스 응답은 JSON 형식으로 반환됩니다. 예시:

{
                            "status": "OK",
                        "response": {
                            "email": "[email protected]",
                            "id": 360
                            }
                        }

가능한 오류:

BAD_KEY - 유효하지 않은 API 키

BAD_ACTION - 잘못된 작업

BLOCKED_SITE - 차단된 웹사이트

BAD_BALANCE - 잔액 부족

ACTIVATION_NOT_FOUND - 활성화를 찾을 수 없습니다

CHANNELS_LIMIT - 계정 차단됨

활성 구매 목록 가져오기
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=getMailHistory&page=$page&per_page=$per_page&search=$search&sort=$sort

매개변수:

$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
                        }
                        }
이메일 구매 취소
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=cancelMailActivation&id=$id

매개변수:

$api_key - API 키

$id- 구매 ID

응답:

서비스 응답은 JSON 형식으로 반환됩니다. 예시:

{
                        "status":"OK",
                        "response":true
                        }

가능한 오류:

EARLY_CANCEL_DENIED - 처음 2분 동안은 메일을 취소할 수 없습니다.

이메일 수신 여부 확인
https://api.sms-activate.ai/stubs/handler_api.php?api_key=$api_key&action=checkMailActivation&id=$id

매개변수:

$api_key - API 키

$id- 구매한 이메일의 ID로, 이메일 구매 후 반환됩니다

응답:

서비스 응답은 JSON 형식으로 반환됩니다. 예시:

{
                        "status":"OK",
                        "response":{
                            "value":"Содержания письма"
                        }
                        }

API 파트너 소프트웨어

파트너 소프트웨어 구매
https://api.sms-activate.ai/stubs/handler_api.php?action=buyPartnerProduct&productId=$id&api_key=$api_key

매개변수:

$api_key - API 키

$id- 구매해야 하는 소프트웨어의 ID

응답:

서비스 응답은 JSON 형식으로 반환됩니다. 예시:

{                            
                            "status": "success",
                            "key": "F5qrzFoY6afj3zrEq7SeMplbx",
                            "manual": "Software download link:"                            
                        }

가능한 오류:

BAD_DATA - 잘못된 ID이거나 ID가 숫자가 아닙니다

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.skin 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

{{ texts.verificationVoiceTextFirst }}

{{ texts.verificationVoiceTextSecond }}

{{ texts.verificationVoiceTextThird }}