API FlavosoRéférence de l'APIÉtablissement

Établissement

Statut d'ouverture, horaires d'ouverture et de livraison, jours particuliers, délais de préparation, modes de commande et mise en pause des commandes.

Points de terminaison

Retrieve the store

get/store

Droit:
store:read
Offre:
toutes les offres

Open, closed or paused right now, the next opening, order types, the statuses the restaurant uses, lead times, minimum order, opening and delivery hours, upcoming special days, contact details, address and location.

Réponse200

OK

  • objectstringobligatoire

    Always store.

    Valeurs:"store"

  • idstring (uuid)obligatoire

    The restaurant.

  • namestringobligatoire

    Name.

  • slugstringobligatoire

    Its address: <slug>.flavoso.com.

  • timezonestringobligatoire

    IANA time zone of all local times.

  • currencystringobligatoire

    ISO 4217.

  • statusstringobligatoire

    Right now: open, closed (outside hours or a closed special day), or paused.

    Valeurs:"open""closed""paused"

  • paused_untilstring (date-time)obligatoirepeut être null

    End of the running pause; null without one.

  • pause_notestringobligatoirepeut être null

    Reason of the running pause.

  • next_opening_atstring (date-time)obligatoirepeut être null

    Next opening while closed (looks two weeks ahead); null while open.

  • preordersbooleanobligatoire

    Guests may order for a later time, also while closed.

  • order_typesobjectobligatoire

    Which order types guests can choose.

    Champs contenus (3)
    • pickupbooleanobligatoire

      Pickup.

    • deliverybooleanobligatoire

      Delivery.

    • dine_inbooleanobligatoire

      Ordering at the table via QR code (Pro and up).

  • order_statusesstring[]obligatoire

    Statuses this restaurant uses, in order, plus completed and cancelled.

  • lead_timesobjectobligatoire

    How long the kitchen needs; the earliest pickup or delivery time.

    Champs contenus (2)
    • pickup_minutesintegerobligatoire

      Minutes until pickup, 0 to 240.

    • delivery_minutesintegerobligatoire

      Minutes until delivery, 0 to 360.

  • min_orderintegerobligatoire

    Minimum order value for delivery (0 = none). Integer amount in the smallest currency unit (cents).

  • always_openbooleanobligatoire

    No weekly schedule is set: online orders are taken around the clock (special days and pauses still apply) and no reservation times are offered.

  • opening_hoursWeekWindow[]obligatoire

    The weekly opening windows; a weekday without windows is closed.

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • delivery_hoursWeekWindow[]obligatoire

    Weekly delivery windows; empty means delivery follows opening_hours.

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • closuresClosure[]obligatoire

    Upcoming special days (today and later).

    Champs contenus (5)
    • objectstringobligatoire

      Always closure.

      Valeurs:"closure"

    • datestring (date)obligatoire

      The day. A date YYYY-MM-DD in the restaurant's time zone.

    • closedbooleanobligatoire

      Closed all day.

    • hoursTimeWindow[]obligatoire

      The windows of that day when not closed (at most two).

      Champs contenus (2)
      • openstringobligatoire

        Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

        pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

      • closestringobligatoire

        Closing; earlier than open runs past midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

        pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • notestringobligatoirepeut être null

      Note, e.g. the reason.

  • contactobjectobligatoire

    Public contact details.

    Champs contenus (3)
    • phonestringobligatoirepeut être null

      Phone.

    • emailstringobligatoirepeut être null

      E-mail.

    • websitestringobligatoirepeut être null

      Website.

  • addressobjectobligatoirepeut être null

    The address as far as it is known. Restaurants type it freely; postal code and city are only split out when a line starts with a postal code.

    Champs contenus (4)
    • linestringobligatoirepeut être null

      Street and number (or the whole address when it cannot be split).

    • postal_codestringobligatoirepeut être null

      Postal code, when it can be read from the address.

    • citystringobligatoirepeut être null

      City, when it can be read from the address.

    • countrystringobligatoirepeut être null

      ISO 3166-1 alpha-2, as in GET /me.

  • locationobjectobligatoirepeut être null

    Coordinates; null when not set.

    Champs contenus (2)
    • latnumberobligatoire

      Latitude.

    • lonnumberobligatoire

      Longitude.

Erreurs

  • 400invalid_request: a parameter or the body is wrong, or it contains a query parameter or field the operation does not know. param names the field.
  • 401unauthorized: missing, malformed, expired or revoked access token, or the app was disconnected or suspended.
  • 403insufficient_scope, plan_required (with param when an order type is not in the plan) or account_inactive.
  • 429rate_limited: more than 120 requests per minute on this connection. Wait Retry-After seconds.
  • 500server_error. Safe to retry with the same Idempotency-Key.

Tous les codes d'erreur

Requête
curl "https://api.flavoso.com/v1/store" \
  -H "Authorization: Bearer $ACCESS_TOKEN"
