canonical: https://jentic.com/apis/artworker.io/artworker

# Artworker API

Jentic publishes the only available OpenAPI specification for Artworker API, keeping it validated and agent-ready. Artworker is a print and packaging artwork management platform, and its open API exposes job items, file imports and proofing, workflow tasks, task files and pages, and webhook endpoints. Nineteen endpoints span the v2 job lifecycle (create job, complete or archive job items, request artwork, attach files) and the v1 task and webhook surface used to drive longer-running production workflows.

## For AI agents

Drive Artworker print and packaging workflows: create jobs, request artwork, attach files, run task workflows, and listen for events via webhooks.

## Scope

Does not handle physical printing, shipping, or invoicing - use for managing Artworker artwork jobs, tasks, and webhooks only.

## Capabilities

- Create new artwork jobs and look up job items
- Mark job items complete, archive them, or request artwork from a supplier
- Import and attach files to a job item, including referencing files by custom uid
- Drive task-based workflows: list workflows, fetch tasks, attach files and pages
- Register webhook endpoints to receive Artworker production events

## Use cases

### Print Job Intake Automation

Automate the intake of new print jobs from a customer-facing form into Artworker. POST /v2/job creates the job, follow-on calls to /v2/job-item/{id}/import-files attach the customer-supplied artwork, and /v2/job-item/{id}/request-artwork triggers the request flow when artwork is missing. Saves print operators from re-keying job specs into the Artworker UI.

Example prompt: POST /v2/job to create a job for SKU 'BOX-12', then call /v2/job-item/{id}/import-files to attach the customer-supplied PDF

### Packaging Proofing Loop

Run a proofing loop on packaging artwork by creating a workflow task per proof, attaching pages, and using webhooks to know when each task moves between states. The /v1/taskapi/workflows endpoints expose task creation and file/page management; /v1/webhook_endpoint registers the listener.

Example prompt: List workflows, pick the proofing workflow id, attach the new artwork file via /v1/taskapi/workflows/{workflowId}/task/{taskName}/files, and register a webhook for task-state-changed events

### Production Status Sync

Sync Artworker production status into an upstream ERP or order system using webhooks plus targeted reads on /v2/job-item/{id}. When a job item is completed, the webhook fires and the receiver can mark the corresponding ERP order line as ready to ship.

Example prompt: Subscribe to job-item completion events via /v1/webhook_endpoint, and on each event fetch /v2/job-item/{id} and update the corresponding ERP order line

### Agent-Driven Artwork Request via Jentic

Let an internal AI assistant trigger an artwork request to a supplier when a job item is short on files. The agent searches Jentic for 'request artwork in Artworker', loads the schema for /v2/job-item/{id}/request-artwork, and executes - without managing the API key directly.

Example prompt: Search Jentic for 'request artwork in Artworker', load the schema, and execute against job item id 5012 to issue an artwork request

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /v2/job | Create a new artwork job |
| GET | /v2/job-item/{id} | Fetch a job item by id |
| POST | /v2/job-item/{id}/complete | Mark a job item complete |
| POST | /v2/job-item/{id}/request-artwork | Request artwork from a supplier for a job item |
| POST | /v2/job-item/{id}/import-files | Import files into a job item |
| GET | /v1/taskapi/workflows | List task workflows |
| GET | /v1/taskapi/workflows/{workflowId}/task/{taskName} | Fetch a workflow task |
| POST | /v1/webhook_endpoint | Register a webhook endpoint |

## Key resources

- **Jobs** — Create and manage artwork jobs and job items
- **Job Items** — Complete, archive, request artwork, and import files for individual job items
- **Task Workflows** — List workflows and manage tasks, files, and pages within a workflow
- **Webhook Endpoints** — Register webhook URLs to receive Artworker production events

## Why Jentic

- **Setup:** Wiring Artworker by hand means handling its API-key query parameter and reconciling its v1 task endpoints with its v2 job endpoints yourself. Through Jentic you install once, import the Artworker API from the API Directory, store the key once, and your agent calls it while Jentic applies the key.
- **Permission scoping:** Artworker puts the job-item id in the URL path (/v2/job-item/{id}/...), so a rule can pin your agent to actions on one job item, such as completing it or requesting artwork. You choose the operations it may call, so job creation is not included unless you add it.
- **Credential handling:** Your Artworker API key is stored once, encrypted, by your own Jentic One instance and applied as the api_key query parameter at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create an Artworker job' or 'request artwork in Artworker', and Jentic returns the matching operation with its input schema so the agent does not have to choose between the v1 task and v2 job endpoints by hand.

## Related APIs

- **Figma REST API** — Figma is where the artwork is designed; Artworker is where it is produced and proofed
- **Slack API** — Slack receives the human-facing notifications that an Artworker job has progressed
- **HubSpot CRM Deals API** — HubSpot tracks the deal that triggers a production job in Artworker

## FAQ

### Why is there no official OpenAPI spec for Artworker API?

Artworker does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Artworker API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Artworker API use?

Artworker uses an API key passed as the api_key query parameter on each request. Through Jentic, the key is stored encrypted in the vault and appended at execution time, so the agent never sees the raw key.

### Can I create a new artwork job programmatically?

Yes. POST /v2/job creates a job, and you can then attach files to its items via /v2/job-item/{id}/import-files or trigger a supplier artwork request via /v2/job-item/{id}/request-artwork.

### What are the rate limits for the Artworker API?

Artworker does not publish a hard public rate limit. The API is intended for production-system integration rather than end-user polling, so keep traffic to event-driven calls and webhook-triggered reads.

### How do I subscribe to job completion events through Jentic?

Run pip install jentic, then search Jentic with 'register Artworker webhook', load the schema for POST /v1/webhook_endpoint, and execute with your handler URL. Artworker will then push events such as job-item completion to that URL.

### Can I attach pages to a workflow task?

Yes. /v1/taskapi/workflows/{workflowId}/task/{taskName}/files and /v1/taskapi/workflows/{workflowId}/task/{taskName}/files/{fileNum}/pages let you attach files and individual pages to a task within a workflow.

### Can I limit what my agent is allowed to do with the Artworker API?

Yes. Jentic One runs self-hosted, so your own rules decide which Artworker operations and credentials the agent may use. Because Artworker puts the job-item id in the URL path (/v2/job-item/{id}/...), you can pin the agent to actions on a single job item, such as completing it via /v2/job-item/{id}/complete or requesting artwork via /v2/job-item/{id}/request-artwork. You pick the operations it may call, so job creation with POST /v2/job stays off unless you explicitly allow it.
