InkSmith Press stellt eine versionierte HTTP-API für freigegebene Vorlagen und Produktionsrender-Jobs zur Verfügung. Press Control in Desktop verwendet die gleiche Verwaltungsgrenze. Die API ist für autorisierte Clients; sie ist nicht für lokale Desktop-Arbeiten erforderlich.
Entdecken Sie die Instanz
Eine Press-Bereitstellung macht GET /health, GET /ready und GET /api/v1/instance sichtbar. Verwenden Sie Bereitschaft und Instanzerkennung, um die API-Version, die Rendererkompatibilität und das akzeptierte Vorlagenschema zu überprüfen, bevor Sie Arbeit senden.
Der Server sollte sich hinter seinem konfigurierten HTTPS-Gateway für die Fernnutzung befinden. Folgen Sie den Press Einsatzleitfaden für Docker und Windows Service-Optionen.
Authentifizierung und Scope eines Kunden
Senden Sie Authorization: Bearer <token> auf geschützte Anfragen. API-Clients erhalten nur die Bereiche, die sie benötigen. Für das Rendern sind die entsprechenden Berechtigungen renders.create, jobs.read und outputs.read. Zu den Managementbereichen gehören templates.read, templates.write und templates.publish.
Speichern Sie die ausgestellten Anmeldeinformationen außerhalb von Vorlagen, Source Control und Browser JavaScript. Press speichert API-Client-Anmeldeinformationen als Hashes und unterstützt den sofortigen Widerruf.
Einreichen und Abrufen eines Render-Jobs
Nur eine aktive veröffentlichte Vorlage kann gerendert werden. Eine typische Anfrage ist:
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"}}}
Der Job ist asynchron. Lesen Sie GET /api/v1/render-jobs/:id, bis sein Status completed, failed oder cancelled ist. Nach Abschluss gibt GET /api/v1/render-jobs/:id/output den PDF zurück, wenn der Anrufer outputs.read hat.
Verwenden Sie den gleichen idempotency-Schlüssel nach einem unsicheren Netzwerkausfall nur für den gleichen Antrag und Nachweis. Die Wiederverwendung mit geänderter Eingabe erzeugt 409 idempotency_conflict.
Verwalten von Template Revisionen
Sammlungen, Vorlagen, Entwürfe, Versionen und Publikationen sind servereigen. Draft Content Transfers verwenden application/vnd.inksmith.template. Speichern und Veröffentlichen erfordert die aktuelle undurchsichtige Revision in If-Match; ein veraltetes Entwurfsupdate erhält 412 template_revision_conflict. Eine veröffentlichte Version ist unveränderlich. Unpublish und Rollback arbeiten mit der separaten Publikationsrevision.
Siehe Press Control für den Desktop-Bearbeitungsworkflow. Der Press Einsatzleitfaden erklärt die unterstützten Hosting-Pfade und aktuellen Grenzen.
Derzeitiger Anwendungsbereich: Interaktive Benutzer- und Rollenverwaltung, Zertifikatsregistrierung und einige Aufbewahrungskontrollen sind noch in der Entwicklung. Behandeln Sie die veröffentlichten API- und Berechtigungsprüfungen als Vertrag; umgehen Sie sie nicht mit direkten Datenbankänderungen.