Πρωτόκολλο 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 Λήψη έτοιμης υλοποίησης του πρωτοκόλλου σε PythonAPI Ενεργοποίησης
Παράμετροι:
$api_key - Κλειδί API
$country * - κωδικός χώρας δείτε τον πίνακα
$πάροχος * αριθμοί κινητών παρόχων, μπορείτε να καθορίσετε πολλούς αριθμούς χωρισμένους με κόμματα (διαθέσιμο μόνο για:
** διαθέσιμο για $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
}
}, ...
}
Αίτημα υπολοίπου με λογαριασμό cashback:
* επιστρέφει το υπόλοιπο λαμβάνοντας υπόψη το συσσωρευμένο cashback, εάν είναι επιλεγμένο το πλαίσιο στις ρυθμίσεις του λογαριασμού cashback 'Χρήση cashback για ενεργοποίηση'
Παράμετροι:
$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* - δέχεται τιμή boolean. Εάν η παράμετρος είναι 'true', η αγορά του αριθμού θα γίνει χρησιμοποιώντας το cashback. Αφού εξαντληθούν τα χρήματα στο υπόλοιπο cashback, όλες οι επόμενες αγορές θα γίνονται χρησιμοποιώντας το κύριο υπόλοιπο. Είναι ΣΗΜΑΝΤΙΚΟ να θυμάστε ότι όλες οι επόμενες αγορές θα χρησιμοποιούν πρώτα το cashback και στη συνέχεια το κύριο υπόλοιπο (ακόμα κι αν στη συνέχεια περάσετε την παράμετρο '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 * - πάροχος κινητής τηλεφωνίας του αριθμού, μπορείτε να καθορίσετε several αριθμούς διαχωρισμένους με κόμματα (διαθέσιμο μόνο για **):
$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-server
BANNED:'YYYY-m-d H-i-s' - χρόνος για τον οποίο έχει αποκλειστεί ο λογαριασμός
Παράμετροι:
$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-server
NO_ACTIVATION - το ID ενεργοποίησης δεν υπάρχει
BAD_SERVICE - λανθασμένο όνομα υπηρεσίας
BAD_STATUS - λανθασμένη κατάσταση
BAD_KEY - μη έγκυρο κλειδί API
BAD_ACTION - λανθασμένη ενέργεια
WRONG_ACTIVATION_ID - λανθασμένο 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-server
BAD_KEY - μη έγκυρο κλειδί API
BAD_ACTION - λανθασμένη ενέργεια
Παράμετροι:
$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-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 - ID Ενεργοποίησης
ΑΠΑΝΤΗΣΗ:
Η απάντηση της υπηρεσίας θα είναι σε μορφή json, παράδειγμα:
{"status":"2","phone":false}
ΠΙΘΑΝΕΣ ΚΑΤΑΣΤΑΣΕΙΣ:
2 - νέα ενεργοποίηση
3 - ολοκληρώθηκε επιτυχώς
4 - ακυρώθηκε
5 - επιστράφηκε
ΠΙΘΑΝΑ ΣΦΑΛΜΑΤΑ:
BAD_KEY - μη έγκυρο κλειδί API
ΜΗ_ΕΓΚΥΡΟ_ID_ΕΝΕΡΓΟΠΟΙΗΣΗΣ - Μη έγκυρο ID ενεργοποίησης
Παράμετροι:
$api_key - Κλειδί API
$serviceΣύντομο όνομα της υπηρεσίας (Προαιρετικό, προεπιλογή όλες οι υπηρεσίες) δείτε τον πίνακα
$countryΌνομα κωδικού χώρας (Προαιρετικό, προεπιλογή όλες οι χώρες) δείτε τον πίνακα
ΑΠΑΝΤΗΣΗ:
JSON - αντικείμενο σε μορφή
{"Χώρα":{"Υπηρεσία":{"κόστος":Κόστος,"ποσότητα":Ποσότητα}}}
Παράμετροι:
$api_key - Κλειδί API
$serviceΣύντομο όνομα της υπηρεσίας (Προαιρετικό, προεπιλογή όλες οι υπηρεσίες) δείτε τον πίνακα
ΑΠΑΝΤΗΣΗ:
JSON - αντικείμενο σε μορφή
{"Υπηρεσία":{"Χώρα":{"ποσότητα":Ποσότητα,"τιμή":"Τιμή"}}}
Παράμετροι:
$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 - ID γονικής ενεργοποίησης
ΑΠΑΝΤΗΣΗ:
ΠΡΟΣΘΕΤΟ:$id:$τηλέφωνο - δημιουργήθηκε επιτυχώς μια νέα ενεργοποίηση. Όπου ID είναι το ID της πρόσθετης ενεργοποίησης, phone είναι ο αριθμός τηλεφώνου
ΠΙΘΑΝΑ ΣΦΑΛΜΑΤΑ:
ΛΑΘΟΣ_ΠΡΟΣΘΕΤΗΣ_ΥΠΗΡΕΣΙΑΣ - Μη έγκυρη πρόσθετη υπηρεσία (επιτρέπονται μόνο υπηρεσίες για ανακατεύθυνση)
WRONG_ACTIVATION_ID - Λανθασμένο ID γονικής ενεργοποίησης
ΛΑΘΟΣ_ΑΣΦΑΛΕΙΑΣ - προέκυψε σφάλμα κατά την προσπάθεια μετάδοσης ενός ID ενεργοποίησης χωρίς ανακατεύθυνση, ή μιας ολοκληρωμένης/ανενεργής ενεργοποίησης
ΕΠΑΝΑΛΗΨΗ_ΠΡΟΣΘΕΤΗΣ_ΥΠΗΡΕΣΙΑΣ - το σφάλμα εμφανίζεται όταν προσπαθείτε να παραγγείλετε ξανά μια αγορασμένη υπηρεσία NO_BALANCE - Ανεπαρκές υπόλοιπο
ERROR_SQL- σφάλμα βάσης δεδομένων, επικοινωνήστε με την εξυπηρέτηση πελατών
Εάν έχετε πραγματοποιήσει επιτυχή ενεργοποίηση στον αριθμό, μπορείτε να το κάνετε ξανά.
Το κόστος της πρόσθετης ενεργοποίησης καθορίζεται ανάλογα με τη χώρα και την υπηρεσία. Το συγκεκριμένο κόστος μπορεί να ληφθεί από .
Παράμετροι:
$api_key - Κλειδί API
$activationId - ID γονικής ενεργοποίησης
ΑΠΑΝΤΗΣΗ:
ΠΡΟΣΒΑΣΗ_ΑΡΙΘΜΟΥ:$id:$τηλέφωνο - δημιουργήθηκε επιτυχώς μια νέα ενεργοποίηση. Όπου $id είναι το ID της πρόσθετης ενεργοποίησης, $phone είναι ο αριθμός τηλεφώνου
ΠΙΘΑΝΑ ΣΦΑΛΜΑΤΑ:
ΑΝΑΝΕΩΣΗ_ΕΝΕΡΓΟΠΟΙΗΣΗΣ_ΜΗ_ΔΙΑΘΕΣΙΜΗ- ο αριθμός δεν είναι διαθέσιμος για πρόσθετη ενεργοποίηση
WRONG_ACTIVATION_ID - Λανθασμένο ID γονικής ενεργοποίησης
ERROR_SQL- σφάλμα βάσης δεδομένων, επικοινωνήστε με την εξυπηρέτηση πελατών
ΝΕΑ_ΕΝΕΡΓΟΠΟΙΗΣΗ_ΑΔΥΝΑΤΗ- είναι αδύνατη η πραγματοποίηση πρόσθετης ενεργοποίησης
NO_BALANCE - δεν υπάρχουν χρήματα στον λογαριασμό
Μπορείτε να μάθετε τη διαθεσιμότητα του αριθμού για πρόσθετη ενεργοποίηση και να λάβετε το κόστος του
Παράμετροι:
$api_key - Κλειδί API
$activationId - ID γονικής ενεργοποίησης
ΑΠΑΝΤΗΣΗ:
JSON - αντικείμενο σε μορφή {'status': 'success', 'cost':200,"service":"tw","phone":777777777,"country":14},
ΠΙΘΑΝΑ ΣΦΑΛΜΑΤΑ:
ΑΝΑΝΕΩΣΗ_ΕΝΕΡΓΟΠΟΙΗΣΗΣ_ΜΗ_ΔΙΑΘΕΣΙΜΗ- ο αριθμός δεν είναι διαθέσιμος για πρόσθετη ενεργοποίηση
WRONG_ACTIVATION_ID - Λανθασμένο ID γονικής ενεργοποίησης
SIM_OFFLINE - Η κάρτα SIM είναι εκτός σύνδεσης
Παράμετροι:
$api_keyκλειδί api
$id - ID Ενεργοποίησης
$newLang - νέα γλώσσα ανάλυσης δείτε τον πίνακα
ΑΠΑΝΤΗΣΗ:
Η μορφή της απάντησης θα είναι η εξής:
{
"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 - ο αριθμός δεν έχει ενοικιαστεί από εσάς (μη έγκυρο ID ενοικίασης) 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 - ο αριθμός δεν έχει ενοικιαστεί από εσάς (μη έγκυρο ID ενοικίασης)
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 - δεν υπάρχει ID ενοικίασης
INVALID_TIME - λανθασμένος χρόνος. Διαθέσιμος αριθμός ωρών από 4 έως 1344
MAX_HOURS_EXCEED - Υπέρβαση του μέγιστου διαθέσιμου χρόνου
μέγιστο - μέγιστος διαθέσιμος χρόνος
INVALID_PHONE - μη έγκυρο ID ενοικίασης
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 - δεν υπάρχει ID ενοικίασης
INVALID_PHONE - μη έγκυρο ID ενοικίασης
INVALID_TIME - λανθασμένη ρύθμιση χρόνου
RENT_DIE - η ενοικίαση δεν μπορεί να επεκταθεί επειδή ο αριθμός έχει λήξει
MAX_HOURS_EXCEED - Υπέρβαση του μέγιστου διαθέσιμου χρόνου
μέγιστο - μέγιστος διαθέσιμος χρόνος
CHANNELS_LIMIT - λογαριασμός αποκλεισμένος
API JAVA
Συμπεριλάβετε τη βιβλιοθήκη στο maven
<artifactId>SMSActivateApi</artifactId>
<version>1.0</version>
</εξάρτηση>
Μπορείτε να δείτε ένα παράδειγμα εγγραφής μέσω σύνδεσμου προς το MavenRepository
Εισαγάγετε την κύρια κλάση για αλληλεπίδραση με το API του SMS-Activate.
Για να χρησιμοποιήσετε τη βιβλιοθήκη, χρειάζεστε ένα κλειδί API, το οποίο μπορείτε να αποκτήσετε σε αυτήν τη σελίδα και στον παρακάτω σύνδεσμο.
SMS-Activate API-KeyΓια να λάβετε το τρέχον υπόλοιπο του λογαριασμού σας, χρησιμοποιήστε τη μέθοδο getBalance... Εάν σας ενδιαφέρει το cashback επιπλέον του υπολοίπου, τότε καλέστε τη μέθοδο getBalanceAndCashBack.
Μέθοδος getBalanceAndCashBack επιστρέφει ένα αντικείμενο κλάσηςSMSActivateGetBalanceAndCashBack.
Παράμετροι:
ΚΑΝΕΝΑ
ΤΥΠΟΣ ΕΠΙΣΤΡΟΦΗΣ:
BigDecimal
Παράμετροι:
ΚΑΝΕΝΑ
ΤΥΠΟΣ ΕΠΙΣΤΡΟΦΗΣ:
Παράμετροι:
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(Σύνολο) - σύνολο παρόχων.
ΤΥΠΟΣ ΕΠΙΣΤΡΟΦΗΣ:
Παράμετροι:
ΚΑΝΕΝΑ
ΤΥΠΟΣ ΕΠΙΣΤΡΟΦΗΣ:
Παράμετροι:
countryId(Integer) - αναγνωριστικό χώρας.
service(String) - σύντομο όνομα υπηρεσίας.
ΤΥΠΟΣ ΕΠΙΣΤΡΟΦΗΣ:
Παράμετροι:
countryId(Integer) - αναγνωριστικό χώρας.
ΤΥΠΟΣ ΕΠΙΣΤΡΟΦΗΣ:
Παράμετροι:
activationId(Ακέραιος) - αναγνωριστικό ενεργοποίησης
Αντί του αναγνωριστικού ενεργοποίησης, μπορείτε να περάσετε το αντικείμενο κλάσης που λάβατε SMSActivateActivation μετά τη χρήση της μεθόδου getNumber ή μία από τις ενεργοποιήσεις μετά τη χρήση getMultiServiceNumber.
ΤΥΠΟΣ ΕΠΙΣΤΡΟΦΗΣ:
Παράμετροι:
id(Ακέραιος) - αναγνωριστικό ενεργοποίησης
status(SMSActivateClientStatus) - η κατάσταση που πρόκειται να οριστεί για την ενεργοποίηση
Αντί του αναγνωριστικού ενεργοποίησης, μπορείτε να περάσετε το αντικείμενο κλάσης που λάβατε SMSActivateActivation μετά τη χρήση της μεθόδου getNumber ή μία από τις ενεργοποιήσεις μετά τη χρήση getMultiServiceNumber.
ΤΥΠΟΣ ΕΠΙΣΤΡΟΦΗΣ:
Παράμετροι:
ΚΑΝΕΝΑ
ΤΥΠΟΣ ΕΠΙΣΤΡΟΦΗΣ:
Παράμετροι:
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(Ακέραιος)* - χρόνος ενοικίασης
operator(Συμβολοσειρά)* - όνομα παρόχου κινητής τηλεφωνίας
urlWebhook(Συμβολοσειρά)* - σύνδεσμος για webhook (Δεν λαμβάνεται υπόψη από προεπιλογή)
Τι είναι το webHook;* προαιρετική παράμετρος. Εάν δεν καθοριστεί, θα ισχύει η προεπιλογή
ΤΥΠΟΣ ΕΠΙΣΤΡΟΦΗΣ:
Παράμετροι:
countryId(Integer) - αναγνωριστικό χώρας.
operatorSet(Σύνολο) - σύνολο παρόχων κινητής τηλεφωνίας
hours(Ακέραιος)* - χρόνος ενοικίασης
* προαιρετική παράμετρος. Εάν δεν καθοριστεί, θα ισχύει η προεπιλογή
ΤΥΠΟΣ ΕΠΙΣΤΡΟΦΗΣ:
Παράμετροι:
rentId(Ακέραιος) - αναγνωριστικό του ενοικιαζόμενου αριθμού
Αντί για το rentId, μπορείτε να περάσετε το αντικείμενο κλάσης που προέκυψε SMSActivateRentActivation μετά τη χρήση της μεθόδου getRentNumber
ΤΥΠΟΣ ΕΠΙΣΤΡΟΦΗΣ:
Email API
Περιγραφή καταστάσεων API
3 - Αναμονή
4 - Ακύρωση
5 - Επιτυχία
ΠΕΡΙΓΡΑΦΗ:
Πιο αυστηρή τήρηση των αρχών του REST API και αυξημένος αριθμός λογαριασμών gmail.com για εγγραφή σε λογαριασμούς Telegram.
Παράμετροι:
$api_key - Κλειδί API
$site- Ο ιστότοπος για τον οποίο χρειάζεστε email
ΑΠΑΝΤΗΣΗ:
Η απάντηση της υπηρεσίας θα είναι σε μορφή 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 - ο ιστότοπος για τον οποίο χρειάζεστε email
$mail_type - τύπος email: δημοφιλείς τομείς ή ζώνες (1 - ζώνες 2 - δημοφιλείς)
$mail_domain - επιλεγμένη ζώνη ή domain
ΑΠΑΝΤΗΣΗ:
Η απάντηση της υπηρεσίας θα είναι σε μορφή json, παράδειγμα:
{
"status":"OK",
"response":{"email":"[email protected]","id":241}
}
ΠΙΘΑΝΑ ΣΦΑΛΜΑΤΑ:
BAD_KEY - μη έγκυρο κλειδί API
BAD_ACTION - λανθασμένη ενέργεια
MAIL_TYPE_ERROR - δεν υπάρχει τέτοιο domain για την καθορισμένη ιστοσελίδα
CHANNELS_LIMIT - λογαριασμός αποκλεισμένος
Παράμετροι:
$api_key - Κλειδί API
$id- ID του email για το οποίο απαιτείται επανενεργοποίηση
ΑΠΑΝΤΗΣΗ:
Η απάντηση της υπηρεσίας θα είναι σε μορφή 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- ID αγοράς
ΑΠΑΝΤΗΣΗ:
Η απάντηση της υπηρεσίας θα είναι σε μορφή json, παράδειγμα:
{
"status":"OK",
"response":true
}
ΠΙΘΑΝΑ ΣΦΑΛΜΑΤΑ:
EARLY_CANCEL_DENIED - Δεν μπορείτε να ακυρώσετε το email κατά τα πρώτα 2 λεπτά.
Παράμετροι:
$api_key - Κλειδί API
$id- ID του αγορασμένου email, επιστρέφεται μετά την αγορά ενός email
ΑΠΑΝΤΗΣΗ:
Η απάντηση της υπηρεσίας θα είναι σε μορφή json, παράδειγμα:
{
"status":"OK",
"response":{
"value":"Содержания письма"
}
}
Λογισμικό συνεργάτη API
Παράμετροι:
$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.life 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





















