Réponse
{
  "object": "store",
  "id": "8a3e5c7d-2f14-4b9e-a6d1-0c4b7e9f2a35",
  "name": "Trattoria Bella Rosa",
  "slug": "bella-rosa",
  "timezone": "Europe/Berlin",
  "currency": "EUR",
  "status": "open",
  "paused_until": null,
  "pause_note": null,
  "next_opening_at": null,
  "preorders": true,
  "order_types": {
    "pickup": true,
    "delivery": true,
    "dine_in": true
  },
  "order_statuses": [
    "pending",
    "confirmed",
    "preparing",
    "ready",
    "completed",
    "cancelled"
  ],
  "lead_times": {
    "pickup_minutes": 20,
    "delivery_minutes": 45
  },
  "min_order": 1500,
  "always_open": false,
  "opening_hours": [
    {
      "weekday": 1,
      "open": "11:30",
      "close": "14:30"
    },
    {
      "weekday": 1,
      "open": "17:30",
      "close": "22:00"
    },
    {
      "weekday": 5,
      "open": "12:00",
      "close": "23:00"
    }
  ],
  "delivery_hours": [],
  "closures": [
    {
      "object": "closure",
      "date": "2026-12-24",
      "closed": false,
      "hours": [
        {
          "open": "11:00",
          "close": "14:00"
        }
      ],
      "note": "Christmas Eve: lunch only"
    }
  ],
  "contact": {
    "phone": "+49 30 1234567",
    "email": "hello@example.com",
    "website": "https://example.com"
  },
  "address": {
    "line": "Kastanienallee 12",
    "postal_code": "10435",
    "city": "Berlin",
    "country": "DE"
  },
  "location": {
    "lat": 52.5386,
    "lon": 13.4093
  }
}

Change lead times, pre-orders and order types

patch/store

Droit:
store:write
Offre:
toutes les offres

Changes only the fields you send; everything else stays as the restaurant set it. The same rules as the dashboard: lead times 0 to 240 minutes for pickup and 0 to 360 for delivery, and an order type can only be switched on when the restaurant's plan includes it (plan_required, ordering at the table needs Pro).

Opening hours are changed with PUT /store/hours, special days with /store/closures, a pause with /store/pause. A change produces store.updated.

Corpsapplication/json

  • lead_timesobject

    Kitchen lead times.

    Champs contenus (2)
    • pickup_minutesinteger

      Minutes until pickup.

      0 to 240

    • delivery_minutesinteger

      Minutes until delivery.

      0 to 360

  • order_typesobject

    Switch order types on or off. Switching on needs a plan that includes the type.

    Champs contenus (3)
    • pickupboolean

      Pickup.

    • deliveryboolean

      Delivery.

    • dine_inboolean

      Ordering at the table (Pro and up).

  • preordersboolean

    Allow orders for a later time.

Réponse200

The store after the change.

  • objectstringobligatoire

    Always store.

    Valeurs:"store"

  • idstring (uuid)obligatoire

    The restaurant.

  • namestringobligatoire

    Name.

  • slugstringobligatoire

    Its address: <slug>.flavoso.com.

  • timezonestringobligatoire

    IANA time zone of all local times.

  • currencystringobligatoire

    ISO 4217.

  • statusstringobligatoire

    Right now: open, closed (outside hours or a closed special day), or paused.

    Valeurs:"open""closed""paused"

  • paused_untilstring (date-time)obligatoirepeut être null

    End of the running pause; null without one.

  • pause_notestringobligatoirepeut être null

    Reason of the running pause.

  • next_opening_atstring (date-time)obligatoirepeut être null

    Next opening while closed (looks two weeks ahead); null while open.

  • preordersbooleanobligatoire

    Guests may order for a later time, also while closed.

  • order_typesobjectobligatoire

    Which order types guests can choose.

    Champs contenus (3)
    • pickupbooleanobligatoire

      Pickup.

    • deliverybooleanobligatoire

      Delivery.

    • dine_inbooleanobligatoire

      Ordering at the table via QR code (Pro and up).

  • order_statusesstring[]obligatoire

    Statuses this restaurant uses, in order, plus completed and cancelled.

  • lead_timesobjectobligatoire

    How long the kitchen needs; the earliest pickup or delivery time.

    Champs contenus (2)
    • pickup_minutesintegerobligatoire

      Minutes until pickup, 0 to 240.

    • delivery_minutesintegerobligatoire

      Minutes until delivery, 0 to 360.

  • min_orderintegerobligatoire

    Minimum order value for delivery (0 = none). Integer amount in the smallest currency unit (cents).

  • always_openbooleanobligatoire

    No weekly schedule is set: online orders are taken around the clock (special days and pauses still apply) and no reservation times are offered.

  • opening_hoursWeekWindow[]obligatoire

    The weekly opening windows; a weekday without windows is closed.

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • delivery_hoursWeekWindow[]obligatoire

    Weekly delivery windows; empty means delivery follows opening_hours.

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • closuresClosure[]obligatoire

    Upcoming special days (today and later).

    Champs contenus (5)
    • objectstringobligatoire

      Always closure.

      Valeurs:"closure"

    • datestring (date)obligatoire

      The day. A date YYYY-MM-DD in the restaurant's time zone.

    • closedbooleanobligatoire

      Closed all day.

    • hoursTimeWindow[]obligatoire

      The windows of that day when not closed (at most two).

      Champs contenus (2)
      • openstringobligatoire

        Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

        pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

      • closestringobligatoire

        Closing; earlier than open runs past midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

        pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • notestringobligatoirepeut être null

      Note, e.g. the reason.

  • contactobjectobligatoire

    Public contact details.

    Champs contenus (3)
    • phonestringobligatoirepeut être null

      Phone.

    • emailstringobligatoirepeut être null

      E-mail.

    • websitestringobligatoirepeut être null

      Website.

  • addressobjectobligatoirepeut être null

    The address as far as it is known. Restaurants type it freely; postal code and city are only split out when a line starts with a postal code.

    Champs contenus (4)
    • linestringobligatoirepeut être null

      Street and number (or the whole address when it cannot be split).

    • postal_codestringobligatoirepeut être null

      Postal code, when it can be read from the address.

    • citystringobligatoirepeut être null

      City, when it can be read from the address.

    • countrystringobligatoirepeut être null

      ISO 3166-1 alpha-2, as in GET /me.

  • locationobjectobligatoirepeut être null

    Coordinates; null when not set.

    Champs contenus (2)
    • latnumberobligatoire

      Latitude.

    • lonnumberobligatoire

      Longitude.

