Izstrādātājiem

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

Numuru pievienošana esošam numuru pārnešanas projektam

Pievienojiet numuru rindas un pēc tam salīdziniet projekta datus, pirms atkārtojat pieprasījumu ar neskaidru iznākumu.

Šajā lapā
  1. Piekļuve kontam un projektam
  2. Sagatavošanās numuru pievienošanai
  3. POST pieprasījums
  4. Paziņotais rezultāts
  5. Pirms atkārtošanas salīdziniet datus
  6. Mantotās kļūdas
  7. Norēķini un pārnešanas darbības tvērums

Piekļuve kontam un projektam

Izmantojiet iespējotu API kontu, savienojoties ar HTTPS no atļautas IP adreses. Projektam ir jāpieder šim kontam, un tas nedrīkst būt dzēsts. Izmantojiet projekta unikālo identifikatoru no numuru pārnešanas pasūtījuma darbplūsmas, nevis tā skaitlisko datubāzes identifikatoru vai tālruņa numuru. Veidojot pieprasījumu, kodējiet projekta identifikatoru URL formātā.

Sagatavošanās numuru pievienošanai

Šī darbība maina esošu numuru pārnešanas projektu. Vispirms savā numuru pārnešanas pasūtījuma darbplūsmā apstipriniet numurus un klienta pilnvarojumu. Norādiet katru numuru pilnā starptautiskajā formātā, izmantojot tikai ciparus, paši noņemiet dublikātus un pārbaudiet projekta esošo numuru sarakstu. Neizmantojiet šo galapunktu patvaļīgu numuru pārbaudei.

Pašreizējais portāls pirms šī maršruta izsaukšanas pārbauda un normalizē numurus. Tieši izsauktais mantotais galapunkts nenodrošina tādus pašus aizsardzības pasākumus: tas noņem ievades sākuma un beigu atstarpes, taču nepārbauda tālruņa numura formātu, valsts kodu, dublikātus vai projekta darbplūsmas statusu.

POST pieprasījums

Izveidojiet lokālu failu numbers.json ar tālāk norādīto struktūru. Numuri ir izdomāti; aizstājiet tos ar numuriem, kurus ir atļauts izmantot atlasītajā projektā.

{
  "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"
Numuru pievienošanas pieprasījuma lauki
LauksNozīme
numbersObligāts netukšs masīvs ar numuriem teksta virkņu veidā vai teksta virkne, kurā katrs numurs ir atsevišķā rindā. Tukšie ieraksti tiek atmesti, un sākuma un beigu atstarpes tiek noņemtas. Ar komatiem atdalīts teksts netiek sadalīts atsevišķos numuros.
isocodeNeobligāts valsts kods pievienotajām rindām. Ja tas nav norādīts vai ir tukšs, tiek izmantota projekta atrašanās vieta. Apstrādātājs noņem norādītās vērtības sākuma un beigu atstarpes, taču nepārvērš to par lielajiem burtiem un nepārbauda tās derīgumu. Paši norādiet pareizo valsts kodu ar lielajiem burtiem.

Šajā piemērā izmantojiet POST ar application/json. Tiek nolasīta arī veidlapas POST ievade. Metode nenosaka idempotences atslēgu vai šim galapunktam garantētu drošu paketes lielumu; salīdziniet datus pārvaldāma lieluma paketēs, nevis paļaujieties uz minētu ierobežojumu.

Paziņotais rezultāts

Izdomāts atbildes piemērs.

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

Atbildē pievienošanas mēģinājumiem tiek norādīts statuss Pending. Pirms rezultāta paziņošanas netiek pārbaudīts katras ievietošanas datubāzē iznākums. Tādēļ skaits vai atgrieztais identifikators vien nepierāda, ka katra rinda ir saglabāta. Pievienojums ar statusu Pending nenozīmē operatora piekrišanu, ieplānotu pārnešanu vai pabeigtu aktivizēšanu.

Pirms atkārtošanas salīdziniet datus

  1. Pirms numuru pievienošanas nolasiet projekta numuru sarakstu un saglabājiet plānoto papildinājumu savā pieprasījumu uzskaitē.
  2. Nosūtiet pievienošanas pieprasījumu vienu reizi.
  3. Vēlreiz nolasiet projekta numuru sarakstu un salīdziniet katru plānoto numuru. Pārbaudiet dublikātus un katra numura statusu.
  4. Ja pieprasījumam iestājas noildze, tas atgriež kļūdu vai paziņo neskaidru rezultātu, pirms atkārtošanas vēlreiz nolasiet datus. Daži papildinājumi jau var būt izveidoti.
  5. Trūkstošās vai dublētās rindas sakārtojiet numuru pārnešanas pasūtījuma darbplūsmā vai ar atbalsta dienesta palīdzību, nevis akli atkārtojiet visu pieprasījumu.

Apstrādātājs ievieto ierakstus pa vienam, neizmantojot transakciju vai aizsardzību pret dublikātiem. Pārtraukuma gadījumā iepriekš veiktie ieraksti var palikt saglabāti; neveiksmīga ievietošana, kas atgriež false, joprojām var tikt iekļauta paziņotajā skaitā. Pieprasījuma atkārtošana var pievienot dublētas rindas. Pats apstrādātājs nereģistrē notikumu un nepabeidz numuru pārnešanu pie operatora.

Mantotās kļūdas

Jebkura metode, izņemot POST, atgriež API kodu 403. Ja projekts neeksistē, ir dzēsts vai nepieder kontam, tiek atgriezts API kods 404. Arī tukša numuru ievade atgriež API kodu 404. Ir spēkā autentifikācijas un avota IP adreses ierobežojumi. Šie mantotie kodi neapliecina, ka pēc apstrādes sākšanas iepriekš nav notikusi neviena ievietošana.

Norēķini un pārnešanas darbības tvērums

Pārskatītais apstrādātājs ievieto projekta numuru rindas un neveic tiešu naudas norakstīšanu no konta vai iesniegšanu operatoram. Tas nenozīmē, ka viss numuru pārnešanas pakalpojums ir bez maksas, un neatceļ saskaņotās pārnešanas maksas. Pirms sagaidāt pārnešanu, izpildiet projekta pilnvarojuma, dokumentu un pārskatīšanas prasības.