Kūrėjams

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

Numerių pridėjimas prie esamo numerių perkėlimo projekto

Pridėkite numerių įrašus, tada sutikrinkite projekto duomenis prieš kartodami užklausą, kurios rezultatas neaiškus.

Šiame puslapyje
  1. Prieiga prie paskyros ir projekto
  2. Pasiruošimas pridėti numerius
  3. POST užklausa
  4. Pranešamas rezultatas
  5. Prieš kartodami sutikrinkite duomenis
  6. Senosios sąsajos klaidos
  7. Apmokestinimo ir perkėlimo apimtis

Prieiga prie paskyros ir projekto

Naudokite įgalintą API paskyrą ir junkitės per HTTPS iš leidžiamo IP adreso. Projektas turi priklausyti tai paskyrai ir negali būti ištrintas. Naudokite unikalų projekto identifikatorių iš numerių perkėlimo užsakymo proceso, o ne skaitinį duomenų bazės identifikatorių ar telefono numerį. Sudarydami užklausą, projekto identifikatoriui taikykite URL kodavimą.

Pasiruošimas pridėti numerius

Ši operacija pakeičia esamą numerių perkėlimo projektą. Pirmiausia patvirtinkite numerius ir kliento suteiktą leidimą pagal savo numerių perkėlimo užsakymo procesą. Kiekvieną numerį pateikite visais tarptautinio numerio skaitmenimis, patys pašalinkite dublikatus ir patikrinkite esamą projekto numerių sąrašą. Nenaudokite šio galinio taško savavališkai pasirinktiems numeriams tikrinti.

Dabartinis portalas patikrina ir normalizuoja numerius prieš iškviesdamas šį maršrutą. Tiesiogiai naudojamas senasis galinis taškas nesuteikia tokių pačių apsaugos priemonių: jis pašalina tarpus įvesties pradžioje ir pabaigoje, tačiau netikrina telefono numerio formato, šalies kodo, dublikatų ar projekto būsenos darbo procese.

POST užklausa

Sukurkite vietinį failą numbers.json su toliau pateikta struktūra. Numeriai išgalvoti; pakeiskite juos pasirinkto projekto numeriais, kuriuos turite leidimą naudoti.

{
  "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"
Numerių pridėjimo užklausos laukai
LaukasReikšmė
numbersPrivalomas netuščias numerių eilučių masyvas arba eilutė, kurioje kiekvienas numeris pateikiamas naujoje eilutėje. Tušti įrašai atmetami, o tarpai pradžioje ir pabaigoje pašalinami. Kableliais atskirtas tekstas neskaidomas į atskirus numerius.
isocodeNeprivalomas pridedamų įrašų šalies kodas. Jei jis nepateiktas arba tuščias, naudojama projekto vietovė. Apdorojimo funkcija pašalina pateiktos reikšmės tarpus pradžioje ir pabaigoje, bet nekeičia raidžių į didžiąsias ir reikšmės netikrina. Patys pateikite teisingą šalies kodą didžiosiomis raidėmis.

Šiame pavyzdyje naudokite POST su application/json. Taip pat nuskaitoma POST formos įvestis. Šis metodas neapibrėžia nei idempotentiškumo rakto, nei šiam galiniam taškui garantuojamo saugaus paketo dydžio; siųskite ir sutikrinkite valdomo dydžio paketus, užuot pasikliovę spėjama riba.

Pranešamas rezultatas

Išgalvotas atsakymo pavyzdys.

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

Atsakyme bandyti pridėti įrašai pažymimi būsena Pending. Prieš pranešant rezultatą netikrinamas kiekvieno įterpimo į duomenų bazę rezultatas. Todėl vien įrašų skaičius ar grąžintas identifikatorius neįrodo, kad kiekvienas įrašas buvo išsaugotas. Pridėtas įrašas, kurio būsena Pending, nereiškia operatoriaus patvirtinimo, suplanuoto perkėlimo ar užbaigto aktyvinimo.

Prieš kartodami sutikrinkite duomenis

  1. Prieš pridėdami numerius nuskaitykite projekto numerių sąrašą ir savo užklausų apskaitoje išsaugokite, kokius numerius ketinate pridėti.
  2. Pridėjimo užklausą išsiųskite vieną kartą.
  3. Dar kartą nuskaitykite projekto numerių sąrašą ir palyginkite kiekvieną numatytą numerį. Patikrinkite dublikatus ir kiekvieno numerio būseną.
  4. Jei baigiasi užklausos laukimo laikas, grąžinama klaida arba pranešamas neaiškus rezultatas, prieš kartodami užklausą iš naujo nuskaitykite duomenis. Kai kurie įrašai jau gali būti pridėti.
  5. Trūkstamų ar pasikartojančių įrašų problemas spręskite pagal numerių perkėlimo užsakymo procesą arba kreipkitės į pagalbos tarnybą, užuot aklai kartoję visą užklausą.

Apdorojimo funkcija įterpia įrašus po vieną, nenaudodama transakcijos ar apsaugos nuo dublikatų. Nutrūkus vykdymui, anksčiau įrašyti duomenys gali likti; nepavykęs įterpimas, grąžinęs false, vis tiek gali būti įtrauktas į pranešamą skaičių. Pakartojus užklausą gali būti pridėta pasikartojančių įrašų. Pati apdorojimo funkcija neįrašo įvykio ir neužbaigia numerio perkėlimo pas operatorių.

Senosios sąsajos klaidos

Naudojant kitą metodą nei POST, grąžinamas API kodas 403. Jei projektas neegzistuoja, yra ištrintas arba nepriklauso paskyrai, grąžinamas API kodas 404. Pateikus tuščią numerių įvestį taip pat grąžinamas API kodas 404. Taikomi autentifikavimo ir šaltinio IP adreso apribojimai. Šie senosios sąsajos kodai neįrodo, kad pradėjus apdorojimą prieš tai nebuvo atlikta jokių įterpimų.

Apmokestinimo ir perkėlimo apimtis

Peržiūrėta apdorojimo funkcija įterpia projekto numerių įrašus ir tiesiogiai nenurašo lėšų iš paskyros bei nepateikia užsakymo operatoriui. Tai nereiškia, kad visa numerių perkėlimo paslauga yra nemokama, ir nepanaikina sutartų perkėlimo mokesčių. Prieš tikėdamiesi perkėlimo įvykdykite projekto leidimų, dokumentų ir peržiūros reikalavimus.