Udviklere

GET/v3/lnp/project/{uniqueid}/document/{documentId}

Download en vedhæftet fil fra et nummerporteringsprojekt

Download dokumentets bytes fra et projekt, der tilhører din konto, og kontrollér kompatibiliteten med ældre lagring.

På denne side
  1. Adgang til konto og dokument
  2. Identificér dokumentet
  3. Send anmodningen, og gem svaret
  4. Binært svar og headere
  5. Kontrollér den downloadede fil
  6. Kompatibilitet med ældre lagring
  7. Fejl og virkninger

Adgang til konto og dokument

Download en eksisterende vedhæftet fil fra et nummerporteringsprojekt, der tilhører din API-konto. Brug en aktiveret API-konto via HTTPS fra en tilladt IP-adresse. Projektet må ikke være slettet. Et dokument-ID slås op inden for det pågældende projekt; det er ikke et globalt, offentligt downloadlink.

Identificér dokumentet

Læs svaret med projektoplysninger, og brug en post fra dets liste uploads. Posten indeholder den numeriske værdi id, det oprindelige filnavn, den gemte filendelse og den relative download_url. Brug projektets uniqueid og ID'et for den pågældende upload, ikke projektets numeriske række-ID eller række-ID'et for et telefonnummer.

Opløs kun en returneret relativ URL i forhold til din konfigurerede, betroede API-vært. Download kræver den samme kontoautentificering; dokumentets metadata giver ikke adgang uden autentificering.

Send anmodningen, og gem svaret

Sæt PROJECT_ID og DOCUMENT_ID til værdier fra din kontos projekt. URL-kod projekt-ID'et. Dette eksempel gemmer bytes og svarheadere hver for sig og bruger et fast lokalt filnavn i stedet for at stole på den vedhæftede fils filnavn.

curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  --dump-header document-headers.txt \
  --output porting-document.bin \
  "https://api.multitel.net/v3/lnp/project/$PROJECT_ID/document/$DOCUMENT_ID"

Anmodningen bruger GET uden anmodningsindhold. Den læser én hel vedhæftet fil uden slutpunktsspecifik sideinddeling, JSON-indpakning eller en dokumenteret kontrakt for download af byteintervaller.

Binært svar og headere

Ved succes består svarindholdet af den vedhæftede fils gemte bytes efter afkodningen af det ældre lagringsformat, ikke af base64 og heller ikke af et JSON-svarobjekt. Metoden sender en Content-Disposition-header for en vedhæftet fil med det gemte filnavn, hvor dobbelte anførselstegn er fjernet. Headeren er ikke garanteret at være standardkonformt kodet eller at udgøre en sikker lokal filsti; vælg selv destinationsfilens navn.

Svartypens MIME-type ud fra filendelsen
Gemt filendelseContent-Type
pdfapplication/pdf
pngimage/png
jpg, jpegimage/jpeg
docapplication/msword
Andre værdierapplication/octet-stream

Ved sammenligning af filendelser skelnes der ikke mellem store og små bogstaver. MIME-typen vælges ud fra den gemte filendelse, ikke ved at undersøge indholdet, og valget er ingen garanti for, at dokumentet er gyldigt.

Kontrollér den downloadede fil

  1. Kontrollér både HTTP-status og svarheadere. Fejl ved autentificering eller opslag kan medføre et svar i JSON-format fra API i stedet for en fil. Betragt ikke ethvert ikke-tomt svarindhold eller enhver gemt outputfil som en vellykket download af en PDF-fil.
  2. Hvis svarindholdet er en fejl i JSON-format, skal du kontrollere status.code og status.msg. Hold fejloutput adskilt fra det forventede dokument.
  3. Kontrollér, at den resulterende fil ikke er tom, og at den kan åbnes som den forventede filtype. Hvis du har beholdt originalen, skal du sammenligne kontrolsummerne, før du stoler på kopien.
  4. Hvis resultatet er tomt, ugyldigt eller afviger fra originalen, skal du stoppe og bede support om at kontrollere den gemte vedhæftede fil. Gentagne downloads reparerer ikke lagringen.

Kompatibilitet med ældre lagring

Den nuværende uploadkode i API og den gennemgåede uploadkode i portalen og ældre systemer gemmer dokumentbytes med escape-kodning. Denne download ophæver escape-kodningen. Offline-test af den faktiske håndteringskode bevarer alle byteværdier og bogstavelige omvendte skråstreger for dette lagringsformat.

Dette er ikke en garanti for alle historiske eller eksternt importerede poster. Håndteringskoden afkoder altid den gemte binære datablok og registrerer ikke, om en post er importeret uden den forventede escape-kodning. Den bruger heller ikke en filsti som alternativ, når en post ikke har nogen gemt binær datablok. Sådanne poster kan give ændrede bytes eller et tomt resultat. Kontrollér resultatet, og få support til at undersøge den berørte vedhæftede fil i stedet for at ændre et kundedokument eller antage, at dets metadata beviser, at filen er tilgængelig.

Den nuværende portal bruger først denne API-rute og har desuden lokal håndtering af alternative løsninger. En vellykket download via portalen beviser ikke, at alle ældre poster kan downloades direkte via denne API.

Fejl og virkninger

Et projekt, der mangler, er slettet eller ikke tilhører din konto, returnerer API-kode 404 med en meddelelse om, at projektet ikke blev fundet. En manglende upload i et projekt, der tilhører din konto, returnerer API-kode 404 med en meddelelse om, at dokumentet ikke blev fundet. Læs både fejlindholdet fra API og HTTP-status. For en post, der findes, men mangler brugbare gemte bytes, har denne håndteringskode ikke et særskilt, pålideligt svar om, at den ikke blev fundet.

Det gennemgåede slutpunkt læser én vedhæftet fil. Det uploader, ændrer eller fjerner ikke et dokument, indsender ikke en anmodning om nummerportering og debiterer ikke kontoen. Vedhæftede filer til nummerportering kan indeholde identitets-, fakturerings- eller fuldmagtsoplysninger: brug dem kun i autoriserede arbejdsgange for kontoen, og hold dem ude af offentlige logfiler, analysedata og skærmbilleder i dokumentation.