Print on demand API

A print on demand API
for real framing.

Run your own stack? Send a framed or unframed print order as JSON from any system. We validate the print file, produce the piece in New Jersey, ship it under your brand, and call your endpoint back with tracking.

Side profile of the Museum Black moulding, showing its depth and clean edge
Museum Black profile, one of 40 frames your API orders can specify
How it works

Three calls, and the frame ships itself.

The API is order-in, tracking-out. You do not manage production, labels, or carriers. You send the order and listen for the callback.

01

Post the order

Send the print file, the frame and size, and the ship-to address as JSON. We validate the file resolution and confirm the order.

02

We produce and ship

Your order prints, frames, and packs on our New Jersey floor, then ships under your brand. Nothing in the box points back to us.

03

We call you back

When the label prints, we POST the tracking number to your callback URL so your own system can notify the buyer.

The request

One POST creates a framed order.

Authenticate with an API key. Send the order body. You get back an order id you can poll for status, or just wait for the tracking callback.

Print files are ingested over a signed URL, so large, high-resolution art never rides through your own servers.

Read the full docs

# create a framed print order
POST /v1/orders
Authorization: Bearer $FOD_API_KEY
Content-Type: application/json

{
  "external_id": "order-10482",
  "ship_to": {
    "name": "A. Buyer",
    "address1": "12 Main St",
    "city": "Austin",
    "state": "TX",
    "zip": "78701"
  },
  "items": [{
    "print_file_url": "https://…/art.tif",
    "width_in": 18,
    "height_in": 24,
    "frame": "museum-black",
    "mat": "antique-white"
  }],
  "callback_url": "https://you.com/fod/hook"
}

Representative shape. Field names and options come with the full docs when you request access.

Any stack

If it speaks HTTPS, it can sell framed art.

Magento

Open-source carts

Wire our API to your order flow and add framed prints to a store we do not have a native app for yet.

Headless

Custom front ends

Next, Astro, or a bespoke checkout. Your front end takes the order, the API takes it from there.

Internal

Tools and ERPs

Batch orders from a back-office tool, a gallery system, or a bulk import. The same endpoint accepts them all.

A clean gallery wall of white-matted framed prints, the kind of volume an institution orders
For institutions

Bigger catalogs get a person, not a portal.

Museums, universities, and large art catalogs do not want to self-serve an API alone. Our team scopes the integration with you, maps your catalog to our materials, and stands up the connection alongside your developers.

You get museum-grade materials, archival options, and one shop accountable for every piece. Read more on the institutions page.

FAQ

API questions.

What can the print on demand API do?

It takes a framed or unframed print order from any system that can send JSON. You post the order and a print file. We validate the file, produce the piece in New Jersey, ship it, and call your endpoint back with the tracking number.

Which platforms can use the API?

Any stack. Magento, a headless storefront, a custom checkout, or an internal ordering tool. If it can make an HTTPS request, it can send orders to FramesOnDemand.

Is fulfillment white-label?

Yes. Nothing in the package points back to us. The order ships under your brand, so your customer only sees you.

Do you support large catalogs and institutions?

Yes. For larger catalogs, museums, and institutional buyers, our team wires a scoped integration alongside yours instead of leaving you to self-serve.

Build framed art into your stack.

Tell us what you are building and we will send the docs and a key.