Проект создан для проверки номеров телефонов при массовых регистрациях аккаутов.
Запросы отправляются по адресу: https://telcheck.org/api/:SoftName/:ServiceDomain/:SmsServiceName/:Tel
Каждый запрос должен быть подписан токеном доступа который уникальный для каждого софта, пример генерации сигнатуры:
// Golang
package main
import (
"crypto/md5"
"fmt"
)
func main() {
softName := "vak-sms.com"
serviceDomain := "sbermarket.ru"
smsServiceName := "vak-sms.com"
tel := 79991112233
sign, err := GenerateMD5Signature(softName, serviceDomain, smsServiceName, tel)
fmt.Println(sign, err)
// "2e38efde353ce61f56bd4d4742bb19d9"
}
func GenerateMD5Signature(softName string, serviceName string, smsServiceName string, tel int) (string, error) {
token := "84b65cdb-329e-4029-8242-d23c9e2a1014"
originalString := softName + "/" + serviceName + "/" + smsServiceName + "/" + fmt.Sprintf("%d", tel) + "/" + token
sign := md5.Sum([]byte(originalString))
return fmt.Sprintf("%x", sign), nil
}
# Python
import hashlib
def generate_md5_signature(soft_name: str, service_domain: str, sms_service_name: str, tel: int):
token = "84b65cdb-329e-4029-8242-d23c9e2a1014"
original_string = f"{soft_name}/{service_domain}/{sms_service_name}/{tel}/{token}"
sign = hashlib.md5(original_string.encode()).hexdigest()
return sign
soft_name = 'vak-sms.com'
service_domain = 'sbermarket.ru'
sms_service_name = 'vak-sms.com'
tel = 79991112233
sign = generate_md5_signature(soft_name, service_domain, sms_service_name, tel)
print(sign)
# '2e38efde353ce61f56bd4d4742bb19d9'
GET https://telcheck.org/api/:SoftName/:ServiceDomain/:SmsServiceName/:Tel/?Signature=:Sign
Варианты ответа:
HTTP status code: 200 OK: Это стандартный ответ для успешных HTTP-запросов.
Response application/json:
{"SmsServiceName": "vak-sms.com", "SoftName": "TGPrime", "Tel": 79991112233, "ServiceDomain": "telegram.org", "Status": 1, "Message": "Аккаунт зарегистрирован"}
HTTP status code: 400 Bad Request: Сервер не понял запрос из-за неверного синтаксиса.
HTTP status code: 403 Forbidden: Нет доступа к запрашиваемому ресурсу.
{"Message": "Missing signature parameter"}
{"Message": "You need to get a token for your app"}
{"Message": "Invalid signature"}
HTTP status code: 404 Not Found: Сервер не может найти запрошенный ресурс. Данные о номере :Tel и сервисе :ServiceDomain не найдены в базе данных
Response application/json:
{"Status": 0, "Message": "Номер и сервис не найдены в базе данных"}
HTTP status code: 500 Internal Server Error: Общий код для неизвестной ошибки на сервере.
POST https://telcheck.org/api/:SoftName/:ServiceDomain/:SmsServiceName/:Tel
В теле запроса необходимо передать статус.
Request application/json:
{"Status": 1, "Signature": ":Sign"}
Варианты ответа:
HTTP status code: 201 Created: Запись о номере :Tel и сервисе :ServiceDomain успешно создана.
Response application/json:
{"Status": 1, "Message": "На номер успешно зарегистрирован аккаунт"}
Возможные статусы:
{"Status": 1}
- На номер успешно зарегистрирован аккаунт, используется по умолчанию
{"Status": 2}
- На номер зарегистрирован аккаунт и на нем уставновлен код 2FA
{"Status": 3}
- Номер забанен в сервисе
HTTP status code: 400 Bad Request: Сервер не понял запрос из-за неверного синтаксиса.
HTTP status code: 403 Forbidden: Нет доступа к запрашиваемому ресурсу.
{"Message": "Missing signature parameter"}
{"Message": "You need to get a token for your app"}
{"Message": "Invalid signature"}
HTTP status code: 404 Not Found: Сервер не может найти запрошенный ресурс.
HTTP status code: 500 Internal Server Error: Общий код для неизвестной ошибки на сервере.