Toegang tot account en project
Gebruik een ingeschakeld API-account via HTTPS vanaf een toegestaan IP-adres. Het project moet bij dat account horen en mag niet verwijderd zijn. Gebruik de unieke project-ID uit het proces voor porteringsaanvragen, niet de numerieke database-ID of een telefoonnummer. Pas URL-codering toe op de project-ID wanneer u een verzoek samenstelt.
De toevoeging voorbereiden
Deze bewerking wijzigt een bestaand nummerporteringsproject. Bevestig eerst de nummers en de machtiging van de klant via uw proces voor porteringsaanvragen. Geef elk nummer volledig in internationaal formaat op, uitsluitend met cijfers, verwijder zelf dubbele nummers en controleer de bestaande nummerlijst van het project. Gebruik dit eindpunt niet om willekeurige nummers te testen.
Het huidige portaal valideert en normaliseert nummers voordat het deze route aanroept. Rechtstreeks gebruik van het verouderde eindpunt biedt niet dezelfde waarborgen: het verwijdert spaties aan het begin en einde van invoerwaarden, maar controleert niet het telefoonnummerformaat, de landcode, dubbele nummers of de status van het project in het werkproces.
POST-verzoek
Maak een lokaal bestand numbers.json met de volgende structuur. De nummers zijn fictief; vervang ze door nummers waarvoor toestemming is verleend voor het geselecteerde project.
{
"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"| Veld | Betekenis |
|---|---|
| numbers | Verplichte, niet-lege array van tekenreeksen met nummers, of een tekenreeks met één nummer per regel. Lege items worden weggelaten en spaties aan het begin en einde worden verwijderd. Tekst met komma's als scheidingsteken wordt niet opgesplitst in afzonderlijke nummers. |
| isocode | Optionele landcode voor de toegevoegde records. Als deze ontbreekt of leeg is, wordt de projectlocatie gebruikt. De handler verwijdert spaties aan het begin en einde van een opgegeven waarde, maar zet deze niet om naar hoofdletters en valideert deze niet. Geef zelf de juiste landcode in hoofdletters op. |
Gebruik voor dit voorbeeld POST met application/json. Ook formuliergegevens die via POST worden verstuurd, worden ingelezen. De methode definieert geen idempotentiesleutel en legt voor dit eindpunt geen gegarandeerde veilige batchgrootte vast; controleer de resultaten van beheersbare batches in plaats van op een geschatte limiet te vertrouwen.
Gemeld resultaat
Fictief voorbeeld van een antwoord.
{
"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"
}
]
}
}Het antwoord geeft pogingen tot toevoeging het label Pending. Het controleert niet het resultaat van elke invoeging in de database voordat het dit meldt. Alleen een aantal of een teruggegeven ID bewijst daarom niet dat elk record is opgeslagen. Een toevoeging met de status Pending betekent niet dat de telecomaanbieder deze heeft geaccepteerd, dat een portering is ingepland of dat de activering is voltooid.
Controleer de gegevens voordat u het opnieuw probeert
- Haal de nummerlijst van het project op voordat u nummers toevoegt en leg de beoogde toevoeging vast in uw eigen verzoekadministratie.
- Verstuur het verzoek om nummers toe te voegen één keer.
- Haal de nummerlijst van het project opnieuw op en vergelijk elk nummer dat u wilde toevoegen. Controleer op dubbele nummers en controleer de status per nummer.
- Als de wachttijd voor het verzoek verstrijkt, het verzoek een fout retourneert of een onduidelijk resultaat meldt, haal dan de gegevens opnieuw op voordat u het nogmaals probeert. Sommige toe te voegen records kunnen al bestaan.
- Los ontbrekende of dubbele records op via het proces voor porteringsaanvragen of via de ondersteuning, in plaats van het volledige verzoek blindelings te herhalen.
De handler voegt records één voor één in, zonder transactie of bescherming tegen duplicaten. Bij een onderbreking kunnen eerder geschreven gegevens behouden blijven; een mislukte invoeging die false retourneert, kan toch worden meegeteld in het gemelde aantal. Het herhalen van een verzoek kan dubbele records toevoegen. De handler registreert zelf geen gebeurtenis en voltooit geen nummerportering tussen telecomaanbieders.
Fouten van het verouderde eindpunt
Een andere methode dan POST retourneert API-code 403. Een ontbrekend of verwijderd project, of een project dat niet bij het account hoort, retourneert API-code 404. Lege nummerinvoer retourneert eveneens API-code 404. Authenticatie en beperkingen voor het bron-IP-adres zijn van toepassing. Deze codes van het verouderde eindpunt bewijzen niet dat er na het begin van de verwerking geen eerdere invoeging heeft plaatsgevonden.
Facturering en reikwijdte van de portering
De beoordeelde handler voegt nummerrecords aan het project toe en bevat geen directe afschrijving van het account of indiening bij een telecomaanbieder. Dit maakt de volledige porteringsdienst niet gratis en doet geen afbreuk aan afgesproken porteringskosten. Zorg dat aan de vereisten van het project voor machtiging, documenten en beoordeling is voldaan voordat u een portering verwacht.