Utvecklare

GET/v3/getnumbers/{prefix_id}/{quantity}

Hitta tillgängliga telefonnummer

Sök inom ett prefix i katalogen, granska numrens funktioner och kontospecifika prisplaner och välj sedan ett nummer för en separat beställning. En sökning varken reserverar eller köper ett nummer.

På denna sida
  1. Välj ett enskilt prefix
  2. Bläddra bland ett begränsat antal resultat
  3. Hitta ett siffermönster som är lätt att komma ihåg
  4. Granska det valda numret
  5. Beställ separat och bekräfta resultatet
  6. Begäran
  7. Svar
  8. Fel
  9. Tillgänglighet och sidoeffekter

Välj ett enskilt prefix

Använd anropen för att hitta länder och täckningsområden i katalogen och därefter getprefixes utan gruppering. Kopiera det valda prefixets uuid. Om returns_numbers är 0 tilldelar prefixet ett nummer vid beställning; använd det returnerade värdet för next_function i stället för att kräva en lista över enskilda nummer.

Bläddra bland ett begränsat antal resultat

För en vanlig sökning använder du compact=1 och anger önskat antal resultat både i sökvägen och i frågeparametern quantity enligt exemplet nedan. Det finns ingen parameter för sida eller markör. Ett kompakt resultat är ett urval; att upprepa en begäran garanterar inte en nästa sida utan överlappning. Tolka inte ett tomt resultat eller ett resultat med få poster som det totala antalet tillgängliga nummer.

Hitta ett siffermönster som är lätt att komma ihåg

Ange number_filter_mode=contains eller ends_with tillsammans med number_filter_value. Värdet måste innehålla 1–15 siffror. En sökning kan hämta ett begränsat antal kandidatnummer innan filtret tillämpas och kan därför missa andra tillgängliga nummer som matchar. Om du behöver en källa som stöder den nödvändiga sökningen ska du skaffa en väljare av typen pid från MultiTEL och använda filter_required=1; om valet saknas eller inte stöds returneras ett API-fel.

Granska det valda numret

Läs number, info.uuid, det valda värdet för price[].uuid, namnen på tillgängliga funktioner och registreringskraven från samma resultat. Arrayen price kan innehålla flera planer med olika antal kanaler och olika priser. Beloppsfält och antal kan vara kodade som strängar. Valfria metadata, inklusive info.state, varierar mellan källorna; kräv inte ett enhetligt format för delstatsinformationen och härled inte priser från ett ID.

Vid bearbetning utan strömning tas dubbletter av kandidatnumren bort och urvalet fördelas mellan källorna innan de valda resultaten sorteras efter den första planens månadspris. Andra bearbetningsvägar kan börja strömma tidigare, så det finns ingen garanti för övergripande sortering eller borttagning av dubbletter som gäller för varje begäran. Sorteringen bevisar inte heller att det returnerade urvalet innehåller det billigaste numret i hela katalogen.

Beställ separat och bekräfta resultatet

En sökning köper eller reserverar ingenting. Spara det returnerade numret och planidentifierarna för beställningsflödet under samma konto. Granska den faktiska planen, kraven och avgifterna innan du skickar en beställning. Registreringskrav kan fördröja aktiveringen; ett sökresultat fastställer ingen bestämd tidsgräns för aktivering.

Begäran

Använd ett aktiverat MultiTEL-API-konto: inloggningsuppgifter för HTTP Basic för ett lösenordskonto, eller Authorization: Bearer för ett tokenkonto. Kontots behörigheter och IP-begränsningar gäller. Se den gemensamma vägledningen för autentisering.

