# Timeslots

Timeslots

## List time slots for the delivery provider method

> List all time slots belonging to the delivery provider method

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Timeslots","description":"Timeslots"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]},{"accessToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"responses":{"DeliveryProviderMethodTimeslotListResponse":{"description":"Example response","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/DeliveryProviderMethodTimeslotResponseSchema"}},"paging":{"$ref":"#/components/schemas/Paging"}},"required":["items","paging"]}}}}},"schemas":{"DeliveryProviderMethodTimeslotResponseSchema":{"title":"DeliveryProviderMethodTimeslotResponseSchema","type":"object","description":"DeliveryProviderMethodTimeslotResponseSchema","required":["deliveryProviderMethodTimeslotUid","name","startTime","endTime","applicableDays","excludedDates","deliveryCount"],"properties":{"deliveryProviderMethodTimeslotUid":{"$ref":"#/components/schemas/UID"},"name":{"type":"string"},"startTime":{"type":"string","format":"time"},"endTime":{"type":"string","format":"time"},"applicableDays":{"type":"array","items":{"$ref":"#/components/schemas/WeekDayENUM"}},"excludedDates":{"type":"array","description":"Format: YYYY-MM-DD","items":{"type":"string"}},"deliveryCount":{"type":"integer"}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"WeekDayENUM":{"enum":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"],"title":"WeekDayENUM","type":"string"},"Paging":{"description":"totalCount The total number of items in the result set.\n\npageSize The number of items per page.\n\npageNumber The current page in the result set.","properties":{"pageNumber":{"type":"integer"},"pageSize":{"type":"integer"},"totalCount":{"type":"integer"}},"required":["totalCount","pageSize","pageNumber"],"title":"Paging","type":"object"},"SortDirectionENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| ASC | Sort in ascending order|\n| DESC | Sort in descending order|\n","enum":["ASC","DESC"],"title":"SortDirectionENUM","type":"string"}},"parameters":{"pageNumberQuery":{"description":"Reference to a specific page in a result set.","in":"query","name":"pageNumber","required":false,"schema":{"type":"integer"}},"pageSizeQuery":{"description":"The number of items per page in a result set.","in":"query","name":"pageSize","required":false,"schema":{"type":"integer"}},"sortByQuery":{"description":"Defines which field the resource list is sorted by.","in":"query","name":"sortBy","required":false,"schema":{"type":"string"}},"sortDirectionQuery":{"description":"Reference to a sort direction","explode":false,"in":"query","name":"sortDirection","schema":{"$ref":"#/components/schemas/SortDirectionENUM"},"style":"form"}}},"paths":{"/tenants/{tenantUid}/delivery-providers/{deliveryProviderUid}/methods/{deliveryProviderMethodUid}/timeslots":{"get":{"summary":"List time slots for the delivery provider method","responses":{"200":{"$ref":"#/components/responses/DeliveryProviderMethodTimeslotListResponse"}},"operationId":"get-list-tenants-delivery-providers-methods-timeslots","description":"List all time slots belonging to the delivery provider method","tags":["Timeslots"],"parameters":[{"$ref":"#/components/parameters/pageNumberQuery"},{"$ref":"#/components/parameters/pageSizeQuery"},{"$ref":"#/components/parameters/sortByQuery"},{"$ref":"#/components/parameters/sortDirectionQuery"}]}}}}
```

## Create a time slot for the delivery provider method

> Create new time slot for the delivery provider method\
> \
> Required permissions: DELIVERY\_METHOD

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Timeslots","description":"Timeslots"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]},{"accessToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"responses":{"DeliveryProviderMethodTimeslotResponse":{"description":"Example response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeliveryProviderMethodTimeslotResponseSchema"}}}}},"schemas":{"DeliveryProviderMethodTimeslotResponseSchema":{"title":"DeliveryProviderMethodTimeslotResponseSchema","type":"object","description":"DeliveryProviderMethodTimeslotResponseSchema","required":["deliveryProviderMethodTimeslotUid","name","startTime","endTime","applicableDays","excludedDates","deliveryCount"],"properties":{"deliveryProviderMethodTimeslotUid":{"$ref":"#/components/schemas/UID"},"name":{"type":"string"},"startTime":{"type":"string","format":"time"},"endTime":{"type":"string","format":"time"},"applicableDays":{"type":"array","items":{"$ref":"#/components/schemas/WeekDayENUM"}},"excludedDates":{"type":"array","description":"Format: YYYY-MM-DD","items":{"type":"string"}},"deliveryCount":{"type":"integer"}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"WeekDayENUM":{"enum":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"],"title":"WeekDayENUM","type":"string"},"DeliveryProviderMethodTimeslotCreateRequestSchema":{"title":"timeslotRequestModel","type":"object","description":"timeslotRequestModel","required":["name","startTime","endTime","applicableDays"],"properties":{"name":{"type":"string"},"startTime":{"type":"string","format":"time","description":"HH:MM"},"endTime":{"type":"string","format":"time","description":"HH:MM"},"applicableDays":{"type":"array","items":{"$ref":"#/components/schemas/WeekDayENUM"}},"excludedDates":{"type":"array","description":"Format: YYYY-MM-DD","items":{"type":"string"}},"deliveryProviderMethodTimeslotUid":{"type":"string"}}}},"requestBodies":{"DeliveryProviderMethodTimeslotCreateRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeliveryProviderMethodTimeslotCreateRequestSchema"}}}}}},"paths":{"/tenants/{tenantUid}/delivery-providers/{deliveryProviderUid}/methods/{deliveryProviderMethodUid}/timeslots":{"post":{"summary":"Create a time slot for the delivery provider method","tags":["Timeslots"],"responses":{"201":{"$ref":"#/components/responses/DeliveryProviderMethodTimeslotResponse"}},"operationId":"post-tenants-delivery-providers-methods-timeslot","description":"Create new time slot for the delivery provider method\n\nRequired permissions: DELIVERY_METHOD","requestBody":{"$ref":"#/components/requestBodies/DeliveryProviderMethodTimeslotCreateRequest"}}}}}
```

## List available time slots for a given time range

> List available time slots belonging to the delivery provider method

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Timeslots","description":"Timeslots"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]},{"accessToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"responses":{"DeliveryProviderMethodTimeslotAvailableListResponse":{"description":"Example response","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/DeliveryProviderMethodTimeslotAvailableResponseSchema"}},"paging":{"$ref":"#/components/schemas/Paging"}},"required":["items","paging"]}}}}},"schemas":{"DeliveryProviderMethodTimeslotAvailableResponseSchema":{"title":"DeliveryProviderMethodTimeslotAvailableResponseSchema","type":"object","properties":{"date":{"type":"string","format":"date"},"timeslots":{"type":"array","items":{"$ref":"#/components/schemas/DeliveryProviderMethodTimeslotResponseSchema"}}},"required":["date","timeslots"]},"DeliveryProviderMethodTimeslotResponseSchema":{"title":"DeliveryProviderMethodTimeslotResponseSchema","type":"object","description":"DeliveryProviderMethodTimeslotResponseSchema","required":["deliveryProviderMethodTimeslotUid","name","startTime","endTime","applicableDays","excludedDates","deliveryCount"],"properties":{"deliveryProviderMethodTimeslotUid":{"$ref":"#/components/schemas/UID"},"name":{"type":"string"},"startTime":{"type":"string","format":"time"},"endTime":{"type":"string","format":"time"},"applicableDays":{"type":"array","items":{"$ref":"#/components/schemas/WeekDayENUM"}},"excludedDates":{"type":"array","description":"Format: YYYY-MM-DD","items":{"type":"string"}},"deliveryCount":{"type":"integer"}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"WeekDayENUM":{"enum":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"],"title":"WeekDayENUM","type":"string"},"Paging":{"description":"totalCount The total number of items in the result set.\n\npageSize The number of items per page.\n\npageNumber The current page in the result set.","properties":{"pageNumber":{"type":"integer"},"pageSize":{"type":"integer"},"totalCount":{"type":"integer"}},"required":["totalCount","pageSize","pageNumber"],"title":"Paging","type":"object"},"SortDirectionENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| ASC | Sort in ascending order|\n| DESC | Sort in descending order|\n","enum":["ASC","DESC"],"title":"SortDirectionENUM","type":"string"}},"parameters":{"pageNumberQuery":{"description":"Reference to a specific page in a result set.","in":"query","name":"pageNumber","required":false,"schema":{"type":"integer"}},"pageSizeQuery":{"description":"The number of items per page in a result set.","in":"query","name":"pageSize","required":false,"schema":{"type":"integer"}},"sortByQuery":{"description":"Defines which field the resource list is sorted by.","in":"query","name":"sortBy","required":false,"schema":{"type":"string"}},"sortDirectionQuery":{"description":"Reference to a sort direction","explode":false,"in":"query","name":"sortDirection","schema":{"$ref":"#/components/schemas/SortDirectionENUM"},"style":"form"}}},"paths":{"/tenants/{tenantUid}/delivery-providers/{deliveryProviderUid}/methods/{deliveryProviderMethodUid}/timeslots/available":{"get":{"summary":"List available time slots for a given time range","responses":{"200":{"$ref":"#/components/responses/DeliveryProviderMethodTimeslotAvailableListResponse"}},"operationId":"get-list-tenants-delivery-providers-methods-timeslots-available","description":"List available time slots belonging to the delivery provider method","tags":["Timeslots"],"parameters":[{"$ref":"#/components/parameters/pageNumberQuery"},{"$ref":"#/components/parameters/pageSizeQuery"},{"$ref":"#/components/parameters/sortByQuery"},{"$ref":"#/components/parameters/sortDirectionQuery"},{"schema":{"type":"string","format":"date-time"},"in":"query","name":"fromDateTime","required":true,"description":"The time to fetch available timeslots from"},{"schema":{"type":"string","format":"date-time"},"in":"query","name":"toDateTime","description":"The time to fetch available timeslots to"}]}}}}
```

## Get  time slot for the delivery provider method

> Get time slot for the delivery provider method by deliveryProviderMethodTimeslotUid

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Timeslots","description":"Timeslots"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]},{"accessToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"responses":{"DeliveryProviderMethodTimeslotResponse":{"description":"Example response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeliveryProviderMethodTimeslotResponseSchema"}}}}},"schemas":{"DeliveryProviderMethodTimeslotResponseSchema":{"title":"DeliveryProviderMethodTimeslotResponseSchema","type":"object","description":"DeliveryProviderMethodTimeslotResponseSchema","required":["deliveryProviderMethodTimeslotUid","name","startTime","endTime","applicableDays","excludedDates","deliveryCount"],"properties":{"deliveryProviderMethodTimeslotUid":{"$ref":"#/components/schemas/UID"},"name":{"type":"string"},"startTime":{"type":"string","format":"time"},"endTime":{"type":"string","format":"time"},"applicableDays":{"type":"array","items":{"$ref":"#/components/schemas/WeekDayENUM"}},"excludedDates":{"type":"array","description":"Format: YYYY-MM-DD","items":{"type":"string"}},"deliveryCount":{"type":"integer"}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"WeekDayENUM":{"enum":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"],"title":"WeekDayENUM","type":"string"}}},"paths":{"/tenants/{tenantUid}/delivery-providers/{deliveryProviderUid}/methods/{deliveryProviderMethodUid}/timeslots/{deliveryProviderMethodTimeslotUid}":{"get":{"summary":"Get  time slot for the delivery provider method","responses":{"200":{"$ref":"#/components/responses/DeliveryProviderMethodTimeslotResponse"}},"operationId":"get-tenants-delivery-providers-methods-timeslot-by-uid","description":"Get time slot for the delivery provider method by deliveryProviderMethodTimeslotUid","tags":["Timeslots"]}}}}
```

## Update  time slot for the delivery provider method

> Update time slot for the delivery provider method by deliveryProviderMethodTimeslotUid\
> \
> Required permissions: DELIVERY\_METHOD

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Timeslots","description":"Timeslots"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]},{"accessToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"responses":{"DeliveryProviderMethodTimeslotResponse":{"description":"Example response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeliveryProviderMethodTimeslotResponseSchema"}}}}},"schemas":{"DeliveryProviderMethodTimeslotResponseSchema":{"title":"DeliveryProviderMethodTimeslotResponseSchema","type":"object","description":"DeliveryProviderMethodTimeslotResponseSchema","required":["deliveryProviderMethodTimeslotUid","name","startTime","endTime","applicableDays","excludedDates","deliveryCount"],"properties":{"deliveryProviderMethodTimeslotUid":{"$ref":"#/components/schemas/UID"},"name":{"type":"string"},"startTime":{"type":"string","format":"time"},"endTime":{"type":"string","format":"time"},"applicableDays":{"type":"array","items":{"$ref":"#/components/schemas/WeekDayENUM"}},"excludedDates":{"type":"array","description":"Format: YYYY-MM-DD","items":{"type":"string"}},"deliveryCount":{"type":"integer"}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"WeekDayENUM":{"enum":["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"],"title":"WeekDayENUM","type":"string"},"DeliveryProviderMethodTimeslotUpdateRequestSchema":{"title":"DeliveryProviderMethodTimeslotUpdateRequestSchema","type":"object","description":"DeliveryProviderMethodTimeslotUpdateRequestSchema","properties":{"name":{"type":"string"},"startTime":{"type":"string","format":"time","description":"HH:MM"},"endTime":{"type":"string","format":"time","description":"HH:MM"},"applicableDays":{"type":"array","items":{"$ref":"#/components/schemas/WeekDayENUM"}},"excludedDates":{"type":"array","description":"Format: YYYY-MM-DD","items":{"type":"string"}}}}},"requestBodies":{"DeliveryProviderMethodTimeslotUpdateRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeliveryProviderMethodTimeslotUpdateRequestSchema"}}}}}},"paths":{"/tenants/{tenantUid}/delivery-providers/{deliveryProviderUid}/methods/{deliveryProviderMethodUid}/timeslots/{deliveryProviderMethodTimeslotUid}":{"put":{"summary":"Update  time slot for the delivery provider method","responses":{"200":{"$ref":"#/components/responses/DeliveryProviderMethodTimeslotResponse"}},"operationId":"put-tenants-delivery-providers-methods-timeslot-by-uid","description":"Update time slot for the delivery provider method by deliveryProviderMethodTimeslotUid\n\nRequired permissions: DELIVERY_METHOD","requestBody":{"$ref":"#/components/requestBodies/DeliveryProviderMethodTimeslotUpdateRequest"},"tags":["Timeslots"]}}}}
```

## Delete time slot for the delivery provider method

> Delete time slot for the delivery provider method by deliveryProviderMethodTimeslotUid\
> &#x20;   \
> Required permissions: DELIVERY\_METHOD

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Timeslots","description":"Timeslots"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]},{"accessToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}}},"paths":{"/tenants/{tenantUid}/delivery-providers/{deliveryProviderUid}/methods/{deliveryProviderMethodUid}/timeslots/{deliveryProviderMethodTimeslotUid}":{"delete":{"summary":"Delete time slot for the delivery provider method","responses":{"200":{"description":""}},"operationId":"delete-tenants-delivery-providers-methods-timeslot-by-uid","description":"Delete time slot for the delivery provider method by deliveryProviderMethodTimeslotUid\n    \nRequired permissions: DELIVERY_METHOD","tags":["Timeslots"]}}}}
```
