Retrieve one store
const url = 'https://acme.mykreezalid.com/api/partners/v1/stores/1';const options = {method: 'GET', headers: {Authorization: 'Basic <credentials>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://acme.mykreezalid.com/api/partners/v1/stores/1 \ --header 'Authorization: Basic <credentials>'Returns one store of the vendor the credential belongs to, wrapped in a store key.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Responses
Section titled “Responses”The store
object
A place one of your vendors operates from.
object
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.
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.
Top-level subdivision: région in France, state in the US.
Second-level subdivision: département in France, county elsewhere.
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.
The address on one line, as your geocoder returned it. Shown to buyers in preference to the parts above.
Latitude, between -90 and 90. A store with no coordinates never appears on a map and never places a listing.
Longitude, between -180 and 180.
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
Whether this store is in use. A store holding listings cannot be switched off: move them to another store, or unpublish them, first.
The vendor’s main store. At most one per vendor: setting it here clears it from whichever store held it.
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.
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.
Whether this store appears on the marketplace’s public store map.
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.
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
ISO-8601 weekday: 1 is Monday, 7 is Sunday.
24-hour clock.
Must be later than start_time.
IANA name. Defaults to the marketplace’s own timezone.
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.
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
ISO-8601 weekday: 1 is Monday, 7 is Sunday.
24-hour clock.
Must be later than start_time.
IANA name. Defaults to the marketplace’s own timezone.
Example
{ "store": { "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" } ] }}Missing or wrong API credentials.
No store of yours has this ID, or the multi-store feature is not enabled.