A seller’s own listings: drafts, photos, publishing, valuations and storage. Generated from the OpenAPI spec. Each endpoint says which key it needs; see Authentication.
| Method | Path | What it does |
|---|---|---|
| GET | /v1/me/listings |
List the signed-in seller’s listings |
| POST | /v1/me/listings |
Start a listing |
| GET | /v1/me/listings/{id} |
Get one of the seller’s listings |
| PUT | /v1/me/listings/{id} |
Replace a listing’s content |
| DELETE | /v1/me/listings/{id} |
Delete a draft |
| POST | /v1/me/listings/{id}/close |
Take a listing off sale |
| POST | /v1/me/listings/{id}/images |
Add a photo |
| PUT | /v1/me/listings/{id}/images/order |
Set the order of the photos |
| DELETE | /v1/me/listings/{id}/images/{image_id} |
Remove a photo |
| POST | /v1/me/listings/{id}/offer/accept |
Accept the marketplace’s price |
| POST | /v1/me/listings/{id}/offer/counter |
Answer the marketplace’s price with your own |
| POST | /v1/me/listings/{id}/publish |
Put a listing on sale |
List the signed-in seller’s listings
Section titled “List the signed-in seller’s listings”GET /v1/me/listings · operation listMyListings
Every status, latest change first.
Auth: your secret key (Authorization: Bearer sk_…) and the user’s session (X-User-Session: …), from your server
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
limit |
query | integer | ≥ 1; ≤ 100; default 24 |
cursor |
query | string | next_cursor from the previous page |
Responses: 200 PageOutputBody · default a problem
Start a listing
Section titled “Start a listing”POST /v1/me/listings · operation createMyListing
Saved as a draft; it may be incomplete until it’s published.
Auth: your secret key (Authorization: Bearer sk_…) and the user’s session (X-User-Session: …), from your server
Body (application/json): ListingInputBody
Responses: 201 ListingBody · default a problem
Get one of the seller’s listings
Section titled “Get one of the seller’s listings”GET /v1/me/listings/{id} · operation getMyListing
Auth: your secret key (Authorization: Bearer sk_…) and the user’s session (X-User-Session: …), from your server
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
id * |
path | string |
Responses: 200 ListingBody · default a problem
Replace a listing’s content
Section titled “Replace a listing’s content”PUT /v1/me/listings/{id} · operation updateMyListing
A listing on sale must stay complete. Closed listings can’t be edited.
Auth: your secret key (Authorization: Bearer sk_…) and the user’s session (X-User-Session: …), from your server
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
id * |
path | string |
Body (application/json): ListingInputBody
Responses: 200 ListingBody · default a problem
Delete a draft
Section titled “Delete a draft”DELETE /v1/me/listings/{id} · operation deleteMyListing
Listings that were ever on sale are closed instead.
Auth: your secret key (Authorization: Bearer sk_…) and the user’s session (X-User-Session: …), from your server
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
id * |
path | string |
Responses: 204 No Content · default a problem
Take a listing off sale
Section titled “Take a listing off sale”POST /v1/me/listings/{id}/close · operation closeMyListing
Auth: your secret key (Authorization: Bearer sk_…) and the user’s session (X-User-Session: …), from your server
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
id * |
path | string |
Responses: 200 ListingBody · default a problem
Add a photo
Section titled “Add a photo”POST /v1/me/listings/{id}/images · operation uploadListingImage
Send the photo as the body (JPEG, PNG or WebP, up to 20 MB and 50 megapixels). It’s “processing” until its sizes are made, usually within seconds. At most 20 per listing.
Auth: your secret key (Authorization: Bearer sk_…) and the user’s session (X-User-Session: …), from your server
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
id * |
path | string |
Body (image/jpeg): the file’s bytes.
Responses: 202 ImageBody · default a problem
Set the order of the photos
Section titled “Set the order of the photos”PUT /v1/me/listings/{id}/images/order · operation reorderListingImages
Send every image id once; the first becomes the main photo.
Auth: your secret key (Authorization: Bearer sk_…) and the user’s session (X-User-Session: …), from your server
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
id * |
path | string |
Body (application/json): ReorderListingImagesRequest
Responses: 200 ListingBody · default a problem
Remove a photo
Section titled “Remove a photo”DELETE /v1/me/listings/{id}/images/{image_id} · operation deleteListingImage
Auth: your secret key (Authorization: Bearer sk_…) and the user’s session (X-User-Session: …), from your server
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
id * |
path | string | |
image_id * |
path | string |
Responses: 204 No Content · default a problem
Accept the marketplace’s price
Section titled “Accept the marketplace’s price”POST /v1/me/listings/{id}/offer/accept · operation acceptMyListingOffer
The offer becomes the price and the listing waits for approval.
Auth: your secret key (Authorization: Bearer sk_…) and the user’s session (X-User-Session: …), from your server
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
id * |
path | string |
Responses: 200 ListingBody · default a problem
Answer the marketplace’s price with your own
Section titled “Answer the marketplace’s price with your own”POST /v1/me/listings/{id}/offer/counter · operation counterMyListingOffer
The seller’s price is set and the listing waits for approval; the team approves it, denies it or makes a new offer.
Auth: your secret key (Authorization: Bearer sk_…) and the user’s session (X-User-Session: …), from your server
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
id * |
path | string |
Body (application/json): CounterMyListingOfferRequest
Responses: 200 ListingBody · default a problem
Put a listing on sale
Section titled “Put a listing on sale”POST /v1/me/listings/{id}/publish · operation publishMyListing
From draft or closed. Goes to approval first if the marketplace requires it, with only the basics checked (title, photos, country, price), since the team completes the listing. With ask_valuation (where the marketplace offers valuations) no price is needed: the team offers one, which the seller accepts or answers with their own. If anything is missing, the 422 lists every problem.
Auth: your secret key (Authorization: Bearer sk_…) and the user’s session (X-User-Session: …), from your server
Parameters
| Name | In | Type | Notes |
|---|---|---|---|
id * |
path | string |
Body (application/json): PublishMyListingRequest
Responses: 200 ListingBody · default a problem
Schemas
Section titled “Schemas”Fields marked * are always present in responses and required in requests.
PageOutputBody
Section titled “PageOutputBody”| Field | Type | Notes |
|---|---|---|
items * |
ListingBody[] | |
next_cursor |
string |
ListingInputBody
Section titled “ListingInputBody”| Field | Type | Notes |
|---|---|---|
attributes |
map of any | |
category_id |
string | |
delivery |
Delivery | At least one method is needed to publish |
description |
string | max 10000 chars |
locale |
string | The marketplace’s default when omitted |
location |
LocationBody | |
price |
MoneyBody | |
shipping_size |
string | Operators: one of the marketplace’s shipping sizes, which prices delivery; “” for none, omitted to leave it |
stock |
integer | 1 when omitted |
terms |
map of string | Catalogue term ids by kind, e.g. {“brand”: “…”} |
title |
string | max 140 chars |
ListingBody
Section titled “ListingBody”| Field | Type | Notes |
|---|---|---|
attributes * |
map of any | The marketplace’s own fields |
category_id |
string | |
closed_at |
string (date-time) | |
commission_percent |
number (double) | Console only: overrides the marketplace’s commission; absent means the default |
created_at * |
string (date-time) | |
custody * |
string | Where it is: at the seller’s, being collected, or stored. one of seller, collecting, stored |
delivery * |
Delivery | How the item can reach the buyer |
description * |
string | |
display_price |
MoneyBody | The price in the requested currency, converted at the day’s rate (approximate; the final amount is set at checkout) |
favorite_count * |
integer | How many users have saved it |
favorited |
boolean | Whether the signed-in user has saved it (only with X-User-Session) |
fulfilment * |
string | Who moves it to the buyer. one of seller, marketplace |
id * |
string | |
images * |
ImageBody[] | In display order; the first is the main photo |
locale * |
string | The language the seller wrote in |
location * |
LocationBody | |
offer |
MoneyBody | The price the marketplace offers (valuation_offered) |
offer_note |
string | A note with the offer |
offer_schedule |
PriceStepBody[] | The price drops offered with the price (valuation_offered) |
price |
MoneyBody | Base price, in the seller’s currency |
price_schedule |
PriceStepBody[] | The price falls in these steps while on sale |
published_at |
string (date-time) | |
review_note |
string | Why the marketplace denied it (denied) |
seller_blocked |
boolean | The seller is blocked, so the listing is out of the shop |
seller_id * |
string | |
shipping_size |
string | Prices delivery from the marketplace’s shipping table |
site |
SiteRefBody | The marketplace location it’s stored at or being collected to |
status * |
string | one of draft, pending_valuation, valuation_offered, pending_approval, published, closed, denied |
stock * |
integer | |
stored_at |
string (date-time) | Stored since |
terms * |
map of TermRefBody | By kind, e.g. brand |
title * |
string | |
updated_at * |
string (date-time) | |
wants_storage |
boolean | The seller asked to have it collected and stored |
ImageBody
Section titled “ImageBody”| Field | Type | Notes |
|---|---|---|
height |
integer | |
id * |
string | |
status * |
string | Sizes exist once ready. one of processing, ready, failed |
urls |
map of string | thumb (400 px square), medium (800 px), large (1600 px); cacheable forever |
width |
integer |
ReorderListingImagesRequest
Section titled “ReorderListingImagesRequest”| Field | Type | Notes |
|---|---|---|
image_ids * |
string[] |
CounterMyListingOfferRequest
Section titled “CounterMyListingOfferRequest”| Field | Type | Notes |
|---|---|---|
amount * |
integer | In minor units, in the offer’s currency. ≥ 1 |
PublishMyListingRequest
Section titled “PublishMyListingRequest”| Field | Type | Notes |
|---|---|---|
ask_valuation |
boolean | Ask the marketplace to value it instead of setting a price |
wants_storage |
boolean | Ask the marketplace to collect and store it until it sells (otherwise it stays with the seller) |
Delivery
Section titled “Delivery”| Field | Type | Notes |
|---|---|---|
buyer_arranged |
boolean | |
pickup |
boolean | |
shipping |
Shipping |
LocationBody
Section titled “LocationBody”| Field | Type | Notes |
|---|---|---|
city |
string | |
country |
string | ISO 3166-1 alpha-2, e.g. SE |
postal_code |
string |
MoneyBody
Section titled “MoneyBody”| Field | Type | Notes |
|---|---|---|
amount * |
integer | In minor units: 125000 SEK is 1 250,00 kr. ≥ 0 |
currency * |
string | ISO 4217, one of the marketplace’s |
PriceStepBody
Section titled “PriceStepBody”| Field | Type | Notes |
|---|---|---|
amount * |
integer | The new price, in minor units. ≥ 1 |
done |
boolean | It has applied |
months * |
integer | Months after the schedule starts (the listing goes on sale, or the schedule changes while on sale). ≥ 1; ≤ 60 |
on |
string (date-time) | When it applies (once on sale) |
SiteRefBody
Section titled “SiteRefBody”| Field | Type | Notes |
|---|---|---|
buyer_pickup |
boolean | Buyers may collect purchases here |
city |
string | |
id * |
string | |
kind * |
string | one of showroom, warehouse |
name * |
string |
TermRefBody
Section titled “TermRefBody”| Field | Type | Notes |
|---|---|---|
descriptions |
map of string | About the brand, designer…, by locale (e.g. en, sv); on single listings only |
id * |
string | |
name * |
string | |
slug * |
string |
Shipping
Section titled “Shipping”| Field | Type | Notes |
|---|---|---|
additional_item_price |
integer | ≥ 0 |
price |
integer | For the first item; omit for “ask for a quote”. ≥ 0 |