Skip to main content

Filer och bilagor i Buyer API

Ladda upp filer till OpenWrenchs privata lagring och referera till dem som bilagor på arbetsordrar, tillgångar och fakturor med Buyer API.
Bilagor över hela Buyer API (arbetsordrar, tillgångar, tillgångstyper, fakturor, förslag) är referenser till OpenWrenchs privata fillagring. Flödet är alltid detsamma: ladda upp byten först, använd sedan den returnerade filreferensen i entitetens bilagefält. Alla exempel förutsätter:

Uppladdning

POST /v1/buyer/file/upload är en multipart-förfrågan med en enda del som heter file, upp till 512 MB:
Svaret (höljetyp FileManager) är en FileDetails-post:
Icke-ASCII-tecken tas bort från fileName vid uppladdning. Ett fel på lagringsnivån returnerar 500; försök igen med backoff.

Referera till filen från en entitet

Bilagefält (till exempel buyerAttachments vid skapande av en arbetsorder, eller attachments på en tillgångstyp) tar arrayer av FileDetails-objekt, precis som de returneras av uppladdningen:

Nedladdning

GET /v1/buyer/file/download/{id}/{name} strömmar de lagrade byten med Content-Disposition: attachment. {id} är fileId från uppladdningen (eller från valfria FileDetails du läser av från en entitet); {name} är filnamnet att servera nedladdningen som:
Svarets innehållstyp är den lagrade filens egen typ. Det här är också hur du hämtar bevis som leverantören lämnat in: läs supplierAttachments från en arbetsorder, eller invoicePDFs/attachments från en faktura, och ladda ner varje fileId.

Praktiska anmärkningar

  • Uppladdningar räknas mot hastighetsgränsen (10 förfrågningar per 20-sekundersfönster), så tunga batchmigreringar bör strypas till ungefär en uppladdning varannan sekund.
  • Lagra fileId tillsammans med dina egna poster; det finns ingen listnings-slutpunkt för att återupptäcka filer i efterhand.
  • Samma tvåstegsmönster gäller på leverantörssidan, och faktura-PDF:er har en dedikerad leverantörsslutpunkt som laddar upp och publicerar i ett anrop.