Utvecklare

POST/v3/lnp/project/{uniqueid}/addnumbers

Lägg till nummer i ett befintligt nummerporteringsprojekt

Lägg till nummerrader och stäm sedan av projektet innan du gör om en begäran med osäkert resultat.

På denna sida
  1. Åtkomst till konto och projekt
  2. Förbered tillägget
  3. POST-begäran
  4. Rapporterat resultat
  5. Stäm av innan du försöker igen
  6. Fel i den äldre ändpunkten
  7. Fakturering och överföringens omfattning

Åtkomst till konto och projekt

Använd ett aktiverat API-konto via HTTPS från en tillåten IP-adress. Projektet måste tillhöra kontot och får inte vara borttaget. Använd projektets unika ID från arbetsflödet för porteringsbeställningar, inte dess numeriska databas-ID eller ett telefonnummer. URL-koda projektets ID när du bygger en begäran.

Förbered tillägget

Den här åtgärden ändrar ett befintligt nummerporteringsprojekt. Bekräfta först numren och kundens medgivande i ditt arbetsflöde för porteringsbeställningar. Ange varje nummer med samtliga siffror i internationellt format, ta själv bort dubbletter och kontrollera projektets befintliga nummerlista. Använd inte den här ändpunkten för att testa godtyckliga nummer.

Den nuvarande portalen validerar och normaliserar nummer innan den anropar den här anropsvägen. Den äldre ändpunkten ger inte samma skydd vid direktanrop: den tar bort inledande och avslutande blanksteg i indata men validerar inte telefonnummerformat, landskod, dubbletter eller projektets status i arbetsflödet.

POST-begäran

Skapa en lokal fil med namnet numbers.json med följande struktur. Numren är fiktiva; ersätt dem med nummer som du har behörighet att lägga till i det valda projektet.

{
  "numbers": [
    "12025550123",
    "12025550124"
  ],
  "isocode": "US"
}
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  --header "Content-Type: application/json" \
  --data-binary @numbers.json \
  "https://api.multitel.net/v3/lnp/project/$PROJECT_ID/addnumbers"
Fält i begäran för att lägga till nummer
FältBetydelse
numbersObligatorisk, icke-tom lista med nummer som strängar, eller en sträng med ett nummer per rad. Tomma poster ignoreras och inledande och avslutande blanksteg tas bort. Kommaseparerad text delas inte upp i separata nummer.
isocodeValfri landskod för de tillagda raderna. Om den utelämnas eller är tom används projektets plats. Hanteraren tar bort inledande och avslutande blanksteg men omvandlar inte ett angivet värde till versaler och validerar det inte. Ange själv rätt landskod med versaler.

Använd POST med application/json i det här exemplet. Även formulärdata som skickas med POST läses in. Metoden definierar ingen idempotensnyckel eller något ändpunktsspecifikt kontrakt för säker batchstorlek; stäm av hanterbara batcher i stället för att förlita dig på en gissad gräns.

Rapporterat resultat

Fiktivt exempel på svar.

{
  "status": {
    "code": 200,
    "msg": "Success add numbers"
  },
  "response": {
    "uniqueid": "PROJECT_EXAMPLE",
    "count": 2,
    "numbers": [
      {
        "id": 21,
        "number": "12025550123",
        "status": 0,
        "status_str": "Pending",
        "isocode": "US"
      },
      {
        "id": 22,
        "number": "12025550124",
        "status": 0,
        "status_str": "Pending",
        "isocode": "US"
      }
    ]
  }
}

Svaret markerar de tillägg som har försökts med Pending. Det kontrollerar inte resultatet av varje databasinsättning innan resultatet rapporteras. Ett antal eller ett returnerat ID är därför inte i sig ett bevis på att varje rad har sparats. Ett tillägg med status Pending innebär inte att operatören har godkänt porteringen, att en överföring har schemalagts eller att aktiveringen är slutförd.

Stäm av innan du försöker igen

  1. Läs projektets nummerlista innan du lägger till nummer och spara uppgifter om det avsedda tillägget i din egen dokumentation över begäranden.
  2. Skicka tillägget en gång.
  3. Läs projektets nummerlista igen och jämför varje nummer som skulle läggas till. Kontrollera dubbletter och status för varje nummer.
  4. Om begäran överskrider tidsgränsen, returnerar ett fel eller rapporterar ett tvetydigt resultat ska du läsa tillbaka uppgifterna innan du försöker igen. Vissa tillägg kan redan finnas.
  5. Åtgärda saknade rader eller dubblettrader via arbetsflödet för porteringsbeställningar eller supporten i stället för att blint upprepa hela begäran.

Hanteraren infogar poster en i taget utan transaktion eller skydd mot dubbletter. Vid ett avbrott kan tidigare skrivningar finnas kvar; en misslyckad insättning som returnerar false kan ändå ingå i det rapporterade antalet. Om en begäran upprepas kan dubblettrader läggas till. Hanteraren registrerar inte själv någon händelse och slutför inte någon överföring hos operatören.

Fel i den äldre ändpunkten

En annan metod än POST returnerar API-kod 403. Om projektet saknas, är borttaget eller inte tillhör kontot returneras API-kod 404. Tomma nummerindata returnerar också API-kod 404. Krav på autentisering och begränsningar för källans IP-adress gäller. Dessa äldre koder bevisar inte att inga tidigare insättningar har gjorts efter att bearbetningen påbörjades.

Fakturering och överföringens omfattning

Den granskade hanteraren infogar rader för projektets nummer och innehåller ingen direkt kontodebitering eller inskickning till operatören. Det innebär inte att porteringstjänsten som helhet är kostnadsfri eller att avtalade porteringsavgifter upphör att gälla. Uppfyll projektets krav på medgivande, dokumentation och granskning innan du förväntar dig en överföring.