Qasja në llogari dhe në projekt
Përdorni një llogari API të aktivizuar përmes HTTPS nga një adresë IP e lejuar. Projekti duhet t'i përkasë asaj llogarie dhe nuk duhet të jetë i fshirë. Përdorni identifikuesin unik të projektit nga rrjedha e punës e porosisë së portimit, jo identifikuesin e tij numerik në bazën e të dhënave ose një numër telefoni. Kodojeni identifikuesin e projektit sipas formatit URL kur ndërtoni një kërkesë.
Kërkesa
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/v3/lnp/project/$PROJECT_ID"Trajtojeni këtë përgjigje si konfidenciale
Përgjigjja e plotë përfshin informacionin e faturimit të operatorit nga i cili largohen numrat, duke përfshirë vlerën e ruajtur të billing_pin, llogarinë e faturimit, telefonin, adresën, kompaninë dhe të dhënat e kontaktit të autorizuar. API nuk i maskon këto fusha. Kërkoni vetëm statusin ose listën e numrave kur rrjedhës suaj të punës i nevojiten vetëm ato. Mos e ruani përgjigjen e plotë me hollësi në hapësirën e ruajtjes së shfletuesit, në sistemet e analizës, në regjistrat publikë ose në pamjet e ekranit për mbështetjen dhe shfaqni vetëm fushat që i nevojiten një klienti të autorizuar.
Struktura e përgjigjes
Shembull fiktiv me fusha të përzgjedhura; mund të kthehen edhe fusha të tjera.
{
"status": {
"code": 200,
"msg": "Project Detail"
},
"response": {
"project": {
"id": 11,
"uniqueid": "PROJECT_EXAMPLE",
"project_name": "Example transfer",
"location": "US",
"status": 0,
"status_str": "Pending"
},
"counts": {
"total": 0,
"pending": 0,
"in_progress": 0,
"completed": 0,
"rejected": 0
},
"numbers": [],
"events": [],
"uploads": []
}
}Ky shembull qëllimisht i pjesshëm lë jashtë të gjitha kredencialet e faturimit dhe vlerat e të dhënave personale të kontaktit. Mungesa e tyre në shembull nuk do të thotë se përgjigjja reale i fsheh ato.
| Seksioni | Përmbajtja |
|---|---|
| project | Identifikuesi numerik i rreshtit, identifikuesi unik i projektit, emri i projektit, vendndodhja, të dhënat e ruajtura të faturimit, kontaktit dhe adresës, koha e krijimit dhe statusi i llogaritur. Fusha e trashëguar për operatorin nga i cili largohen numrat shkruhet loosing_carrier. |
| counts | Numri i përgjithshëm i rreshtave të numrave dhe numëruesit për Pending, In Progress, Completed dhe Rejected. |
| numbers | I njëjti projeksion i të dhënave të numrave si te pika fundore e listës së numrave të projektit, duke përfshirë komentet e klientëve dhe vlerat e ruajtura të planifikimit. |
| events | Rreshtat e ruajtur të ngjarjeve dhe fushat e papërpunuara ose të analizuara të përmbajtjes së transmetuar, që u nënshtrohen kufijve të dukshmërisë dhe formatit të pikës fundore të ngjarjeve. |
| uploads | Metadatat e dokumenteve: identifikuesi numerik, upload_type, file_name, file_extension, date_created dhe një vlerë relative për download_url. URL-ja kërkon ende autentikimin e llogarisë. |
Interpretimi i përmbledhjes dhe metadatave
Statusi i llogaritur i jep përparësi In Progress, pastaj Pending, pastaj Completed, pastaj Rejected, me Pending si vlerë rezervë. Një përmbledhje me statusin Completed mund të bashkëjetojë me numra të refuzuar. Kontrolloni numëruesit dhe statuset e numrave, në vend që të supozoni se portimi ka përfunduar për çdo numër.
Përgjigjja përmban metadatat e dokumenteve, jo bajtet e skedarëve. Nuk ka ndarje në faqe ose kursor për marrje graduale. Kërkimet për hollësitë dhe listën janë lexime të veçanta, jo një pamje e vetme e të dhënave me qëndrueshmëri transaksionale të garantuar. Datat mbeten vlerat e ruajtura, pa një konvertim të dokumentuar të zonës kohore. Përdorni uniqueid për rrugët e projektit; identifikuesi numerik i projektit nuk mund të përdoret në vend të tij.
Gabimet dhe kufijtë
Kontrolloni si përgjigjen HTTP, ashtu edhe status.code/status.msg. Një projekt që mungon, është fshirë ose nuk i përket llogarisë kthen kodin API 404 me një mesazh që tregon se projekti nuk u gjet. Zbatohen gjithashtu kërkesat e autentikimit dhe kufizimet për adresën IP burimore. Shembujt nuk kryejnë një kërkesë reale dhe një përgjigje e suksesshme nuk provon se një operator ka pranuar ose përfunduar një transferim.
Efektet dhe rrjedha e punës
Kjo është rruga kanonike për hollësitë që përdoret nga pamja e porosive të portimit në portalin aktual. Portali i përshtat fushat për ndërfaqen e tij dhe zbaton projeksionin e vet të të dhënave për klientët; mos supozoni se përgjigjja e papërpunuar e API është identike me të dhënat JSON ose me paraqitjen e portalit. Trajtuesi i shqyrtuar i kërkesave për hollësi nuk e ndryshon projektin dhe nuk nis drejtpërdrejt një kërkesë te një operator ose një tarifim.