Erreurs

  • 400invalid_request: a parameter or the body is wrong, or it contains a query parameter or field the operation does not know. param names the field.
  • 401unauthorized: missing, malformed, expired or revoked access token, or the app was disconnected or suspended.
  • 403insufficient_scope, plan_required (with param when an order type is not in the plan) or account_inactive.
  • 409invalid_transition (the status of the object does not allow this), stage_not_used (the restaurant does not use this status), external_id_taken (your app already uses this external_id for another object of the same kind in this restaurant), slot_unavailable (the time or the table is taken), idempotency_in_progress (a request with this Idempotency-Key is still running) or conflict (the same data was changed elsewhere at the same moment, three times in a row; retry unchanged after Retry-After seconds).
  • 413payload_too_large: the body is larger than the operation takes, counted in bytes: 64 KB, 2 MB for PUT /menu. Split the request.
  • 429rate_limited: more than 120 requests per minute on this connection. Wait Retry-After seconds.
  • 500server_error. Safe to retry with the same Idempotency-Key.

Tous les codes d'erreur

Requête
curl -X PATCH "https://api.flavoso.com/v1/store" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "lead_times": {
    "pickup_minutes": 25
  },
  "order_types": {
    "delivery": false
  }
}'
Exemple: Corps
{
  "lead_times": {
    "pickup_minutes": 25
  },
  "order_types": {
    "delivery": false
  }
}
Réponse
{
  "object": "store",
  "id": "8a3e5c7d-2f14-4b9e-a6d1-0c4b7e9f2a35",
  "name": "Trattoria Bella Rosa",
  "slug": "bella-rosa",
  "timezone": "Europe/Berlin",
  "currency": "EUR",
  "status": "open",
  "paused_until": null,
  "pause_note": null,
  "next_opening_at": null,
  "preorders": true,
  "order_types": {
    "pickup": true,
    "delivery": true,
    "dine_in": true
  },
  "order_statuses": [
    "pending",
    "confirmed",
    "preparing",
    "ready",
    "completed",
    "cancelled"
  ],
  "lead_times": {
    "pickup_minutes": 20,
    "delivery_minutes": 45
  },
  "min_order": 1500,
  "always_open": false,
  "opening_hours": [
    {
      "weekday": 1,
      "open": "11:30",
      "close": "14:30"
    },
    {
      "weekday": 1,
      "open": "17:30",
      "close": "22:00"
    },
    {
      "weekday": 5,
      "open": "12:00",
      "close": "23:00"
    }
  ],
  "delivery_hours": [],
  "closures": [
    {
      "object": "closure",
      "date": "2026-12-24",
      "closed": false,
      "hours": [
        {
          "open": "11:00",
          "close": "14:00"
        }
      ],
      "note": "Christmas Eve: lunch only"
    }
  ],
  "contact": {
    "phone": "+49 30 1234567",
    "email": "hello@example.com",
    "website": "https://example.com"
  },
  "address": {
    "line": "Kastanienallee 12",
    "postal_code": "10435",
    "city": "Berlin",
    "country": "DE"
  },
  "location": {
    "lat": 52.5386,
    "lon": 13.4093
  }
}

Retrieve opening and delivery hours

get/store/hours

Droit:
store:read
Offre:
toutes les offres

The weekly schedule. Several windows on one weekday are a lunch break. A weekday without windows is closed. Special days are separate (/store/closures).

Réponse200

OK

  • objectstringobligatoire

    Always store_hours.

    Valeurs:"store_hours"

  • always_openbooleanobligatoire

    No weekly schedule: online orders around the clock, no reservation times.

  • opening_hoursWeekWindow[]obligatoire

    Opening windows.

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • delivery_hoursWeekWindow[]obligatoire

    Delivery windows; empty means the opening hours apply.

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

Erreurs

  • 400invalid_request: a parameter or the body is wrong, or it contains a query parameter or field the operation does not know. param names the field.
  • 401unauthorized: missing, malformed, expired or revoked access token, or the app was disconnected or suspended.
  • 403insufficient_scope, plan_required (with param when an order type is not in the plan) or account_inactive.
  • 429rate_limited: more than 120 requests per minute on this connection. Wait Retry-After seconds.
  • 500server_error. Safe to retry with the same Idempotency-Key.

Tous les codes d'erreur

Requête
curl "https://api.flavoso.com/v1/store/hours" \
  -H "Authorization: Bearer $ACCESS_TOKEN"
Réponse
{
  "object": "store_hours",
  "always_open": false,
  "opening_hours": [
    {
      "weekday": 1,
      "open": "11:30",
      "close": "14:30"
    },
    {
      "weekday": 1,
      "open": "17:30",
      "close": "22:00"
    },
    {
      "weekday": 5,
      "open": "12:00",
      "close": "23:00"
    }
  ],
  "delivery_hours": []
}

