Skip to content

Endpoints

Base URL

https://market.rheo.se

All endpoints require x-api-key authentication. See Authentication.


PUT /integration/v1/items/:external_id

Create or update an item. This endpoint is idempotent — calling it with the same external_id a second time updates the existing item rather than creating a duplicate.

Parameters

NameInTypeRequiredDescription
external_idpathstringYesYour internal item ID. Max 255 characters.

Request body

{
"title": "Volvo XC90 bromsok fram vänster",
"description": "Testad och fungerande. Skick B.",
"price": 950,
"shippingCost": 149,
"weightKg": 3.2,
"currency": "SEK",
"imageUrls": [
"https://your-cdn.example.com/parts/12345/1.jpg"
],
"domain": {
"domain": "automotive_part",
"oemCode": "31400452",
"manufacturer": "Volvo",
"compatibleModels": ["XC90", "XC90 II"],
"donorVehicleYear": 2018,
"conditionGrade": "B"
},
"autoPublishTradera": true,
"useAiEnhancement": false
}
FieldTypeRequiredDescription
titlestringYesItem title. Max 255 characters.
descriptionstringNoPlain text description.
pricenumberYesStarting price in SEK. Minimum 1.
shippingCostnumberYesFlat shipping cost in SEK. Use 0 for free shipping.
weightKgnumberNoItem weight. Used for shipping calculations.
currencystringNoDefaults to SEK.
imageUrlsstring[]YesHTTPS URLs to item images. Max 10. Images are downloaded and hosted by Rheo. Also accepted as images or image_urls.
domainobjectNoDomain-specific attributes. See Field Reference.
autoPublishTraderabooleanNoIf true, automatically publishes a Tradera auction when images are ready. Only applied when creating a new item. Updates to existing items do not trigger a new Tradera listing. Default: false.
useAiEnhancementbooleanNoIf true, runs the item through Rheo’s AI to improve title and description. Default: false.

Response

{
"success": true,
"itemId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"message": "Item is being processed in the background."
}

202 Accepted — the item is queued. For new items, image download and Tradera publishing complete within ~30 seconds. For updates to existing items, the response arrives immediately and the message field reflects whether it was a create or update. Use GET to poll status or configure a webhook for push notification.


GET /integration/v1/items/:external_id

Returns the current status of an item.

Response

{
"externalId": "ERP_PART_12345",
"rheoItemId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"rheoStatus": "active",
"traderaStatus": "active",
"traderaAdId": "398271634",
"traderaAdUrl": "https://www.tradera.com/item/398271634",
"price": 950
}
FieldDescription
rheoStatusdraft, active, sold, not_listed, or archived
traderaStatusactive, sold, ended, pending_sync, or sync_error
traderaAdIdTradera’s internal ad ID. null if not yet published.
traderaAdUrlDirect link to the live ad. null if not yet published or if traderaAdId starts with pending.

PATCH /integration/v1/items/:external_id/price

Updates the price of an active item. The database is updated immediately and a background job propagates the change to Tradera.

Request body

{ "price": 795 }
FieldTypeRequiredDescription
pricenumberYesNew price in SEK. Minimum 1.

Response: 202 Accepted


PATCH /integration/v1/items/:external_id/status

Updates item status. Use this to de-list an item (e.g. sold in your own store) or mark it as sold.

Request body

{ "status": "not_listed" }
ValueEffect
not_listedRemoves the Tradera auction and de-lists from Rheo.
soldMarks as sold in Rheo and removes the Tradera auction.

Response: 202 Accepted


DELETE /integration/v1/items/:external_id

Removes an item. If the item has an active Tradera auction, the auction is taken down first.

Items linked to an in-progress Rheo order are archived rather than deleted (to preserve the order record).

Response: 202 Accepted


For API key management, webhook settings, and the delivery log, see the Management API reference. Those endpoints require JWT authentication (partner dashboard session) rather than an API key.