poai_ Servidor a Servidor Chave de API
- Direitos da conta que a cria (admin: conta inteira)
- Nunca entregar no código do navegador
- Sem necessidade de cabeçalho Origin
- Bloqueado para MCP
- Pode ser limitada a endereços IP
Autenticação e Chaves
Cada endpoint do produto PaperOffice-API espera o cabeçalho Authorization: Bearer. Sem fluxo OAuth, sem atualização (refresh).
Dois tipos de token, permissões claras, limites de taxa documentados.
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()); Primeira chamada
O caminho após /latest/job/add/ é o nome da operação: geralmente na forma handler___command (por exemplo paperoffice_aiocr___generate), e para IDP estruturado, a pipeline dedicada workflow.
Authorization: Bearer po_ut_… — um endpoint de produto não precisa de mais nada. poai_ e po_ut_ não enviam o cabeçalho Origin.
handler___command com três underscores; workflow é a exceção com seu próprio slug. A notação por pontos responde à API com HTTP 400 JOB_CONFIG_INVALID.
client_wait é true por padrão: O API mantém a conexão e entrega o resultado inline. Se a janela de tempo não for suficiente, retorna HTTP 202 com job_id e poll_url para GET /latest/job/get/{job_id}.
Para idp_collection=invoice, basic-pro-max é o modelo recomendado. O modelo efetivamente utilizado é retornado no campo de resposta 'model' e pode diferir do solicitado.
Tipos de token
Ambos devem ser enviados ao servidor. Eles são criados, rotacionados e revogados no aplicativo em Conta → API.
poai_ Servidor a Servidor po_ut_ Relacionado ao usuário Chamadas diretas do navegador não passam por esses dois tokens, mas sim pela chave publicável po_pk_ — vinculada à origem, com limite de orçamento e taxa. Ver Chaves Publicáveis
Permissões
Um User Token possui exatamente os direitos do seu usuário nestas áreas. Áreas individuais não podem ser atribuídas durante a criação; para delimitar, utiliza-se um token de grupo (po_gt_) com os direitos de um grupo de usuários.
documents Upload, Download, Processamento
workspaces Gerenciar pastas e estrutura
ai_jobs OCR, IDP, Extração
billing Ler uso e saldo da conta
users Gerenciar membros da equipe
webhooks Receber eventos
knowledge_base Base de dados de conhecimento e FAQ
agents Configurar agentes IDP
workflows Criar automações
compliance Auditoria, GDPR, arquivamento
Limites de taxa
A contagem é feita por token; sem Bearer, por endereço IP. Os valores a seguir são os mínimos documentados que se aplicam a cada tarifa.
Os cabeçalhos RateLimit-* e X-RateLimit-* de cada resposta indicam quanto ainda está disponível no período atual.
A API responde com RATE_LIMIT_EXCEEDED. Repita a chamada após o tempo indicado no cabeçalho Retry-After.
As tarifas pagas estão acima desses valores mínimos. Qual tarifa tem qual escopo está na página de preços.
Segurança
Seis mecanismos que entram em operação — cada um com um código de status verificável ou um local no aplicativo.
As chaves são criadas, listadas, rotacionadas e revogadas no aplicativo em Conta → API. Um token revogado responde com HTTP 401 TOKEN_NOT_FOUND.
Tokens expirados retornam HTTP 401 BEARERTOKEN_EXPIRED, tokens inválidos retornam HTTP 401 INVALID_TOKEN. Publishable Keys são válidos por 180 dias a partir da criação.
No plano Free, aplicam-se limites de taxa por token. Em planos pagos, conta a conta; enquanto houver Credits disponíveis, não há limites de taxa aplicáveis.
Chaves Publicáveis exigem um Origin da Allowlist em cada requisição; caso contrário, a API responde com 403 ORIGIN_HEADER_REQUIRED ou DOMAIN_NOT_ALLOWED.
Cada resposta faturada contém um bloco _billing; a avaliação por chamada fornece GET /latest/billing/usage-detail.
Login de conta, gerenciamento de chaves, OAuth, administração de parceiros, mutação de pagamento e cracking de senha estão bloqueados para chaves do navegador. O produto APIs, incluindo leitura de faturamento e webhooks, é permitido. Excluir Workspace, esvaziar a lixeira e liberar o Legal Hold só podem ser feitos no aplicativo (403 UI_ONLY_ENDPOINT).
Começar
Defina a chave no aplicativo em Conta → API. A primeira chamada é descrita passo a passo na Primeira Chamada API.
Operações e confiança
Contratos, segurança, suporte e limites, todos vinculados em um só lugar.
Próxima parada
O próximo passo recomendado no funil do desenvolvedor e dois desvios adequados.
AI-DMS
Documentos. Inteligência. Impacto real.
O PaperOffice AI é o AI-DMS. Quatro áreas funcionais sobre uma mesma base DMS, disponíveis através de três acessos.
Visão geral das funcionalidades, módulos e benefícios.
Capture, organize, pesquise e edite documentos em conjunto.
Integrar-se perfeitamente aos seus sistemas e fluxos de trabalho de IA.
Sem instalação, pronto em segundos.
Pesquisar todas as ferramentas