Replace opening and/or delivery hours

put/store/hours

Droit:
store:write
Offre:
toutes les offres

Each list you send replaces that whole schedule; a list you leave out stays as it is. At most two windows per weekday, times HH:MM; a window may run past midnight (18:00–02:00). Weekdays missing from a list are closed.

An empty opening_hours list means the restaurant has no weekly schedule: online orders are taken around the clock and no reservation times are offered. An empty delivery_hours list means delivery follows the opening hours. A change produces store.updated.

Corpsapplication/json

  • opening_hoursWeekWindow[]

    At most two windows per weekday. Empty: no weekly schedule.

    max 14 items

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • delivery_hoursWeekWindow[]

    At most two windows per weekday. Empty: delivery follows the opening hours.

    max 14 items

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

Réponse200

OK

  • objectstringobligatoire

    Always store_hours.

    Valeurs:"store_hours"

  • always_openbooleanobligatoire

    No weekly schedule: online orders around the clock, no reservation times.

  • opening_hoursWeekWindow[]obligatoire

    Opening windows.

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • delivery_hoursWeekWindow[]obligatoire

    Delivery windows; empty means the opening hours apply.

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

Erreurs

  • 400invalid_request: a parameter or the body is wrong, or it contains a query parameter or field the operation does not know. param names the field.
  • 401unauthorized: missing, malformed, expired or revoked access token, or the app was disconnected or suspended.
  • 403insufficient_scope, plan_required (with param when an order type is not in the plan) or account_inactive.
  • 409invalid_transition (the status of the object does not allow this), stage_not_used (the restaurant does not use this status), external_id_taken (your app already uses this external_id for another object of the same kind in this restaurant), slot_unavailable (the time or the table is taken), idempotency_in_progress (a request with this Idempotency-Key is still running) or conflict (the same data was changed elsewhere at the same moment, three times in a row; retry unchanged after Retry-After seconds).
  • 413payload_too_large: the body is larger than the operation takes, counted in bytes: 64 KB, 2 MB for PUT /menu. Split the request.
  • 429rate_limited: more than 120 requests per minute on this connection. Wait Retry-After seconds.
  • 500server_error. Safe to retry with the same Idempotency-Key.

Tous les codes d'erreur

Requête
curl -X PUT "https://api.flavoso.com/v1/store/hours" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "opening_hours": [
    {
      "weekday": 0,
      "open": "11:30",
      "close": "14:30"
    },
    {
      "weekday": 0,
      "open": "17:30",
      "close": "22:00"
    },
    {
      "weekday": 4,
      "open": "11:30",
      "close": "23:00"
    },
    {
      "weekday": 5,
      "open": "12:00",
      "close": "23:00"
    }
  ],
  "delivery_hours": []
}'
Exemple: Corps
{
  "opening_hours": [
    {
      "weekday": 0,
      "open": "11:30",
      "close": "14:30"
    },
    {
      "weekday": 0,
      "open": "17:30",
      "close": "22:00"
    },
    {
      "weekday": 4,
      "open": "11:30",
      "close": "23:00"
    },
    {
      "weekday": 5,
      "open": "12:00",
      "close": "23:00"
    }
  ],
  "delivery_hours": []
}
Réponse
{
  "object": "store_hours",
  "always_open": false,
  "opening_hours": [
    {
      "weekday": 0,
      "open": "11:30",
      "close": "14:30"
    },
    {
      "weekday": 0,
      "open": "17:30",
      "close": "22:00"
    },
    {
      "weekday": 4,
      "open": "11:30",
      "close": "23:00"
    },
    {
      "weekday": 5,
      "open": "12:00",
      "close": "23:00"
    }
  ],
  "delivery_hours": []
}

List special days

get/store/closures

Droit:
store:read
Offre:
toutes les offres

