Skip to content

List your vendor's stores

GET
/stores
curl --request GET \
--url 'https://acme.mykreezalid.com/api/partners/v1/stores?page=1&limit=50' \
--header 'Authorization: Basic <credentials>'

Lists the stores of the vendor the credential belongs to, the default store first, then by name. 50 stores per page by default.

page
integer
default: 1 >= 1

Page to return, starting at 1.

limit
integer
default: 50 >= 1 <= 100

Number of stores per page, at most 100.

The stores this credential’s vendor operates from

Media typeapplication/json
object
stores
Array<object>

A place one of your vendors operates from.

object
id

Kreezalid’s identifier for this store, returned by GET /stores. Use it to read, update or delete the store (GET, PATCH, DELETE /stores/{id}) and to attach a listing to it (store_id). It is the only way to reach a store that has no external_id.

integer
object
string
default: Store
external_id

Optional: YOUR OWN reference for this store, if your system names its stores. Posting a store whose external_id already exists UPDATES it instead of creating a second one, so you can replay your whole store list as often as you like. Unique per vendor: two vendors may each use “01”. Leave it out for a store you do not track on your side.

string
name
required
string
line1
string
line2
string
zipcode
string
city
string
state

Top-level subdivision: région in France, state in the US.

string
district

Second-level subdivision: département in France, county elsewhere.

string
country

ISO-3166-1 alpha-2. A country name is accepted and converted — Belgique, Belgium, Bélgica and Belgien all store BE — but send the code: it is what comes back, and what the listings placed at this store will carry.

string
formatted

The address on one line, as your geocoder returned it. Shown to buyers in preference to the parts above.

string
lat

Latitude, between -90 and 90. A store with no coordinates never appears on a map and never places a listing.

number format: float
lng

Longitude, between -180 and 180.

number format: float
phone

The store’s phone, as a country and a number - the shape a phone attribute has. Send country_iso (ISO-3166-1 alpha-2) and phone_number as typed, national or international; it is checked for that country, and a number carrying its own country code keeps it. Read back, phone_number is the national number without its trunk zero, with e164 (to dial) and formatted (to show) beside it. Send null to remove the phone. Free text is refused. A phone stored as text before this field was structured comes back with formatted only.

object
country_iso
required
string
phone_number
required
string
e164
string
formatted
string
is_active

Whether this store is in use. A store holding listings cannot be switched off: move them to another store, or unpublish them, first.

boolean
default: true
is_default

The vendor’s main store. At most one per vendor: setting it here clears it from whichever store held it.

boolean
is_pickup_point

Whether orders can be collected here. Being a collection point and being shown on the public map are two separate roles of the same place. A collection point must say when to collect: pickup_hours or pickup_instructions - either is enough, opening_hours do not count. Checked when a store is created and when a write touches is_pickup_point, pickup_instructions or pickup_hours.

boolean
default: true
pickup_instructions

Free text about collecting here, in your own words: hours written out (“Monday to Friday, 9am to 4pm”) or instructions (“ring at the service entrance”). Shown to buyers below the collection hours, or on its own when there are none.

string
nullable
display_in_locator

Whether this store appears on the marketplace’s public store map.

boolean
default: true
opening_hours

When the shop is open. What you send REPLACES the store’s opening hours, and leaves its pickup_hours alone. A day you do not mention is closed. Leave the field out to keep the opening hours as they are; send an empty array to remove them. Opening hours are never shown to buyers as collection hours.

Array<object>

One slot, on one weekday. Which hours it belongs to is said by the list it is sent in - a store’s opening_hours or its pickup_hours - not by the slot.

A lunch break is TWO slots on the same day, not one slot with a hole in it. That is the whole reason this is a list rather than a string.

object
day
required

ISO-8601 weekday: 1 is Monday, 7 is Sunday.

integer
>= 1 <= 7
start_time
required

24-hour clock.

string
end_time
required

Must be later than start_time.

string
timezone

IANA name. Defaults to the marketplace’s own timezone.

string
pickup_hours

When orders can be collected - often narrower than the opening hours. What you send REPLACES the store’s collection hours, and leaves its opening_hours alone. A day you do not mention has no collection. Leave the field out to keep them as they are; send an empty array to remove them. Shown to buyers on the product page and in the order e-mail, followed by pickup_instructions.

Array<object>

One slot, on one weekday. Which hours it belongs to is said by the list it is sent in - a store’s opening_hours or its pickup_hours - not by the slot.

A lunch break is TWO slots on the same day, not one slot with a hole in it. That is the whole reason this is a list rather than a string.

object
day
required

ISO-8601 weekday: 1 is Monday, 7 is Sunday.

integer
>= 1 <= 7
start_time
required

24-hour clock.

string
end_time
required

Must be later than start_time.

string
timezone

IANA name. Defaults to the marketplace’s own timezone.

string
created
string format: date-time
modified
string format: date-time
pagination

Paging information, added next to the results of a paginated list. Request another page with the page query parameter and change the page size with limit (at most 100).

object
totalResultsCount

Number of results across all pages.

integer
currentPage

Number of the page returned, starting at 1.

integer
nextPage

Whether a next page exists.

boolean
prevPage

Whether a previous page exists.

boolean
resultOnPageCount

Number of results on this page.

integer
pageCount

Number of pages.

integer

Example

{
"stores": [
{
"id": 217836,
"object": "Store",
"external_id": "SHOP-BRUSSELS-01",
"name": "Les Petits Riens - Ixelles",
"line1": "Rue Américaine 101",
"line2": "Bâtiment B",
"zipcode": "1050",
"city": "Ixelles",
"state": "Bruxelles-Capitale",
"district": "Bruxelles",
"country": "BE",
"formatted": "Rue Américaine 101, 1050 Ixelles, Belgique",
"lat": 50.822965,
"lng": 4.359485,
"phone": {
"country_iso": "BE",
"phone_number": "25373026",
"e164": "+3225373026",
"formatted": "+32 2 537 30 26"
},
"is_active": true,
"is_default": false,
"is_pickup_point": true,
"pickup_instructions": "Ring at the service entrance.",
"display_in_locator": true,
"opening_hours": [
{
"day": 1,
"start_time": "09:00",
"end_time": "12:00",
"timezone": "Europe/Brussels"
}
],
"pickup_hours": [
{
"day": 1,
"start_time": "09:00",
"end_time": "12:00",
"timezone": "Europe/Brussels"
}
]
}
],
"pagination": {
"totalResultsCount": 137,
"currentPage": 1,
"resultOnPageCount": 25,
"pageCount": 6
}
}

Missing or wrong API credentials.

The multi-store feature is not enabled on this marketplace.