Developers
Connect FLUF to your system
One integration instead of fifteen. Publish to every marketplace your account is connected to, and know the second something sells — without touching a single marketplace API.
curl -X POST "https://fluf.io/wp-json/fc/api/v1/webhooks" \
-H "Authorization: Bearer fluf_pat_your_token" \
-H "Content-Type: application/json" \
-d '{"url": "https://yourapp.example.com/hooks/fluf", "events": ["new_sale"]}'const res = await fetch("https://fluf.io/wp-json/fc/api/v1/webhooks", {
method: "POST",
headers: {
"Authorization": "Bearer fluf_pat_your_token",
"Content-Type": "application/json",
},
body: JSON.stringify({
"url": "https://yourapp.example.com/hooks/fluf",
"events": [
"new_sale"
]
}),
});
const data = await res.json();import requests
res = requests.post(
"https://fluf.io/wp-json/fc/api/v1/webhooks",
headers={
"Authorization": "Bearer fluf_pat_your_token",
},
json={
"url": "https://yourapp.example.com/hooks/fluf",
"events": ["new_sale"],
},
)
data = res.json()<?php
// composer require guzzlehttp/guzzle
$client = new GuzzleHttp\Client();
$res = $client->request('POST', 'https://fluf.io/wp-json/fc/api/v1/webhooks', [
'headers' => [
'Authorization' => 'Bearer fluf_pat_your_token',
],
'json' => [
'url' => 'https://yourapp.example.com/hooks/fluf',
'events' => ['new_sale'],
],
]);
$data = json_decode((string) $res->getBody(), true);{
"event": "new_sale",
"sku": "T-001",
"channel": "depop",
"price": 45.00,
"currency": "GBP",
"sold_at": "2026-07-28T14:03:11+00:00",
"title": "Vintage Levi's 501 jeans",
"order_id": "abc-123-def"
}What you can build
Three ways in, one token. Every one reaches every marketplace you've connected — FLUF already speaks their categories, sizes and photo rules.
Webhooks
A signed POST to your server the moment something happens.
- Sales, with your SKU
- Listings going live, failing or coming down
- Offers, messages and likes
REST API
Create, publish, reprice and reconcile over plain HTTPS.
- Create products from photos — AI fills the rest
- Publish to the accounts you name
- Read back the live state of every listing
MCP server
Connect Claude by signing in, no install needed. Cursor and other MCP clients run the npm package. Either way, run your shop in plain language.
- “What sold last week, and where?”
- “List these forty items on Vinted”
- Open source, MIT licence
Start in two minutes
There's no sandbox, so every write acts on real listings — start with a read.
Create a token
Open More → Developers in FLUF Connect. It's shown once and starts with fluf_pat_.
Make your first call
Send it as Authorization: Bearer … to GET /accounts to see what you can publish to.
Listen for sales
Register a webhook for new_sale and test it without waiting for a real one.
Plans: read-only on Seller, read and write on Pro and above. What's supported
Specs: openapi.yaml · events.yaml
Need something we haven't built? [email protected]
