O InkSmith Press expõe uma API HTTP versionada para modelos compartilhados e trabalhos de renderização de produção. Press Control no Desktop usa o mesmo limite de gerenciamento. A API é para clientes autorizados; não é necessária para o trabalho local do Desktop.
Descubra a instância
Uma implantação de Press expõe GET /health, GET /ready e GET /api/v1/instance. Use prontidão e descoberta de instância para verificar a versão API, compatibilidade do renderizador e esquema de modelo aceito antes de enviar o trabalho.
O servidor deve se sentar atrás de seu gateway HTTPS configurado para uso remoto. Siga o Guia de implantação Press para opções de Docker e Windows Service.
Autenticação e escopo de um cliente
Enviar Authorization: Bearer <token> em pedidos protegidos. Os clientes da API recebem apenas os escopos de que precisam. Para renderização, as permissões relevantes são renders.create, jobs.read e outputs.read. Os escopos de gerenciamento incluem templates.read, templates.write, e templates.publish.
Armazene os modelos externos de credencial emitidos, controle de fonte e JavaScript do navegador. Press armazena credenciais de cliente API como hashes e suporta a revogação imediata.
Enviar e recuperar uma tarefa de renderização
Apenas um modelo publicado ativo pode ser renderizado. Um pedido típico é:
POST /api/v1/render-jobs
Authorization: Bearer <token>
Content-Type: application/json
Idempotency-Key: invoice-1042
{"template_id":"<published-template-id>","data":{"customer":{"name":"Ada"}}}
O trabalho é assíncrono. Leia GET /api/v1/render-jobs/:id até seu status ser completed, failed ou cancelled. Uma vez concluído, GET /api/v1/render-jobs/:id/output retorna o PDF se o chamador tiver outputs.read.
Reutilizar a mesma chave de idempotência após uma falha de rede incerta apenas para o mesmo pedido e credencial. Reutilizá-lo com entrada alterada produz 409 idempotency_conflict.
Gerenciar revisões de modelos
Coleções, modelos, rascunhos, versões e publicação são de propriedade do servidor. Rascunho de transferências de conteúdo usar application/vnd.inksmith.template. Salvações e publicação exigem a revisão opaca atual em If-Match; uma atualização de rascunho desatualizada recebe 412 template_revision_conflict. Uma versão publicada é imutável. A publicação não publicada e o retrocesso operam na revisão de publicação separada.
Veja Press Control para o fluxo de trabalho de edição do Desktop. O Guia de implantação Press explica os caminhos de hospedagem suportados e os limites atuais.
Âmbito actual: Administração interativa de usuários e funções, registro de certificados e alguns controles de retenção ainda estão em desenvolvimento. Trate a API publicada e as verificações de permissão como o contrato; não as ignore com alterações diretas no banco de dados.