API
Publish an enriched catalog to the places shoppers and AI assistants read it.
The Fabric API is HTTP and JSON. Every request is authenticated with an API key and scoped to the organization that key belongs to.
It covers the whole catalog: importing and exporting, reading and correcting product content, running enrichment, and publishing. An AI assistant reaches the same surface through MCP.
Authentication
Get a key, send it, and understand what its scopes let it do.
Errors
What each status means, and why two of them are deliberately unhelpful.
Paginating results
Walk a collection with a cursor, and why there is no page number.
Retrying safely
Send an Idempotency-Key so a retry cannot start the same job twice.
Handling rate limits
The four budgets, and what to do at 429.
Receiving webhooks
Learn that a job finished without polling for it.
Publishing over the API
Create a destination connection, test it, start a run, and read what it wrote.
Destinations
Every destination, what its kind decides, and the download cap.
Base URL
https://fabric.inc/api/v1Every path on the reference pages is relative to that. /v1 is the whole machine surface — there
is nothing to call outside it.
The shape of everything
A successful response is the resource. A refusal is application/problem+json, always the same
shape:
{
"type": "https://fabric.inc/docs/api/errors#not_found",
"title": "Not found",
"status": 404,
"code": "not_found",
"instance": "/api/v1/brands/brd_1"
}Branch on code. It is a closed set and stable across releases; title and detail are for a
person reading a log. Full list on Errors.
One rule worth reading before you start
A brandId you send is a claim, checked on every call. A brand outside your organization
answers not found rather than forbidden — telling you it exists but is not yours would confirm
the id, which is the one thing an unauthorized caller should not learn.
GET /v1/me lists the brands your key can reach, so you never have to guess one.
The same applies to connections, mappings and runs: they resolve only within your organization.
Reference
Every endpoint below is generated from the schemas that validate the API, so what you read is what the server accepts. Use the request panel on any operation to send a real call with your own key.