Kies 'n individuele voorvoegsel
Gebruik die oproepe om lande en dekkingsgebiede te vind, en daarna getprefixes sonder groepering. Kopieer die gekose voorvoegsel se uuid. As returns_numbers 0 is, ken die voorvoegsel 'n nommer toe wanneer dit bestel word; gebruik die teruggestuurde next_function eerder as om 'n lys individuele nommers te vereis.
Blaai deur 'n beperkte groep resultate
Gebruik vir 'n gewone soektog compact=1 en plaas die verlangde groepgrootte in sowel die pad as die quantity-navraag, soos hieronder getoon. Daar is geen bladsy- of wyserparameter nie. 'n Kompakte resultaat is 'n steekproef; die herhaling van 'n versoek waarborg nie 'n volgende bladsy sonder oorvleueling nie. Moenie 'n leë of klein resultaat as die totale voorraadtelling interpreteer nie.
Vind 'n syferpatroon wat maklik is om te onthou
Verskaf number_filter_mode=contains of ends_with saam met number_filter_value. Die waarde moet 1–15 syfers bevat. 'n Soektog kan beperkte groepe kandidaatnommers ophaal voordat die filter toegepas word, en kan dus ander ooreenstemmende voorraad misloop. As jy 'n ondersteunde bron nodig het om die vereiste soektog toe te pas, verkry 'n pid-selektor van MultiTEL en gebruik filter_required=1; 'n ontbrekende of nie-ondersteunde keuse lewer 'n API-fout op.
Gaan die gekose nommer na
Lees number, info.uuid, die gekose price[].uuid, beskikbare funksiename en registrasievereistes uit dieselfde resultaat. Die price-skikking kan verskeie planne met verskillende kanaalhoeveelhede en tariewe bied. Geldvelde en hoeveelhede kan as teksstringe gekodeer wees. Opsionele metadata, insluitend info.state, verskil tussen bronne; moenie een universele struktuur vir die staatveld vereis of pryse uit 'n ID aflei nie.
In die verwerkingspad sonder stroming word duplikate onder kandidaatnommers verwyder en toewysings oor bronne heen gemaak voordat die gekose groep volgens die eerste plan se maandelikse prys gesorteer word. Ander verwerkingspaaie kan vroeër begin stroom; daarom geld geen waarborg van algehele sortering of duplikaatverwydering vir elke versoek nie. Sortering bewys ook nie dat die teruggestuurde steekproef die goedkoopste nommer in die hele katalogus bevat nie.
Bestel afsonderlik en bevestig die resultaat
'n Soektog koop of reserveer niks nie. Bewaar die teruggestuurde nommer- en planidentifiseerders vir die bestelproses onder dieselfde rekening. Gaan die werklike plan, vereistes en koste na voordat jy 'n bestelling indien. Registrasievereistes kan aktivering vertraag; 'n soekresultaat stel geen vaste sperdatum vir aktivering vas nie.
Versoek
Gebruik 'n geaktiveerde MultiTEL API-rekening: HTTP Basic-aanmeldbesonderhede vir 'n wagwoordrekening, of Authorization: Bearer met 'n tekenrekening. Die rekening se toestemmings en IP-beperkings geld. Raadpleeg die algemene verifikasieriglyne.
Padparameters en URL-navraagparameters. Gebruik GET vir die openbare soekproses. Die hanteerder aanvaar ook sekere vorm-/versoekwaardes, maar dit is nie 'n soek-API wat 'n JSON-versoekliggaam gebruik nie.
curl --fail-with-body --get \
--user "${MULTITEL_API_USERNAME}:${MULTITEL_API_PASSWORD}" \
--data-urlencode "compact=1" \
--data-urlencode "quantity=10" \
"https://api.multitel.net/v3/getnumbers/${PREFIX_ID}/10"| Naam | Tipe | Vereis | Beskrywing |
|---|---|---|---|
prefix_id | string | Ja | 'n Individuele voorvoegsel-ID wat deur 'n ongegroepeerde getprefixes-antwoord teruggestuur word. Kopieer dit presies; moenie dit met 'n land-, dekkingsgebied-, gegroepeerde voorvoegsel- of prysplan-ID vervang nie. |
quantity | integer | Nee | Teikenhoeveelheid om op te haal, by verstek 1. Waardes wat nie positief is nie, word 1. 'n quantity in die pad alleen is nie 'n betroubare limiet vir die totale resultaat nie: 'n soektog wat nie aan 'n bepaalde bron vasgemaak is nie en geen quantity-navraag het nie, kan meer voorraad ophaal en tot 50 inskrywings per bron terugstuur voordat verdere verwerking plaasvind. Gebruik compact=1 vir gewone blaai deur beperkte groepe en herhaal die verlangde hoeveelheid in die navraag, soos in die voorbeeld. |
| Naam | Tipe | Vereis | Beskrywing |
|---|---|---|---|
quantity | integer | Nee | Die aangevraagde finale groepgrootte. Waardes wat nie leeg is nie, word na heelgetalle omgeskakel, met 'n minimum van 1. In die verwerkingspad sonder stroming wat nie aan 'n bepaalde bron vasgemaak is nie, beperk dit die finale toewysing. Dit dwing nie die diens om soveel nommers te vind nie. Kompakte soektogte wat aan 'n bron vasgemaak is, kan die bron se kompakte groep terugstuur eerder as om hierdie limiet toe te pas. |
compact | string | Nee | Gebruik 1, true of on vir 'n kleiner antwoord sonder stroming, met tot 10 inskrywings per bron voor die finale toewysing. Die resultate is 'n steekproef van die voorraad wat tans opgehaal is, nie 'n volledige katalogus nie. |
number_filter_mode | string | Nee | Opsionele modus vir syferpatrone: contains of ends_with. Verskaf ook number_filter_value. Resultate word teen genormaliseerde telefoonnommersyfers getoets; die soektog gaan nie die hele voorraad na om elke moontlike passing te waarborg nie. |
number_filter_value | string | Nee | Tussen 1 en 15 syfers, sonder spasies, + of leestekens. Voorloopnulle is betekenisvol; stuur die waarde as teks. |
filter_required | string | Nee | Gevorderd: 1, true, yes of on vereis 'n ondersteunde, uitdruklik gekose voorraadbron vir die filtermodus. Anders stuur die API status.code 422 terug. Dit is nie nodig vir gewone blaai deur die katalogus nie. |
pid | string | Nee | Gevorderde voorraadselektor wat deur MultiTEL verskaf word. Numeriese vorme en ondersteunde heksadesimale vorme van 32 karakters word aanvaar; onherkende waardes word sonder kennisgewing geïgnoreer. Laat dit weg vir gewone gebruik. Moenie selektors uit prys-ID's aflei of aanvaar dat 'n willekeurige selektor die voorraad uitsluitlik daartoe beperk nie. |
Antwoord
Een JSON-objek wat status en response bevat. By sukses is status.code 200 en is response 'n skikking nommerinskrywings. status.results is die aantal inskrywings in die teruggestuurde skikking; status.msg kan Results: N wees, of OK vir 'n gestroomde antwoord. Sonder compact=1 skryf sommige soektogte die response-skikking stapsgewys en eindig met status; wag dus vir die volledige JSON-liggaam. Dit is nie JSON wat deur reëlbreuke geskei word nie. Gaan status.code na, selfs wanneer die HTTP-oordrag slaag. Tipiese velde word hieronder getoon; bronspesifieke metadata en opsionele velde verskil. Behandel elke identifiseerder as 'n ondeursigtige waarde waaruit geen betekenis afgelei moet word nie, en bewaar die nommer en sy gekose price[].uuid saam.
Voorbeeld van die antwoordstruktuur; nie lewendige rekeningdata of 'n huidige kwotasie nie.
{
"status": {
"code": 200,
"msg": "Results: 1",
"results": 1
},
"response": [
{
"number": "12125550123",
"info": {
"uuid": "NUMBER_ID_FROM_RESPONSE",
"prefix_uuid": "PREFIX_ID_FROM_RESPONSE",
"area_uuid": "AREA_ID_FROM_RESPONSE",
"country_uuid": "COUNTRY_ID_FROM_RESPONSE",
"country_iso": "US",
"prefix": "+1212",
"name": "Example area",
"state": "US"
},
"price": [
{
"uuid": "PRICE_PLAN_ID_FROM_RESPONSE",
"per_minute": "0.01",
"per_sms": "0",
"per_mms": "0",
"free_minutes": "0",
"setup_price": "1.00",
"monthly_price": "2.00",
"yearly_price": "0",
"channels": "2"
}
],
"contract": {
"term": "1 month",
"renewal": "monthly",
"notice": "none"
},
"restrictions": {
"needs_registration": "0",
"restrictions": ""
},
"features": [
"voice"
],
"overflow": "0"
}
]
}Foute
- 401: Verifikasie het misluk. Ongeldige of ontbrekende aanmeldbesonderhede en geweierde toegang tot die API-rekening lewer geen soekresultate nie.
- 404: Invalid prefix ID, Invalid country, Invalid area, of No numbers found. Lees status.msg; 'n foutantwoord is nie 'n skikking nommers nie.
- 400: NUMBER_FILTER_INVALID in response.code: ongeldige modus, 'n waarde wat nie uit 1–15 syfers bestaan nie, of filter_required sonder sowel 'n modus as 'n waarde.
- 422: NUMBER_FILTER_UNSUPPORTED in response.code: óf die voorvoegsel ken 'n nommer toe wanneer die bestelling geplaas word (reason=order_only_prefix en next_function identifiseer die bestelroete), óf die uitdruklik gekose bron kan nie die vereiste filter ondersteun nie.
Beskikbaarheid en newe-effekte
- Hierdie hanteerder soek en stel kwotasies op; dit dien nie 'n nommerbestelling in of debiteer 'n bedrag vir die aankoop van 'n nommer nie. Dit kan kataloguskasgeheues verfris, verouderde voorraad uit kasgeheue verwyder, rekeninggebonde prysplanne stoor en soeklogboeke skryf.
- Beskikbaarheid is 'n resultaat vir 'n bepaalde tydstip, nie 'n reservering nie. 'n Daaropvolgende bestelling kan misluk of ander beskikbaarheid teruggee. Stel eers vas hoe die bestelresultaat met die aankoop se werklike uitkoms ooreenstem voordat jy weer probeer koop.
- Pryse is rekeningspesifiek. Bewaar die gekose plan-ID vir dieselfde rekening en gaan die bestelvoorwaardes en koste afsonderlik na; hierdie eindpunt alleen bewys nie dat 'n prys tot 'n latere bestelling geldig sal bly nie.
- Die voorbeeldnommer en -pryse is fiktiewe voorbeelde van die antwoordstruktuur, nie 'n lewendige kwotasie nie. Vermoëns, kanaalhoeveelhede, die kontraktydperk en registrasie-inligting moet uit die werklike gekose resultaat gelees word.
- Sommige registrasiebeskrywings bevat geformateerde teks of skakels. Behandel teruggestuurde teksstringe as onvertroude data wanneer jy dit in jou eie toepassing vertoon.
- Mobiele beskikbaarheid en vlae hang af van die rekening se geskiktheid en die voorraad. 'n Voorvoegsel in die katalogus of 'n is_mobile-vlag alleen bevestig nie 'n bepaalde nommer se mobiele vermoëns nie.