Upcoming special days (today and later, in the restaurant's time zone): closed days and days with their own hours. At most 60.

Réponse200

OK

  • objectstringobligatoire

    Always list.

    Valeurs:"list"

  • dataClosure[]obligatoire

    The items of this page.

    Champs contenus (5)
    • objectstringobligatoire

      Always closure.

      Valeurs:"closure"

    • datestring (date)obligatoire

      The day. A date YYYY-MM-DD in the restaurant's time zone.

    • closedbooleanobligatoire

      Closed all day.

    • hoursTimeWindow[]obligatoire

      The windows of that day when not closed (at most two).

      Champs contenus (2)
      • openstringobligatoire

        Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

        pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

      • closestringobligatoire

        Closing; earlier than open runs past midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

        pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • notestringobligatoirepeut être null

      Note, e.g. the reason.

  • has_morebooleanobligatoire

    Whether another page follows.

  • next_cursorstringobligatoirepeut être null

    Pass as cursor (with the same filters) to get the next page; null on the last page.

Erreurs

  • 400invalid_request: a parameter or the body is wrong, or it contains a query parameter or field the operation does not know. param names the field.
  • 401unauthorized: missing, malformed, expired or revoked access token, or the app was disconnected or suspended.
  • 403insufficient_scope, plan_required (with param when an order type is not in the plan) or account_inactive.
  • 429rate_limited: more than 120 requests per minute on this connection. Wait Retry-After seconds.
  • 500server_error. Safe to retry with the same Idempotency-Key.

Tous les codes d'erreur

Requête
curl "https://api.flavoso.com/v1/store/closures" \
  -H "Authorization: Bearer $ACCESS_TOKEN"
Réponse
{
  "object": "list",
  "data": [
    {
      "object": "closure",
      "date": "2026-12-24",
      "closed": false,
      "hours": [
        {
          "open": "11:00",
          "close": "14:00"
        }
      ],
      "note": "Christmas Eve: lunch only"
    }
  ],
  "has_more": false,
  "next_cursor": null
}

Create or replace a special day

post/store/closures

Droit:
store:write
Offre:
toutes les offres

Sets what applies on one date instead of the weekly schedule: closed: true, or hours with that day's windows. A new special day answers 201; one on the same date is replaced and answers 200. Today or later only; at most 60 special days (limit_exceeded). A running pause is not affected. Produces store.updated.

Paramètres

NomEmplacementDescription
Idempotency-KeystringheaderAny unique string up to 255 printable characters. Retrying a POST with the same key returns the first response (header Idempotent-Replayed: true) instead of acting twice; the same key with a different body is 422 idempotency_key_reused. Kept for 24 hours. Answers that ask for a retry (5xx, 409 conflict) are not kept. While the first request runs, a retry gets 409 idempotency_in_progress; a first request that never finished frees the key after 2 minutes.max 255 chars

Corpsapplication/json

  • datestring (date)obligatoire

    Today or later. A date YYYY-MM-DD in the restaurant's time zone.

  • closedboolean

    true: closed all day.

  • hoursTimeWindow[]

    The windows of that day (one or two).

    max 2 items

    Champs contenus (2)
    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing; earlier than open runs past midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • notestring

    Note, e.g. the reason.

    max 140 chars

Réponse200

A special day on this date was replaced.

  • objectstringobligatoire

    Always closure.

    Valeurs:"closure"

  • datestring (date)obligatoire

    The day. A date YYYY-MM-DD in the restaurant's time zone.

  • closedbooleanobligatoire

    Closed all day.

  • hoursTimeWindow[]obligatoire

    The windows of that day when not closed (at most two).

    Champs contenus (2)
    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing; earlier than open runs past midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • notestringobligatoirepeut être null

    Note, e.g. the reason.

Erreurs

  • 400invalid_request: a parameter or the body is wrong, or it contains a query parameter or field the operation does not know. param names the field.
  • 401unauthorized: missing, malformed, expired or revoked access token, or the app was disconnected or suspended.
  • 403insufficient_scope, plan_required (with param when an order type is not in the plan) or account_inactive.
  • 409invalid_transition (the status of the object does not allow this), stage_not_used (the restaurant does not use this status), external_id_taken (your app already uses this external_id for another object of the same kind in this restaurant), slot_unavailable (the time or the table is taken), idempotency_in_progress (a request with this Idempotency-Key is still running) or conflict (the same data was changed elsewhere at the same moment, three times in a row; retry unchanged after Retry-After seconds).
  • 413payload_too_large: the body is larger than the operation takes, counted in bytes: 64 KB, 2 MB for PUT /menu. Split the request.
  • 422idempotency_key_reused (the key was used with a different request) or limit_exceeded (too many entries in one request, such as products in PUT /menu, or a limit of the restaurant is reached, such as 60 special days).
  • 429rate_limited: more than 120 requests per minute on this connection. Wait Retry-After seconds.
  • 500server_error. Safe to retry with the same Idempotency-Key.

Tous les codes d'erreur

Requête
curl -X POST "https://api.flavoso.com/v1/store/closures" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
  "date": "2026-12-24",
  "hours": [
    {
      "open": "11:00",
      "close": "14:00"
    }
  ],
  "note": "Christmas Eve: lunch only"
}'
Exemple: Corps
{
  "date": "2026-12-24",
  "hours": [
    {
      "open": "11:00",
      "close": "14:00"
    }
  ],
  "note": "Christmas Eve: lunch only"
}
Réponse
{
  "object": "closure",
  "date": "2026-12-24",
  "closed": false,
  "hours": [
    {
      "open": "11:00",
      "close": "14:00"
    }
  ],
  "note": "Christmas Eve: lunch only"
}

Delete a special day

delete/store/closures/{date}

Droit:
store:write
Offre:
toutes les offres

Removes the special day on this date; the weekly schedule applies again. Produces store.updated.

Paramètres

NomEmplacementDescription
datestring (date)obligatoirepathThe date of the special day (YYYY-MM-DD).

Réponse200

OK

  • objectstringobligatoire

    Always closure.

    Valeurs:"closure"

  • datestring (date)obligatoire

    The date that was removed. A date YYYY-MM-DD in the restaurant's time zone.

  • deletedbooleanobligatoire

    Always true.

    Valeurs:true

Erreurs

  • 400invalid_request: a parameter or the body is wrong, or it contains a query parameter or field the operation does not know. param names the field.
  • 401unauthorized: missing, malformed, expired or revoked access token, or the app was disconnected or suspended.
  • 403insufficient_scope, plan_required (with param when an order type is not in the plan) or account_inactive.
  • 404not_found: no such object in this restaurant (objects of other restaurants are never found).
  • 409invalid_transition (the status of the object does not allow this), stage_not_used (the restaurant does not use this status), external_id_taken (your app already uses this external_id for another object of the same kind in this restaurant), slot_unavailable (the time or the table is taken), idempotency_in_progress (a request with this Idempotency-Key is still running) or conflict (the same data was changed elsewhere at the same moment, three times in a row; retry unchanged after Retry-After seconds).
  • 429rate_limited: more than 120 requests per minute on this connection. Wait Retry-After seconds.
  • 500server_error. Safe to retry with the same Idempotency-Key.

