Loading…
B2B API information
A partner API for approved B2B integrations that need catalogue, product, stock, and update data inside their own buying systems.
Current endpoint
GET /api/b2b/catalog
Designed for scheduled server-side catalogue synchronisation, not browser-side calls.
Return the products, stock, image, brand, and catalogue fields visible to an approved B2B partner.
Use issued API keys so integrations only receive product data approved for that partner.
Use product IDs and update timestamps to keep partner systems aligned without fragile scraping.
What the API is for and when partners should use it.
GRAYSOS Connect lets approved partners pull a catalogue feed that can be imported into another storefront, procurement portal, ERP, or internal buying tool. The first supported endpoint is a catalogue sync endpoint for products available to the authenticated partner.
Use for
Catalogue sync
Access
Approved B2B partners
Runtime
Server-side only
How non-technical teams and developers should request credentials.
Contact GRAYSOS with company details, expected catalogue use, and technical contact.
Approved partners receive an API key for server-side use only.
Fetch the catalogue on a schedule, then upsert products in your own system.
Current catalogue endpoint for approved B2B partner integrations.
curl -X GET "/api/b2b/catalog" \
-H "x-api-key: YOUR_API_KEY"The first catalogue response shape returned to authenticated partners.
{
"partner": {
"b2b_partner_id": 12,
"price_tier_id": 3
},
"count": 120,
"products": [
{
"id": 101,
"sku": "SKU-001",
"name": "Product name",
"slug": "product-name",
"category_id": 55,
"brand": "Brand",
"short_description": "Short text",
"base_cost_ex_vat": 12.5,
"image_url": "https://...",
"qty_on_hand": 80,
"created_at": "2026-01-01T10:00:00Z",
"updated_at": "2026-01-10T12:00:00Z"
}
]
}Pricing and product visibility depend on the approved partner account. Additional endpoints for pricing, order placement, or webhooks can be discussed during partner onboarding.
Short examples that are readable for developers without making the page noisy.
const res = await fetch("/api/b2b/catalog", {
headers: {
"x-api-key": process.env.GRAYSOS_API_KEY,
},
});
if (!res.ok) {
throw new Error("GRAYSOS API request failed");
}
const data = await res.json();
console.log(data.products.length);$ch = curl_init("/api/b2b/catalog");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"x-api-key: YOUR_API_KEY"
]);
$response = curl_exec($ch);
curl_close($ch);Keep integrations stable, fast, and easy to support.
Clear next steps for partners who want credentials or additional endpoints.
For API access, pricing endpoints, partner setup, or integration questions, contact the GRAYSOS team and include your company name, use case, expected sync frequency, and technical contact.