Tilin ja projektin käyttöoikeudet
Käytä käytössä olevaa API-tiliä HTTPS-yhteydellä sallitusta IP-osoitteesta. Projektin on kuuluttava kyseiselle tilille, eikä se saa olla poistettu. Käytä siirtotilausten työnkulusta saatavaa projektin yksilöllistä tunnistetta, älä sen numeerista tietokantatunnistetta tai puhelinnumeroa. URL-koodaa projektin tunniste pyyntöä muodostaessasi.
Valmistele lisäys
Tämä toiminto muuttaa olemassa olevaa numeronsiirtoprojektia. Vahvista ensin numerot ja asiakkaan valtuutus siirtotilausten työnkulussa. Anna kukin numero kokonaisuudessaan kansainvälisessä muodossa pelkkinä numeroina, poista kaksoiskappaleet itse ja tarkista projektin nykyinen numeroluettelo. Älä käytä tätä päätepistettä satunnaisten numeroiden testaamiseen.
Nykyinen portaali validoi ja normalisoi numerot ennen tämän reitin kutsumista. Vanha päätepiste ei suoraan käytettynä tarjoa samoja suojauksia: se poistaa syötteen alusta ja lopusta välilyönnit mutta ei tarkista puhelinnumeron muotoa, maakoodia, kaksoiskappaleita eikä projektin työnkulun tilaa.
POST-pyyntö
Luo paikallinen tiedosto nimeltä numbers.json seuraavan rakenteen mukaisesti. Numerot ovat kuvitteellisia; korvaa ne numeroilla, joiden lisäämiseen valittuun projektiin sinulla on valtuutus.
{
"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"| Kenttä | Merkitys |
|---|---|
| numbers | Pakollinen, ei-tyhjä taulukko merkkijonoina annettuja numeroita tai merkkijono, jossa on yksi numero kullakin rivillä. Tyhjät alkiot hylätään ja alun ja lopun välilyönnit poistetaan. Pilkuilla erotettua tekstiä ei jaeta erillisiksi numeroiksi. |
| isocode | Lisättävien rivien valinnainen maakoodi. Jos se puuttuu tai on tyhjä, käytetään projektin sijaintia. Käsittelijä poistaa annetun arvon alusta ja lopusta välilyönnit mutta ei muuta sitä isoiksi kirjaimiksi eikä validoi sitä. Anna itse oikea maakoodi isoilla kirjaimilla. |
Käytä tässä esimerkissä POST-menetelmää ja application/json-sisältötyyppiä. Myös POST-menetelmällä lähetetyt lomaketiedot luetaan. Menetelmä ei määrittele idempotenssiavainta eikä päätepistekohtaista sopimusta turvallisesta eräkoosta; tarkista hallittavien erien toteutuneet tiedot sen sijaan, että luottaisit arvattuun rajaan.
Ilmoitettu tulos
Kuvitteellinen vastausesimerkki.
{
"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"
}
]
}
}Vastaus merkitsee yritetyt lisäykset tilaan Pending. Se ei tarkista kunkin tietokantalisäyksen tulosta ennen sen ilmoittamista. Pelkkä lukumäärä tai palautettu tunniste ei siis todista, että kaikki rivit tallennettiin pysyvästi. Tilassa Pending oleva lisäys ei tarkoita operaattorin hyväksyntää, ajastettua siirtoa eikä valmistunutta aktivointia.
Tarkista toteutuneet tiedot ennen uutta yritystä
- Lue projektin numeroluettelo ennen numeroiden lisäämistä ja tallenna aiottu lisäys omiin pyyntötietoihisi.
- Lähetä lisäys kerran.
- Lue projektin numeroluettelo uudelleen ja vertaa jokaista lisättäväksi tarkoitettua numeroa siihen. Tarkista kaksoiskappaleet ja kunkin numeron tila.
- Jos pyyntö aikakatkaistaan, palauttaa virheen tai ilmoittaa epäselvän tuloksen, lue tiedot takaisin ennen uutta yritystä. Osa lisäyksistä saattaa jo olla olemassa.
- Selvitä puuttuvat rivit tai kaksoiskappaleet siirtotilausten työnkulun tai tuen kautta sen sijaan, että toistaisit koko pyynnön sokkona.
Käsittelijä lisää merkinnät yksi kerrallaan ilman transaktiota tai kaksoiskappaleiden estoa. Keskeytyksen jälkeen aiemmat kirjoitukset voivat jäädä voimaan; epäonnistunut lisäys, joka palauttaa arvon false, voi silti sisältyä ilmoitettuun lukumäärään. Pyynnön toistaminen voi lisätä kaksoiskappalerivejä. Käsittelijä ei itse kirjaa tapahtumaa eikä suorita operaattorisiirtoa loppuun.
Vanhan päätepisteen virheet
Muu menetelmä kuin POST palauttaa API-koodin 403. Puuttuva, poistettu tai muulle kuin kyseiselle tilille kuuluva projekti palauttaa API-koodin 404. Myös tyhjä numerosyöte palauttaa API-koodin 404. Todennusvaatimukset ja lähde-IP-osoitteen rajoitukset ovat voimassa. Nämä vanhat koodit eivät osoita, ettei aiempia lisäyksiä olisi tehty käsittelyn alkamisen jälkeen.
Laskutus ja siirron laajuus
Tarkastettu käsittelijä lisää projektin numerorivejä, eikä se sisällä suoraa tiliveloitusta tai tietojen lähettämistä operaattorille. Tämä ei tee numeronsiirtopalvelusta kokonaisuudessaan maksutonta eikä kumoa sovittuja siirtomaksuja. Täytä projektin valtuutus-, asiakirja- ja tarkastusvaatimukset ennen kuin odotat siirron toteutuvan.