Skip to main content
A Fabrixa API request on screen — JSON order payload with auth headers, against woven textile
API documentation

One endpoint. Infinite products.

Every Fabrixa SKU, every fabric, every finish — addressable through one documented REST API. JSON in, JSON out. Webhooks for every state transition. Self-serve API keys — create a sales channel and start building.

REST · JSON · Webhooks · Studio embed · Swagger

What you get

Built around how production actually works.

A documented REST API that mirrors the platform — orders, fulfilment, Studio customization, and webhooks. JSON in, JSON out. Use it alongside the dashboard, or drive everything programmatically.

01
Orders
POST /v2/integration/orders

Submit an order with rows, source PDFs, customer details and shipping address. Returns the Fabrixa order ID. Optional shipping label and tracking fields.

02
Fulfilment
GET /orders/{id}/fulfillments

Pull production status per line item: every step (print, fix, wash, sew) with pending / in progress / done / rejected states. Or subscribe to webhooks for push.

03
Studio
iframe embed

Embed Fabrixa Studio in your storefront. Customers customize products in real time, with postMessage events for add-to-cart and back, plus a preview URL for cart thumbnails.

04
Webhooks
order.created / order.updated

Two topics, HMAC-SHA256 signed payloads, full order body, 10-retry delivery with back-off.

Quick start

Place an order in one POST.

Authenticated request, validated payload, slot reserved in the production queue. Confirmation back in milliseconds — your customer’s order is now in motion.

Full schema, all endpoints, error codes, rate limits, and integration examples are in the technical docs.

POST /v2/integration/orders
// POST https://api.fabrixa.com/v2/integration/orders
// Authorization: Bearer APPLICATION_ACCESS_TOKEN
// X-Application-Key: APPLICATION_KEY
{
  "number":       "ORD-2026-0142",
  "purchased_at": "2026-05-28 14:22:01",
  "rows": [
    {
      "sku":      "COF099191",
      "quantity": 1,
      "sources": [
        { "type": "file", "url": "https://cdn.you.com/art/9812.pdf" }
      ]
    }
  ],
  "customer": {
    "first_name": "Maria",
    "last_name":  "Silva",
    "email":      "maria@example.com",
    "phone":      "+351912345678"
  },
  "shipping_address": {
    "address":      "Rua do Carmo 42",
    "city":         "Lisboa",
    "postal_code":  "1200-094",
    "country_code": "PT",
    "country":      "Portugal"
  }
}
Integration flow

Live in two weeks. No proxy, no middleware.

Direct REST integration into your platform. No required SDK, no proxy server, no third-party connector. Standard HTTP from your stack to ours.

01
Credentials

Get an Application Access Token and Application Key by creating a sales channel in your dashboard. Both are required on every request: Bearer token in Authorization, Application Key in X-Application-Key.

02
Catalog

Browse the live Swagger reference to find variant SKUs for the products you want to sell, plus filter and pagination patterns.

03
Orders

On checkout, send a POST with rows, sources (PDF URLs), customer and shipping_address. Store the returned Fabrixa order ID against your own order reference.

04
Webhooks

Expose a public POST endpoint. We sign every payload with HMAC-SHA256 (x-webhook-signature) so you can verify authenticity before processing.

05
Studio

Optional: drop the Fabrixa Studio iframe into your product page. Customers personalize live; attach their customizations to the order on POST.

Developer resources

Everything your engineering team needs.

Full API reference

Complete endpoint documentation, request/response schemas, error codes, rate limits, authentication, Studio embedding and webhook contracts — with a live Swagger interface.

Open docs →

Build against a sales channel

Create a dedicated sales channel to build against — submit test orders, verify webhook delivery, validate edge cases — then point real traffic at your live channel. Your keys are ready the moment you create the channel — no request step.

Create your account →

Postman collection

Pre-configured request collection with example payloads and authentication. Import it into your testing workflow.

Get the collection →
Security

Two-header auth. Signed webhooks. Rate-limited.

Standard practices, no surprises. Every request is authenticated with both a Bearer token and an Application Key. Every webhook is HMAC-signed for verification, with predictable per-application rate limits.

Application Access Token

Bearer token in the Authorization header. Identifies the calling application.

Application Key

Sent in the X-Application-Key header. Both are required on every request — missing either returns 401.

TLS encryption

HTTPS-only on api.fabrixa.com. Plain-text requests are rejected at the edge.

Webhook signatures

Every webhook is signed with HMAC-SHA256, sent in the x-webhook-signature header. Verify before processing.

Rate limits

30 requests per application per minute. X-RateLimit-Limit and X-RateLimit-Remaining are returned on every response.

Webhook retries

Up to 10 delivery attempts on a non-2xx / non-3xx response. The webhook is deactivated after the 10th failure.

Start building

Create a sales channel and start building today.

Register, create a sales channel and your API credentials are ready immediately. Need a hand? Our solutions engineers respond within 24h — most teams are live in two weeks.