API

Your pipeline, unattended

REST endpoints for gang-sheet building, white channel generation, UV-DTF spot channels, and multi-sheet splitting. If a developer can touch the system, the whole pipeline — order in, sheet out — runs without a human in the loop.

Status: endpoint list is accurate and under active production use by existing accounts. The full API reference documentation site (request schemas, response shapes, error codes) is being written. If you need access ahead of the public reference going live, reach out and we will send you the current OpenAPI spec plus a sandbox key.

Quickstart — post an order, receive a gang sheet

Every NestSheet account comes with an API key. Set it as NESTSHEET_API_KEY and post a JSON order. The service returns a job ID you can poll or subscribe to via webhook.

curl -X POST https://api.nestsheet.com/v1/nest \
  -H "Authorization: Bearer ${NESTSHEET_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "sheet": { "widthMm": 600, "heightMm": 1000, "gutterMm": 3 },
    "target": "dtf",
    "rip":    "maintop",
    "items":  [
      { "fileId": "art_01H...", "quantity": 1 },
      { "fileId": "art_02H...", "quantity": 4 }
    ]
  }'

Endpoints

All endpoints live under https://api.nestsheet.com. Auth is bearer-token with per-workspace API keys. Rate limits and quotas are documented in the OpenAPI spec and shown on the API tab of your account.

POST /v1/nest — Submit an order, receive a packed gang sheet.

Accepts JSON order with one or more artwork URLs or uploaded file IDs. Returns a job ID and, on completion, a TIFF/PDF/JPEG URL.

POST /v1/remove-bg — Batch background removal for customer-uploaded artwork.

Accepts up to 50 images per call. Returns PNGs with alpha channel.

POST /v1/uv-channels — Generate white and varnish channels for UV-DTF output.

Input: colour PSD or TIFF. Output: multi-channel TIFF with named Spot_White and Spot_Varnish channels.

POST /v1/split-multi-sheet — Split an over-sized order across N gutter-safe sheets.

Given an order and a target sheet size, returns N sheets with a manifest.json mapping order items to sheet index and Y-range.

GET /v1/jobs/:id — Poll job status.

Returns queued / processing / complete / failed and the output URL when complete.

GET /v1/jobs/:id/manifest — Download the per-order manifest.

JSON describing the sheet layout: item → (sheet index, x, y, width, height, rotation).

POST /v1/webhooks — Register a webhook URL for job events.

Supported events: job.complete, job.failed, export.ready.

DELETE /v1/webhooks/:id — Remove a registered webhook.

Idempotent.

GET /v1/profiles — List ICC profiles available to your account.

Includes RIP-bundled defaults and any profiles uploaded to your workspace.

POST /v1/profiles — Upload an ICC profile to your workspace.

Profile is scoped to your workspace only. Not shared with other tenants.

OpenAPI spec

Available on request until the public reference ships. Use it with the client generator of your choice — TypeScript, Python, Go, Ruby, PHP, all supported from the same spec.

Webhooks

Subscribe to job.complete, job.failed, and export.ready events. Retries are exponential-backoff; delivery is at-least-once with an event ID for dedup on your side.

Build it into your pipeline

14-day free trial includes API access. Post real orders, measure real latency, write the integration your shop actually needs.