Tous les codes d'erreur

Requête
curl -X DELETE "https://api.flavoso.com/v1/store/closures/2026-12-24" \
  -H "Authorization: Bearer $ACCESS_TOKEN"
Réponse
{
  "object": "closure",
  "date": "2026-12-24",
  "deleted": true
}

Pause online ordering

post/store/pause

Droit:
store:write
Offre:
toutes les offres

Stops new online orders until the given time, exactly like the pause button in the dashboard. A pause always ends by itself; at most 12 hours. Without a body: 30 minutes. Send minutes or until, not both. Produces store.paused.

Paramètres

NomEmplacementDescription
Idempotency-KeystringheaderAny unique string up to 255 printable characters. Retrying a POST with the same key returns the first response (header Idempotent-Replayed: true) instead of acting twice; the same key with a different body is 422 idempotency_key_reused. Kept for 24 hours. Answers that ask for a retry (5xx, 409 conflict) are not kept. While the first request runs, a retry gets 409 idempotency_in_progress; a first request that never finished frees the key after 2 minutes.max 255 chars

Corpsapplication/json

  • minutesinteger

    Pause for this many minutes from now. Default 30.

    1 to 720

  • untilstring (date-time)

    Pause until this instant (ISO 8601 with time zone, at most 12 hours ahead). Without a zone: 400.

  • notestring

    Reason, shown to guests on the ordering page. Longer than 140 characters answers 400 with param.

    max 140 chars

Réponse200

OK

  • objectstringobligatoire

    Always store.

    Valeurs:"store"

  • idstring (uuid)obligatoire

    The restaurant.

  • namestringobligatoire

    Name.

  • slugstringobligatoire

    Its address: <slug>.flavoso.com.

  • timezonestringobligatoire

    IANA time zone of all local times.

  • currencystringobligatoire

    ISO 4217.

  • statusstringobligatoire

    Right now: open, closed (outside hours or a closed special day), or paused.

    Valeurs:"open""closed""paused"

  • paused_untilstring (date-time)obligatoirepeut être null

    End of the running pause; null without one.

  • pause_notestringobligatoirepeut être null

    Reason of the running pause.

  • next_opening_atstring (date-time)obligatoirepeut être null

    Next opening while closed (looks two weeks ahead); null while open.

  • preordersbooleanobligatoire

    Guests may order for a later time, also while closed.

  • order_typesobjectobligatoire

    Which order types guests can choose.

    Champs contenus (3)
    • pickupbooleanobligatoire

      Pickup.

    • deliverybooleanobligatoire

      Delivery.

    • dine_inbooleanobligatoire

      Ordering at the table via QR code (Pro and up).

  • order_statusesstring[]obligatoire

    Statuses this restaurant uses, in order, plus completed and cancelled.

  • lead_timesobjectobligatoire

    How long the kitchen needs; the earliest pickup or delivery time.

    Champs contenus (2)
    • pickup_minutesintegerobligatoire

      Minutes until pickup, 0 to 240.

    • delivery_minutesintegerobligatoire

      Minutes until delivery, 0 to 360.

  • min_orderintegerobligatoire

    Minimum order value for delivery (0 = none). Integer amount in the smallest currency unit (cents).

  • always_openbooleanobligatoire

    No weekly schedule is set: online orders are taken around the clock (special days and pauses still apply) and no reservation times are offered.

  • opening_hoursWeekWindow[]obligatoire

    The weekly opening windows; a weekday without windows is closed.

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • delivery_hoursWeekWindow[]obligatoire

    Weekly delivery windows; empty means delivery follows opening_hours.

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • closuresClosure[]obligatoire

    Upcoming special days (today and later).

    Champs contenus (5)
    • objectstringobligatoire

      Always closure.

      Valeurs:"closure"

    • datestring (date)obligatoire

      The day. A date YYYY-MM-DD in the restaurant's time zone.

    • closedbooleanobligatoire

      Closed all day.

    • hoursTimeWindow[]obligatoire

      The windows of that day when not closed (at most two).

      Champs contenus (2)
      • openstringobligatoire

        Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

        pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

      • closestringobligatoire

        Closing; earlier than open runs past midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

        pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • notestringobligatoirepeut être null

      Note, e.g. the reason.

  • contactobjectobligatoire

    Public contact details.

    Champs contenus (3)
    • phonestringobligatoirepeut être null

      Phone.

    • emailstringobligatoirepeut être null

      E-mail.

    • websitestringobligatoirepeut être null

      Website.

  • addressobjectobligatoirepeut être null

    The address as far as it is known. Restaurants type it freely; postal code and city are only split out when a line starts with a postal code.

    Champs contenus (4)
    • linestringobligatoirepeut être null

      Street and number (or the whole address when it cannot be split).

    • postal_codestringobligatoirepeut être null

      Postal code, when it can be read from the address.

    • citystringobligatoirepeut être null

      City, when it can be read from the address.

    • countrystringobligatoirepeut être null

      ISO 3166-1 alpha-2, as in GET /me.

  • locationobjectobligatoirepeut être null

    Coordinates; null when not set.

    Champs contenus (2)
    • latnumberobligatoire

      Latitude.

    • lonnumberobligatoire

      Longitude.

