Developer docs
Build on the Swaglists API
Sell custom products in your store — we print, pack and ship every order under your brand. Connect your backend with a few REST calls and signed webhooks. Start with a test key: nothing is charged, printed or shipped.
curl "https://swaglists.com/api/v1/catalog/products?limit=3" \
-H "Authorization: Bearer $API_KEY"const res = await fetch("https://swaglists.com/api/v1/catalog/products?limit=3", {
headers: { Authorization: `Bearer ${process.env.API_KEY}` },
});
const { data } = await res.json();
console.log(data.map((p) => `${p.title}: from $${p.price_from / 100}`));import os, requests
res = requests.get(
"https://swaglists.com/api/v1/catalog/products",
params={"limit": 3},
headers={"Authorization": f"Bearer {os.environ['API_KEY']}"},
)
print([p["title"] for p in res.json()["data"]])Explore the docs
Getting started
Keys, test mode and your first order.
Core concepts
Catalog, designs, products, orders, shipping and credits.
Guides
Webhooks, idempotency, errors and the rest of the API conventions.
Integrations
Copy-paste recipes for Shopify, WooCommerce, BigCommerce and custom stores.
Reference
Endpoints, objects, events and every error code.
Build with AI
Give your coding assistant the whole API in one file.
Every page has a Markdown twin (add .md to its URL).
API basics
Base URL
Live and test mode share it; the key decides the mode.
https://swaglists.com/api/v1Authentication
Secret keys as Bearer tokens, from your server only.
Authorization: Bearer sk_test_…Keys, scopes & rotation Webhooks
Standard Webhooks signatures, retried for about 28 hours.
order.shipped · shipment.created · …Verify signatures