FinerWorks API
Build print & framing fulfillment into your app
The FinerWorks API gives your application direct access to our print-on-demand and custom framing production infrastructure. You build the customer experience — we handle manufacturing, quality control, and shipping.
Don't have credentials yet? Register at FinerWorks.
What you can build
Apps built on the FinerWorks API tap into the same production infrastructure that powers FinerWorks.com.
Custom storefronts & marketplaces
Sell prints, canvases, and framed pieces under your own brand, powered by our fulfillment behind the scenes.
Print-on-demand automation
Submit orders programmatically and let FinerWorks handle production, packing, and shipping.
Framing & product configurators
Let customers choose media, mounting, mats, and frames using our product code system.
What the API covers
A few of the endpoint categories available — see the full list in the API Reference.
Orders & Fulfillment
Submit, update, and track orders through production.
Products & Pricing
Look up product types, media, and pricing, and validate configurations.
Framing & Matting
Query frame collections, mats, and glazing options.
Shipping
Get shipping options and rates for accurate checkout costs.
Virtual Inventory
Manage reusable SKUs for items you print and order again.
How it works
Get your API keys
Register with FinerWorks and grab your web_api_key and app_key.
Test your integration
Call the API in test mode with sample data — nothing gets billed or produced.
Go live
Switch to live mode and start fulfilling real orders through production.
A quick look
Every endpoint follows the same shape — JSON in, JSON out, over HTTPS.
curl --location --request POST 'https://v2.api.finerworks.com/v3/get_product_details' \
--header 'Content-Type: application/json' \
--header 'web_api_key: my-web-api-key-goes-here' \
--header 'app_key: my-app-key-goes-here' \
--data-raw '[{ "product_sku": "AP6543P49875" }]'
See this same request in PHP, C#, JavaScript, Node, and Ruby in Getting Started, or browse every endpoint in the API Reference.