Erreurs

  • 400invalid_request: a parameter or the body is wrong, or it contains a query parameter or field the operation does not know. param names the field.
  • 401unauthorized: missing, malformed, expired or revoked access token, or the app was disconnected or suspended.
  • 403insufficient_scope, plan_required (with param when an order type is not in the plan) or account_inactive.
  • 409invalid_transition (the status of the object does not allow this), stage_not_used (the restaurant does not use this status), external_id_taken (your app already uses this external_id for another object of the same kind in this restaurant), slot_unavailable (the time or the table is taken), idempotency_in_progress (a request with this Idempotency-Key is still running) or conflict (the same data was changed elsewhere at the same moment, three times in a row; retry unchanged after Retry-After seconds).
  • 413payload_too_large: the body is larger than the operation takes, counted in bytes: 64 KB, 2 MB for PUT /menu. Split the request.
  • 429rate_limited: more than 120 requests per minute on this connection. Wait Retry-After seconds.
  • 500server_error. Safe to retry with the same Idempotency-Key.

Tous les codes d'erreur

Requête
curl -X POST "https://api.flavoso.com/v1/store/pause" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
  "minutes": 30,
  "note": "Kitchen at capacity"
}'
Exemple: Corps
{
  "minutes": 30,
  "note": "Kitchen at capacity"
}
Réponse
{
  "object": "store",
  "id": "8a3e5c7d-2f14-4b9e-a6d1-0c4b7e9f2a35",
  "name": "Trattoria Bella Rosa",
  "slug": "bella-rosa",
  "timezone": "Europe/Berlin",
  "currency": "EUR",
  "status": "paused",
  "paused_until": "2026-10-09T18:15:00.000Z",
  "pause_note": "Kitchen at capacity",
  "next_opening_at": null,
  "preorders": true,
  "order_types": {
    "pickup": true,
    "delivery": true,
    "dine_in": true
  },
  "order_statuses": [
    "pending",
    "confirmed",
    "preparing",
    "ready",
    "completed",
    "cancelled"
  ],
  "lead_times": {
    "pickup_minutes": 20,
    "delivery_minutes": 45
  },
  "min_order": 1500,
  "always_open": false,
  "opening_hours": [
    {
      "weekday": 1,
      "open": "11:30",
      "close": "14:30"
    },
    {
      "weekday": 1,
      "open": "17:30",
      "close": "22:00"
    },
    {
      "weekday": 5,
      "open": "12:00",
      "close": "23:00"
    }
  ],
  "delivery_hours": [],
  "closures": [
    {
      "object": "closure",
      "date": "2026-12-24",
      "closed": false,
      "hours": [
        {
          "open": "11:00",
          "close": "14:00"
        }
      ],
      "note": "Christmas Eve: lunch only"
    }
  ],
  "contact": {
    "phone": "+49 30 1234567",
    "email": "hello@example.com",
    "website": "https://example.com"
  },
  "address": {
    "line": "Kastanienallee 12",
    "postal_code": "10435",
    "city": "Berlin",
    "country": "DE"
  },
  "location": {
    "lat": 52.5386,
    "lon": 13.4093
  }
}

Resume online ordering

post/store/resume

Droit:
store:write
Offre:
toutes les offres

Lifts a running pause early. Without a running pause there is nothing to do; the store is returned unchanged. Produces store.resumed.

Paramètres

NomEmplacementDescription
Idempotency-KeystringheaderAny unique string up to 255 printable characters. Retrying a POST with the same key returns the first response (header Idempotent-Replayed: true) instead of acting twice; the same key with a different body is 422 idempotency_key_reused. Kept for 24 hours. Answers that ask for a retry (5xx, 409 conflict) are not kept. While the first request runs, a retry gets 409 idempotency_in_progress; a first request that never finished frees the key after 2 minutes.max 255 chars

Réponse200

