API Reference
NowToPrint exposes three API surfaces: the Partner REST API, the XJDF/PrintTalk integration layer, and the Preflight engine API. This page maps each surface to its OpenAPI specification and integration guides.
API Reference
NowToPrint exposes three distinct API surfaces. Choose the one that matches your integration goal.
API Surfaces
Partner REST API
Create RFQs, receive quotes and place print orders programmatically from your own application. Requires API key authentication.
XJDF / PrintTalk API
CIP4 XJDF 2.2 and PrintTalk 2.2 compliant B2B integration layer for MIS/ERP systems and print-shop workflow software.
Preflight Engine API
Submit PDF files for automated quality checks and receive structured reports — DPI, bleed, colour mode, font embedding.
OpenAPI Specifications
Each API surface is documented with a machine-readable OpenAPI specification that you can import into any API client (Postman, Insomnia, Bruno, etc.).
| API | Version | Spec File | Interactive Docs |
|---|---|---|---|
| Partner REST API | v1 | openapi.yaml | Swagger UI |
| XJDF / PrintTalk API | v1 | xjdf-openapi.yaml | — |
| Preflight Engine API | v1 | preflight-openapi.yaml | — |
OpenAPI-first development
All three specifications are maintained as the source of truth for API contracts. The interactive Swagger UI for the Partner API allows you to try requests directly from your browser without writing any code.
Authentication
Partner REST API — API Key
All Partner API requests require an X-API-Key header. Obtain your key from the Developer section of your organisation settings.
GET /api/v1/rfq HTTP/1.1
Host: api.nowtoprint.com
X-API-Key: np_live_xxxxxxxxxxxxxxxxxxxx
XJDF / PrintTalk — Mutual TLS or API Key
B2B integrations support either mutual TLS (mTLS) certificate authentication or API key. Refer to the XJDF Integration Guide for details.
Rate Limits
| API | Limit | Window |
|---|---|---|
| Partner REST API | 100 requests | Per minute |
| Partner REST API | 1,000 requests | Per hour |
| Preflight Engine API | 20 submissions | Per minute |
When a limit is exceeded the API returns HTTP 429 Too Many Requests with a Retry-After header.
SDK & Integration Examples
The repository includes ready-to-run examples for common integration patterns:
- Node.js / TypeScript — full RFQ lifecycle (create → bid → accept)
- Python — batch order submission via the Partner API
- cURL — minimal examples for all three API surfaces
See docs/api/examples/ in the repository.
Versioning Policy
- The current stable version is v1 for all API surfaces
- Breaking changes will be introduced in a new major version (
/api/v2/) - v1 will be supported for at least 12 months after v2 is released
- Deprecation notices are sent to registered API key contacts at least 90 days in advance
Related Guides
Verwandte Artikel
War dieser Artikel hilfreich?