poai_ Server-tot-server API-sleutel
- Rechten van het account dat deze aanmaakt (admin: volledig account)
- Nooit in browsercode leveren
- Geen Origin-header nodig
- Geblokkeerd voor MCP
- Kan worden beperkt tot IP-adressen
Authenticatie en sleutels
Elk product-eindpunt van de PaperOffice-API verwacht de header Authorization: Bearer. Geen OAuth-flow, geen refresh.
Twee token-typen, duidelijke rechten, gedocumenteerde rate-limits.
curl -X POST "https://api.paperoffice.ai/latest/job/add/workflow" \ -H "Authorization: Bearer po_ut_YOUR_API_KEY" \ -F "file_1=@invoice.pdf" \ -F "idp_collection=invoice" \ -F "model=basic-pro-max" import requestsresponse = requests.post( "https://api.paperoffice.ai/latest/job/add/workflow", headers={"Authorization": "Bearer po_ut_YOUR_API_KEY"}, files={"file_1": open("invoice.pdf", "rb")}, data={"idp_collection": "invoice", "model": "basic-pro-max"},)print(response.json()) const form = new FormData();form.append("file_1", new Blob([await readFile("invoice.pdf")]), "invoice.pdf");form.append("idp_collection", "invoice");form.append("model", "basic-pro-max");const response = await fetch("https://api.paperoffice.ai/latest/job/add/workflow", { method: "POST", headers: { Authorization: "Bearer po_ut_YOUR_API_KEY" }, body: form,});console.log(await response.json()); Eerste aanroep
Het pad na /latest/job/add/ is de operatienaam: meestal in handler___command vorm (bijvoorbeeld paperoffice_aiocr___generate), en voor gestructureerde IDP de speciale workflow pipeline.
Authorization: Bearer po_ut_… — meer heeft een product-eindpunt niet nodig. poai_ en po_ut_ sturen geen Origin-header.
handler___command met drie onderstrepingstekens; workflow is de uitzondering met een eigen slug. Puntnotatie beantwoordt API met HTTP 400 JOB_CONFIG_INVALID.
client_wait is standaard true: De API houdt de verbinding actief en levert het resultaat inline. Als het tijdskader niet toereikend is, wordt HTTP 202 geretourneerd met job_id en poll_url voor GET /latest/job/get/{job_id}.
Voor idp_collection=invoice is basic-pro-max het aanbevolen model. Het daadwerkelijk gebruikte model wordt teruggegeven in het responsveld 'model' en kan afwijken van het gevraagde model.
Token-typen
Beide behoren tot de server. Ze worden aangemaakt, geroteerd en ingetrokken in de app onder Account → API.
poai_ Server-tot-server po_ut_ Gebruikersgerelateerd Aanroepen direct vanuit de browser lopen niet via deze twee tokens, maar via de Publishable Key po_pk_ — herkomstgebonden, budget- en ratebeperkt. Publishable Keys bekijken
Machtigingen
Een User Token heeft precies de rechten van zijn gebruiker in deze gebieden. Individuele gebieden kunnen bij het aanmaken niet worden toegekend; voor beperking dient een groeptoken (po_gt_) met de rechten van een gebruikersgroep.
documents Uploaden, Downloaden, Verwerken
workspaces Mappen en structuur beheren
ai_jobs OCR, IDP, extractie
billing Gebruik en saldo lezen
users Teamleden beheren
webhooks Gebeurtenissen ontvangen
knowledge_base Kennisbank en FAQ
agents IDP-agents configureren
workflows Automatiseringen maken
compliance Audit, AVG, archivering
Rate-limits
Er wordt per token gerekend; zonder Bearer per IP-adres. De volgende waarden zijn de gedocumenteerde minimumwaarden die in elk tarief gelden.
De headers RateLimit-* en X-RateLimit-* van elk antwoord geven aan hoeveel er in het lopende venster nog beschikbaar is.
API antwoordt met RATE_LIMIT_EXCEEDED. Herhaal de aanroep na de tijd uit de Retry-After-header.
Betaalde tarieven liggen boven deze minimumwaarden. Welk tarief welke omvang heeft, staat op de prijspagina.
Beveiliging
Zes mechanismen die in bedrijf werken — elk met een controleerbare statuscode of een locatie in de app.
Keys worden in de app aangemaakt, weergegeven, geroteerd en ingetrokken onder Account → API. Een ingetrokken token antwoordt met HTTP 401 TOKEN_NOT_FOUND.
Verlopen tokens antwoorden met HTTP 401 BEARERTOKEN_EXPIRED, foutieve met HTTP 401 INVALID_TOKEN. Publishable Keys gelden 180 dagen vanaf creatie.
In het Free-tarief gelden rate-limits per token. In betaalde tarieven telt het account; zolang Credits aanwezig zijn, gelden er geen rate-limits.
Publishable keys vereisen bij elk verzoek een origin uit de allowlist; anders wordt geantwoord met API met status 403 ORIGIN_HEADER_REQUIRED of DOMAIN_NOT_ALLOWED.
Elk gefactureerd antwoord bevat een _billing-blok; de evaluatie per aanroep levert GET /latest/billing/usage-detail op.
Account-login, sleutelbeheer, OAuth, partner-administratie, betalingsmutaties en wachtwoordkraken zijn geblokkeerd voor browser-sleutels. Product-APIs inclusief facturatie-lezen en webhooks zijn toegestaan. Workspace verwijderen, prullenbak legen en Legal-Hold-vrijgave gaan alleen in de app (403 UI_ONLY_ENDPOINT).
Aan de slag
U maakt de sleutel in de app aan onder Account → API. De eerste aanroep wordt stap voor stap beschreven in de Eerste API-aanroep.
Bedrijfsvoering en vertrouwen
Contracten, veiligheid, ondersteuning en limieten, allemaal op één plek gelinkt.
Volgende halte
De aanbevolen volgende stap in de developer-funnel en twee passende vertakkingen.
AI-DMS
Documenten. Intelligentie. Echte impact.
PaperOffice AI is het AI-DMS. Vier functiegebieden op één DMS-fundament, bereikbaar via drie toegangen.
Functies, modules en voordelen in overzicht.
Documenten vastleggen, organiseren, zoeken en samen bewerken.
Naadloos integreren in uw systemen en AI-workflows.
Geen installatie, binnen enkele seconden klaar.
Zoek alle tools