OK

  • objectstringobligatoire

    Always store.

    Valeurs:"store"

  • idstring (uuid)obligatoire

    The restaurant.

  • namestringobligatoire

    Name.

  • slugstringobligatoire

    Its address: <slug>.flavoso.com.

  • timezonestringobligatoire

    IANA time zone of all local times.

  • currencystringobligatoire

    ISO 4217.

  • statusstringobligatoire

    Right now: open, closed (outside hours or a closed special day), or paused.

    Valeurs:"open""closed""paused"

  • paused_untilstring (date-time)obligatoirepeut être null

    End of the running pause; null without one.

  • pause_notestringobligatoirepeut être null

    Reason of the running pause.

  • next_opening_atstring (date-time)obligatoirepeut être null

    Next opening while closed (looks two weeks ahead); null while open.

  • preordersbooleanobligatoire

    Guests may order for a later time, also while closed.

  • order_typesobjectobligatoire

    Which order types guests can choose.

    Champs contenus (3)
    • pickupbooleanobligatoire

      Pickup.

    • deliverybooleanobligatoire

      Delivery.

    • dine_inbooleanobligatoire

      Ordering at the table via QR code (Pro and up).

  • order_statusesstring[]obligatoire

    Statuses this restaurant uses, in order, plus completed and cancelled.

  • lead_timesobjectobligatoire

    How long the kitchen needs; the earliest pickup or delivery time.

    Champs contenus (2)
    • pickup_minutesintegerobligatoire

      Minutes until pickup, 0 to 240.

    • delivery_minutesintegerobligatoire

      Minutes until delivery, 0 to 360.

  • min_orderintegerobligatoire

    Minimum order value for delivery (0 = none). Integer amount in the smallest currency unit (cents).

  • always_openbooleanobligatoire

    No weekly schedule is set: online orders are taken around the clock (special days and pauses still apply) and no reservation times are offered.

  • opening_hoursWeekWindow[]obligatoire

    The weekly opening windows; a weekday without windows is closed.

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • delivery_hoursWeekWindow[]obligatoire

    Weekly delivery windows; empty means delivery follows opening_hours.

    Champs contenus (3)
    • weekdayintegerobligatoire

      0 = Monday … 6 = Sunday.

      0 to 6

    • openstringobligatoire

      Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • closestringobligatoire

      Closing. Earlier than open: the window runs past midnight. Equal to open: until midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

      pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

  • closuresClosure[]obligatoire

    Upcoming special days (today and later).

    Champs contenus (5)
    • objectstringobligatoire

      Always closure.

      Valeurs:"closure"

    • datestring (date)obligatoire

      The day. A date YYYY-MM-DD in the restaurant's time zone.

    • closedbooleanobligatoire

      Closed all day.

    • hoursTimeWindow[]obligatoire

      The windows of that day when not closed (at most two).

      Champs contenus (2)
      • openstringobligatoire

        Opening. 24-hour local time "HH:MM" in the restaurant's time zone.

        pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

      • closestringobligatoire

        Closing; earlier than open runs past midnight. 24-hour local time "HH:MM" in the restaurant's time zone.

        pattern ^([01][0-9]|2[0-3]):[0-5][0-9]$

    • notestringobligatoirepeut être null

      Note, e.g. the reason.

  • contactobjectobligatoire

    Public contact details.

    Champs contenus (3)
    • phonestringobligatoirepeut être null

      Phone.

    • emailstringobligatoirepeut être null

      E-mail.

    • websitestringobligatoirepeut être null

      Website.

  • addressobjectobligatoirepeut être null

    The address as far as it is known. Restaurants type it freely; postal code and city are only split out when a line starts with a postal code.

    Champs contenus (4)
    • linestringobligatoirepeut être null

      Street and number (or the whole address when it cannot be split).

    • postal_codestringobligatoirepeut être null

      Postal code, when it can be read from the address.

    • citystringobligatoirepeut être null

      City, when it can be read from the address.

    • countrystringobligatoirepeut être null

      ISO 3166-1 alpha-2, as in GET /me.

  • locationobjectobligatoirepeut être null

    Coordinates; null when not set.

    Champs contenus (2)
    • latnumberobligatoire

      Latitude.

    • lonnumberobligatoire

      Longitude.

Erreurs

  • 400invalid_request: a parameter or the body is wrong, or it contains a query parameter or field the operation does not know. param names the field.
  • 401unauthorized: missing, malformed, expired or revoked access token, or the app was disconnected or suspended.
  • 403insufficient_scope, plan_required (with param when an order type is not in the plan) or account_inactive.
  • 409invalid_transition (the status of the object does not allow this), stage_not_used (the restaurant does not use this status), external_id_taken (your app already uses this external_id for another object of the same kind in this restaurant), slot_unavailable (the time or the table is taken), idempotency_in_progress (a request with this Idempotency-Key is still running) or conflict (the same data was changed elsewhere at the same moment, three times in a row; retry unchanged after Retry-After seconds).
  • 429rate_limited: more than 120 requests per minute on this connection. Wait Retry-After seconds.
  • 500server_error. Safe to retry with the same Idempotency-Key.

Tous les codes d'erreur

Requête
curl -X POST "https://api.flavoso.com/v1/store/resume" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)"
Réponse
{
  "object": "store",
  "id": "8a3e5c7d-2f14-4b9e-a6d1-0c4b7e9f2a35",
  "name": "Trattoria Bella Rosa",
  "slug": "bella-rosa",
  "timezone": "Europe/Berlin",
  "currency": "EUR",
  "status": "open",
  "paused_until": null,
  "pause_note": null,
  "next_opening_at": null,
  "preorders": true,
  "order_types": {
    "pickup": true,
    "delivery": true,
    "dine_in": true
  },
  "order_statuses": [
    "pending",
    "confirmed",
    "preparing",
    "ready",
    "completed",
    "cancelled"
  ],
  "lead_times": {
    "pickup_minutes": 20,
    "delivery_minutes": 45
  },
  "min_order": 1500,
  "always_open": false,
  "opening_hours": [
    {
      "weekday": 1,
      "open": "11:30",
      "close": "14:30"
    },
    {
      "weekday": 1,
      "open": "17:30",
      "close": "22:00"
    },
    {
      "weekday": 5,
      "open": "12:00",
      "close": "23:00"
    }
  ],
  "delivery_hours": [],
  "closures": [
    {
      "object": "closure",
      "date": "2026-12-24",
      "closed": false,
      "hours": [
        {
          "open": "11:00",
          "close": "14:00"
        }
      ],
      "note": "Christmas Eve: lunch only"
    }
  ],
  "contact": {
    "phone": "+49 30 1234567",
    "email": "hello@example.com",
    "website": "https://example.com"
  },
  "address": {
    "line": "Kastanienallee 12",
    "postal_code": "10435",
    "city": "Berlin",
    "country": "DE"
  },
  "location": {
    "lat": 52.5386,
    "lon": 13.4093
  }
}

Une question reste ouverte ? Écrivez à support@flavoso.com en indiquant l'identifiant de X-Request-Id. Il nous permet de retrouver votre requête dans le journal.