Publishable Keys
Chamadas API seguras para navegador. Sem backend próprio.
Um Publishable Key (po_pk_) pode estar no frontend: limitado por escopo, vinculado à origem e com orçamento máximo.
Para artefatos Claude, Canvas ChatGPT, Grok e qualquer aplicativo web próprio.
- Infraestrutura própria da UE Seus dados permanecem na Europa.
- ISO 27001 ativo Segurança certificada.
- SOC 2 Tipo II ativo Padrões internacionais de auditoria.
- Mais de 24 anos de experiência Comprovado. Estável. Preparado para o futuro.
Direto do navegador
Da AI-Canvas diretamente à chamada API
Você está construindo um aplicativo PDF-to-texto no Claude Artifacts, ChatGPT Canvas ou Grok. Sem backend, a chamada de API permanecia ausente: CORS bloqueia, uma chave secreta ficaria visível no código-fonte e uma chave aberta sobrecarregaria sua conta. É exatamente essa lacuna que as Chaves Publicáveis preenchem.
Inserir no Claude, ChatGPT ou Grok
Um prompt que transforma qualquer AI-Canvas em uma demonstração real, apoiada pelo API — sem backend.
Leia este documento API:
https://api.paperoffice.ai/latest/docs/llms-full.txt Crie um aplicativo React de arquivo único (Artefato Claude / Canvas ChatGPT / Grok):
O usuário carrega um PDF, o aplicativo chama
/job/add/paperoffice_aiocr___generate diretamente do navegador
e exibe o texto extraído. Autenticação: Bearer po_pk_MY_PUBLISHABLE_KEY (solicite a chave ao usuário).
Use processing_lane=instant para resultados síncronos. O cabeçalho Origin é definido pelo navegador. Escolha um preset, crie uma chave e cole-a.
O painel fornece presets para escopos e orçamentos. As origens permanecem vazias — insira o cabeçalho Origin das ferramentas de desenvolvedor do navegador, depois copie a chave para seu prompt.
const form = new FormData();form.append("file_1", fileInput.files[0]);form.append("processing_lane", "instant");form.append("client_wait", "true");const response = await fetch("https://api.paperoffice.ai/latest/job/add/paperoffice_aiocr___generate", { method: "POST", headers: { Authorization: "Bearer po_pk_YOUR_PUBLISHABLE_KEY" }, body: form,});console.log(await response.json()); curl -X POST "https://api.paperoffice.ai/latest/job/add/paperoffice_aiocr___generate" \ -H "Authorization: Bearer po_pk_YOUR_PUBLISHABLE_KEY" \ -H "Origin: https://app.example.com" \ -F "[email protected]" \ -F "processing_lane=instant" \ -F "client_wait=true" Primeira chamada
fetch do navegador, o navegador define o Origin
A chamada é direcionada para POST /latest/job/add/{pipeline} — o mesmo endpoint usado com uma Chave Secreta. O novo são apenas o tipo de chave e o cabeçalho Origin, que o navegador envia automaticamente.
- Origin vem do navegador
fetch define automaticamente o cabeçalho Origin. Scripts fora do navegador (cURL, Node) devem enviá-lo explicitamente — caso contrário, a API retornará 403 ORIGIN_HEADER_REQUIRED.
- Resultado em linha
Com processing_lane=instant e client_wait=true, a API mantém a conexão e entrega o resultado diretamente na resposta.
- Códigos de erro claros
402 BUDGET_EXHAUSTED, 403 DOMAIN_NOT_ALLOWED, 403 SCOPE_NOT_GRANTED, 429 RATE_LIMIT_EXCEEDED — cada limite informa seu próprio código.
Matriz de Segurança
Seis controles, todos aplicados no lado do servidor
Limitado por escopo, vinculado à origem, com orçamento máximo, revogável a qualquer momento. Cada controle é aplicado no lado do servidor — portanto, a chave pode estar no código frontend.
-
Limitado ao escopo
As chaves alcançam apenas os grupos de endpoints que você libera explicitamente:
ocr:read,llm:generate,translate:texte outros. Chamadas fora do escopo retornam HTTP 403. -
Vinculado à origem
Cada solicitação deve incluir um cabeçalho Origin que corresponda à lista de permissões da chave (host exato ou curinga de subdomínio). Se não corresponder, a API retorna HTTP 403.
-
Sem limite extra de minutos
Não há um limite de minutos próprio apenas para po_pk_. Valem os limites normais de taxa de tokens da conta; o consumo é limitado pelo orçamento vitalício.
-
Orçamento limitado
Cada chave possui um orçamento vitalício. Quando esgotado, a API retorna HTTP 402 BUDGET_EXHAUSTED — o consumo termina imediatamente, não apenas na faturação.
-
Revogação a qualquer momento
As chaves podem ser revogadas a qualquer momento na conta. Uma chave revogada não é mais aceita pela API.
-
Bloqueio permanente
HTTP DELETE, bem como login de conta, gerenciamento de chaves, OAuth, administração de parceiros, mutação de pagamento e cracking de senha permanecem permanentemente bloqueados para cada po_pk_. Os APIs do produto documentados — incluindo exclusão POST, webhooks, leitura de faturamento e CRM — são permitidos.
Hierarquia de Chaves
Três tipos de chaves, responsabilidades claras
Chave Secreta para o servidor, Chave Publicável para o navegador — além de um Token de Usuário para acesso relacionado ao usuário com limite de taxa.
| Prefixo | Tipo | Caso de Uso | Seguro para Navegador | Escopo Padrão |
|---|---|---|---|---|
po_sk_ | Chave Secreta | Servidor-para-Servidor, acesso total ao API | Não | Todos os Endpoints |
po_ut_ | User Token | Escopo do usuário, Limitado por nível | Não | Baseado em nível |
po_pk_ | Publishable Key | Navegador / AI-Canvas (Claude, ChatGPT, Grok) | Sim | Lista de escopo |
Três predefinições
Um clique. Uma chave. Um propósito.
Cada preset é configurado para um caso de uso específico — padrões seguros, escopos curados e orçamentos realistas. Tudo ajustável a qualquer momento no painel.
-
DEFAULTLeitura seguraPermissões padrão seguras para demonstrações simples e ferramentas internas: OCR, LLM, Tradução, Documentos, Pesquisa.
Escopos de permissão
Iniciar com este preset -
AIDEMOÁrea de testes de IA RecomendadoPara Claude Artifacts, ChatGPT Canvas e demonstrações do Grok. Tudo o que você precisa para colocar demonstrações de IA ao vivo.
Escopos de permissão
Iniciar com este preset -
WIDGETSite públicoPara formulários de contato, widgets de chat e botões de reserva no site da sua empresa.
Escopos de permissão
Iniciar com este preset
Primeira chamada API
Pronto para a primeira chamada do navegador?
Criar chave, abrir llms-full.txt, inserir prompt — seu aplicativo chama o API diretamente do Claude, ChatGPT ou Grok.
Chaves Publicáveis em Ação
Veja como as Chaves Publicáveis do PaperOffice funcionam na prática — no vídeo.
Perguntas frequentes
Tudo o que é importante em resumo
Qual é a diferença entre po_pk_ e po_sk_?
po_sk_ (Chave Secreta) destina-se à integração de servidor para servidor — acesso total ao API, nunca deve ser incorporado no navegador. po_pk_ (Chave Publicável) foi construído para código do navegador: escopo limitado, vinculado à origem e com orçamento teto. Mesmo API, diferente perfil de segurança.
Por que não usar simplesmente um proxy reverso do próprio backend?
Este é o caminho clássico — mas ainda exige um backend. Os AI-Artifacts (Claude, ChatGPT, Grok) são projetados para operar sem um backend próprio. As Publishable Keys tornam isso possível sem expor sua Secret Key: os limites são impostos no lado do servidor.
Isso funciona nos artefatos Claude, apesar de sua sandbox CORS?
Sim. A chamada ocorre diretamente do navegador, o cabeçalho Origin é definido pelo próprio navegador. PaperOffice não fornece uma lista de permissões de fornecedor; insira a origem ao criar a chave nas ferramentas de desenvolvedor.
O que acontece se minha po_pk_ se tornar publicamente visível?
O dano permanece contido: o bloqueio de origem impede o uso em domínios terceiros, o limite de orçamento encerra o consumo, e o limite de taxa desacelera acessos automatizados. Revogue a chave na conta — após isso, o API não a aceitará mais.
Posso adicionar meu próprio domínio à lista de origens permitidas?
Sim. Ao criar a chave, você pode adicionar qualquer origem à lista de permissões — como host exato ou como curinga de subdomínio. O preset WIDGET foi construído exatamente para isso: registre seu próprio domínio e incorpore widgets de chat, reserva ou contato sem backend.
Como defino o orçamento por chave?
Ao criar, selecione um limite vitalício; os predefinições incluem uma configuração padrão. Quando o limite for atingido, a API retorna HTTP 402 BUDGET_EXHAUSTED. Você pode ajustar o valor na conta a qualquer momento.
O po_pk_ requer sua própria tarifa?
Não. O Publishable Key é uma camada de proteção adicional em torno da sua conta existente: limita escopos, origens e orçamento. A visão geral de preços mostra qual plano se adapta à sua configuração.
Quais endpoints estão bloqueados para po_pk_?
HTTP DELETE, bem como login de conta, administração de usuários, gerenciamento de chaves, OAuth, administração de parceiros, checkout do Stripe e cracking de senha estão permanentemente bloqueados. O API documentado do produto é permitido, incluindo exclusão POST, webhooks, leitura de faturamento, importação e CRM. A exclusão Workspace, o esvaziamento da lixeira e a liberação do Legal Hold permanecem exclusivos da interface do usuário (403 UI_ONLY_ENDPOINT).
Operações e confiança
O que as equipes empresariais verificam antes da primeira chamada
Contratos, segurança, suporte e limites, todos vinculados em um só lugar.
- Segurança e Conformidade ISO 27001, SOC 2 Tipo II, infraestrutura própria na UE.
- SLA de 99,9% Disponibilidade por mês civil, garantida contratualmente.
- Processamento de Dados em Nome de Terceiros (DPA) Contrato de processamento de dados em conformidade com o RGPD.
- Lista de Subprocessadores Todos os subcontratados listados de forma transparente.
- Suporte Técnico Acesso direto à equipe de suporte, via ticket.
- Limites de taxa e cabeçalhos Valores mínimos documentados por token, cabeçalho de limite de taxa em cada resposta.
- Preços e créditos Preços transparentes de créditos por chamada.
Próxima parada
Como prosseguir
O próximo passo recomendado no funil do desenvolvedor e dois desvios adequados.