Sökvägsparametrar och frågeparametrar i URL:en. Använd GET för det publika sökflödet. Hanteraren accepterar även vissa formulärvärden och andra värden i begäran, men är inte ett sök-API med JSON i begärans kropp.

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"
Sökvägsparametrar
NamnTypObligatoriskBeskrivning
prefix_idstringJaEtt ID för ett enskilt prefix som returneras i ett ogrupperat svar från getprefixes. Kopiera det exakt; ersätt det inte med ett ID för ett land, ett täckningsområde, ett grupperat prefix eller en prisplan.
quantityintegerNejÖnskat antal att hämta, standardvärde 1. Värden som inte är positiva blir 1. Enbart quantity i sökvägen ger ingen tillförlitlig gräns för det totala antalet resultat: en sökning som inte är låst till en källa och saknar frågeparametern quantity kan utöka hämtningen och returnera upp till 50 poster per källa före övrig bearbetning. För vanlig bläddring med ett begränsat antal resultat använder du compact=1 och upprepar det önskade antalet i frågeparametrarna, som i exemplet.
Frågeparametrar
NamnTypObligatoriskBeskrivning
quantityintegerNejÖnskat antal slutliga resultat. Värden som inte är tomma omvandlas till heltal, med ett lägsta värde på 1. Vid bearbetning utan strömning som inte är låst till en källa begränsar detta det slutliga urvalet. Det tvingar inte tjänsten att hitta så många nummer. Kompakta sökningar som är låsta till en källa kan returnera källans kompakta resultatuppsättning i stället för att följa denna gräns.
compactstringNejAnvänd 1, true eller on för ett mindre svar utan strömning, med upp till 10 poster per källa före det slutliga urvalet. Resultaten är ett urval av de tillgängliga nummer som har hämtats vid tillfället, inte en fullständig katalog.
number_filter_modestringNejValfritt läge för siffermönster: contains eller ends_with. Ange även number_filter_value. Resultaten kontrolleras mot telefonnumrens normaliserade siffror; sökningen går inte igenom alla tillgängliga nummer för att garantera att alla möjliga träffar hittas.
number_filter_valuestringNejMellan 1 och 15 siffror, utan blanksteg, + eller skiljetecken. Inledande nollor har betydelse; skicka värdet som text.
filter_requiredstringNejAvancerat: 1, true, yes eller on kräver en uttryckligen vald källa för tillgängliga nummer som stöder filterläget. Annars returnerar API:et status.code 422. Detta behövs inte för vanlig bläddring i katalogen.
pidstringNejAvancerad väljare för tillgängliga nummer som tillhandahålls av MultiTEL. Numeriska format och de hexadecimala format med 32 tecken som stöds accepteras; okända värden ignoreras utan meddelande. Utelämna vid normal användning. Härled inte väljare från pris-ID:n och anta inte att en godtycklig väljare begränsar sökningen uteslutande till ett visst nummerbestånd.

Svar

Ett JSON-objekt som innehåller status och response. Vid en lyckad begäran är status.code 200 och response en array med nummerposter. status.results är antalet poster i den returnerade arrayen; status.msg kan vara Results: N eller OK för ett strömmande svar. Utan compact=1 skriver vissa sökningar arrayen response stegvis och avslutar med status, så vänta tills hela JSON-kroppen har tagits emot. Detta är inte radavgränsad JSON. Kontrollera status.code även när HTTP-överföringen lyckas. Typiska fält visas nedan; källspecifika metadata och valfria fält varierar. Behandla varje identifierare som ett ogenomskinligt värde och spara numret tillsammans med dess valda price[].uuid.

Illustration av svarsstrukturen; inte verkliga kontouppgifter eller en aktuell offert.

{
  "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"
    }
  ]
}

Fel

  • 401: Autentiseringen misslyckades. Ogiltiga eller saknade inloggningsuppgifter och nekad åtkomst till API-kontot ger inga sökresultat.
  • 404: Invalid prefix ID, Invalid country, Invalid area eller No numbers found. Läs status.msg; ett felsvar är inte en array med nummer.
  • 400: NUMBER_FILTER_INVALID i response.code: ogiltigt läge, ett värde som inte består av 1–15 siffror eller filter_required utan att både läge och värde har angetts.
  • 422: NUMBER_FILTER_UNSUPPORTED i response.code: antingen tilldelar prefixet ett nummer vid beställning (reason=order_only_prefix och next_function identifierar anropet för beställning), eller så kan den uttryckligen valda källan inte stödja det nödvändiga filtret.

Tillgänglighet och sidoeffekter

  • Den här hanteraren söker och förbereder offerter; den skickar ingen nummerbeställning och debiterar ingen avgift för nummerköp. Den kan uppdatera katalogcachar, ta bort inaktuella cachade nummeruppgifter, spara kontospecifika prisplaner och skriva sökloggar.
  • Tillgängligheten gäller vid söktillfället och är ingen reservation. En efterföljande beställning kan misslyckas eller ge ett annat tillgänglighetsbesked. Stäm av beställningsresultatet innan du försöker genomföra ett köp igen.
  • Priserna är kontospecifika. Spara det valda plan-ID:t för samma konto och granska beställningsvillkoren och avgifterna separat; enbart denna ändpunkt visar inte att ett pris förblir giltigt fram till en senare beställning.
  • Numret och priserna i exemplet är fiktiva och visar svarsstrukturen; de utgör ingen aktuell offert. Funktioner, antal kanaler, avtalsperiod och registreringsinformation måste läsas från det faktiska valda resultatet.
  • Vissa registreringsbeskrivningar innehåller formaterad text eller länkar. Behandla returnerade strängar som icke betrodda data när du visar dem i din egen applikation.
  • Tillgänglighet för mobilnummer och tillhörande flaggor beror på kontots behörighet och vilka nummer som finns tillgängliga. Ett katalogprefix eller en is_mobile-flagga fastställer inte i sig vilka mobilfunktioner ett visst nummer har.