Developers › Docs › What's supported

What's supported

What the API can and can’t do, which plan includes it, browser-run marketplaces, testing, and building for other sellers.

What the API does today, what it doesn't, and the practical limits: plans, accounts that need FLUF open, sandbox, and building for other sellers. Everything on this page is live. Anything not live is labelled Not available. We don't list roadmap items as features.

Capabilities

You want to…StatusHow
List the marketplace accounts you can publish toSupportedGET /accounts
Publish an existing product to one or more marketplacesSupportedPOST /items
Change a listing's price without repostingSupportedPOST /items with price on that target
Take listings down on chosen marketplacesSupportedDELETE /items
Mark an item sold and take it down everywhereSupportedPOST /items/{vid}/mark-sold. Returns a success or failure per channel
Delete a productSupportedDELETE /items/{vid}
Read listing state, URLs and sale infoSupportedGET /items, GET /items/{vid}
Get told when something sells, lists, fails or is delistedSupportedWebhooks
Get told when a buyer sends a messageSupported on Depop and Vinted onlymessage.received webhook, carrying the text, buyer and item
Create a product from your own photos and detailsSupportedPOST /products. AI fills in anything you leave out
Create products in bulk from a CSV or Excel fileSupportedPOST /products/import, then poll GET /products/import/{id}
Edit a product's title, description, photos, price or attributesSupportedPATCH /items/{vid}. Live listings are updated too
See why a marketplace refused a listing, correct it and resendSupportedGET /drafts, then POST /drafts/{id}/approve with the edits
Read a conversation thread or reply to a buyerNot availableReplies are sent from the FLUF Inbox
Test in a sandboxNot availableSee Testing

Where products come from

POST /items publishes a product that already exists, identified by its vid. A product can get into FLUF in three ways:

  • Created through the API with POST /products (one product) or POST /products/import (a spreadsheet). These get a fluf_… vid.
  • From a connected source store, such as Shopify. Pass that product's vid (e.g. shopify_8123456789012_0) and FLUF imports it on the first publish.
  • Created in FLUF Connect, on the web or in the mobile app.

So the full flow for your own catalogue is: create with POST /products, then publish with POST /items.

Editing content

PATCH /items/{vid} changes the product itself: title, description, photos, price, attributes and stock. FLUF then applies the change to every listing that's up, on marketplaces that allow listings to be edited. Vestiaire Collective, for example, only accepts price reductions after listing. Per-listing results arrive as listing.updated or listing.error webhooks.

POST /items with a price is different: it sets a price for one marketplace account and leaves the product's own price alone.

Messages

Buyer messages reach you through the message.received webhook, on Depop and Vinted only. That is the same channel coverage as the FLUF Inbox. You can't list threads or send replies through the API. Messages on other marketplaces don't reach FLUF at all yet.

Accounts that need FLUF open

GET /accounts flags some accounts "runs_in_browser": true. Changes to those complete while the seller has FLUF open — the browser extension on a computer, or the FLUF mobile app.

  • Your call still works from anywhere. FLUF accepts the write straight away and returns outcome: "queued".
  • The work waits rather than fails while FLUF isn't open, and completes when it is.
  • Confirm the result. Poll GET /items/{vid} until the listing leaves pending, or wait for listing.live, listing.rejected or listing.delisted.

Accounts with "runs_in_browser": false need nothing open.

Plans and fees

API access comes with the FLUF plan. There's no per-call fee and no separate developer tier. The plan decides what a token may do:

PlanAPI access
StarterNone
Pro, Pro (Legacy)Read-only. The GET endpoints. Registering a webhook counts as a write
Super SellerRead and write. Everything on this site, webhooks included

A write that the plan doesn't include returns 403 with code: "api_read_only". A plan with no API access returns 403 with code: "api_not_in_plan". Both name the plan that lifts the limit. A lapsed subscription returns 403 with code: "no_active_subscription", not 401. The token is still valid, so there's no need to create a new one.

Each product you create with POST /products or POST /products/import counts towards your plan's monthly AI product creations, the same as creating one in the app. A create over the limit is refused with the reason.

Current prices are on the pricing page.

Testing

There's no sandbox. Every call acts on real marketplace accounts. To test safely:

  1. Create one inexpensive test product and publish it to a single account.
  2. Check it with GET /items/{vid}.
  3. Take it down with DELETE /items, or remove it completely with DELETE /items/{vid}.

Reads (GET /accounts, GET /items) never change anything. The OpenAPI documents are public, so you can build and generate a client before you have a token.

Building for other sellers

A token belongs to one seller account and acts as that seller. There's no OAuth app flow for third parties. To serve several independent sellers, each seller:

  1. Holds their own FLUF plan and connects their own marketplace accounts in FLUF.
  2. Creates a token under More → Developers and gives it to your product.

Store each token server-side, against the seller it belongs to, and let the seller revoke it. Tokens carry the full access of that seller's plan.

If you are building a product for many sellers, email [email protected] before you start. We agree multi-seller arrangements case by case.

Something missing? Email [email protected] — we prioritise by what people actually ask for.

Scroll to Top