Crea una prenotazione
curl --request POST \
--url https://app.gestionesala.com/api/v1/reservations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"venueId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"serviceDate": "2023-12-25",
"time": "<string>",
"partySize": 2,
"phone": "<string>",
"guestName": "<string>",
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>",
"serviceTags": [
"<string>"
],
"notes": "<string>",
"channel": "<string>",
"externalRef": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
venueId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
serviceDate: '2023-12-25',
time: '<string>',
partySize: 2,
phone: '<string>',
guestName: '<string>',
email: 'jsmith@example.com',
firstName: '<string>',
lastName: '<string>',
serviceTags: ['<string>'],
notes: '<string>',
channel: '<string>',
externalRef: '<string>'
})
};
fetch('https://app.gestionesala.com/api/v1/reservations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://app.gestionesala.com/api/v1/reservations"
payload = {
"venueId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"serviceDate": "2023-12-25",
"time": "<string>",
"partySize": 2,
"phone": "<string>",
"guestName": "<string>",
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>",
"serviceTags": ["<string>"],
"notes": "<string>",
"channel": "<string>",
"externalRef": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"reservation": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"venueId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"serviceDate": "2023-12-25",
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"partySize": 123,
"status": "created",
"tableAssigned": true,
"needsAttention": true,
"notes": "<string>",
"source": "phone",
"sourceDetail": "<string>",
"externalRef": "<string>",
"guestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"updatedAt": "2023-11-07T05:31:56Z",
"guest": {
"name": "<string>",
"allergies": "<string>",
"allergens": [
"gluten"
]
},
"guestDetails": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"phone": "<string>",
"email": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"name": "<string>",
"allergies": "<string>",
"allergens": [
"gluten"
],
"notes": "<string>",
"visitCount": 123,
"noShowCount": 123,
"externalRef": "<string>",
"updatedAt": "2023-11-07T05:31:56Z"
},
"table": {
"tableId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tableCombinationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tables": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"minSeats": 123,
"maxSeats": 123
}
]
}
}
}{
"reservation": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"venueId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"serviceDate": "2023-12-25",
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"partySize": 123,
"status": "created",
"tableAssigned": true,
"needsAttention": true,
"notes": "<string>",
"source": "phone",
"sourceDetail": "<string>",
"externalRef": "<string>",
"guestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"updatedAt": "2023-11-07T05:31:56Z",
"guest": {
"name": "<string>",
"allergies": "<string>",
"allergens": [
"gluten"
]
},
"guestDetails": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"phone": "<string>",
"email": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"name": "<string>",
"allergies": "<string>",
"allergens": [
"gluten"
],
"notes": "<string>",
"visitCount": 123,
"noShowCount": 123,
"externalRef": "<string>",
"updatedAt": "2023-11-07T05:31:56Z"
},
"table": {
"tableId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tableCombinationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tables": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"minSeats": 123,
"maxSeats": 123
}
]
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}Prenotazioni
Crea una prenotazione
Scope: reservations:write
POST
/
reservations
Crea una prenotazione
curl --request POST \
--url https://app.gestionesala.com/api/v1/reservations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"venueId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"serviceDate": "2023-12-25",
"time": "<string>",
"partySize": 2,
"phone": "<string>",
"guestName": "<string>",
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>",
"serviceTags": [
"<string>"
],
"notes": "<string>",
"channel": "<string>",
"externalRef": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
venueId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
serviceDate: '2023-12-25',
time: '<string>',
partySize: 2,
phone: '<string>',
guestName: '<string>',
email: 'jsmith@example.com',
firstName: '<string>',
lastName: '<string>',
serviceTags: ['<string>'],
notes: '<string>',
channel: '<string>',
externalRef: '<string>'
})
};
fetch('https://app.gestionesala.com/api/v1/reservations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://app.gestionesala.com/api/v1/reservations"
payload = {
"venueId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"serviceDate": "2023-12-25",
"time": "<string>",
"partySize": 2,
"phone": "<string>",
"guestName": "<string>",
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>",
"serviceTags": ["<string>"],
"notes": "<string>",
"channel": "<string>",
"externalRef": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"reservation": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"venueId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"serviceDate": "2023-12-25",
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"partySize": 123,
"status": "created",
"tableAssigned": true,
"needsAttention": true,
"notes": "<string>",
"source": "phone",
"sourceDetail": "<string>",
"externalRef": "<string>",
"guestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"updatedAt": "2023-11-07T05:31:56Z",
"guest": {
"name": "<string>",
"allergies": "<string>",
"allergens": [
"gluten"
]
},
"guestDetails": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"phone": "<string>",
"email": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"name": "<string>",
"allergies": "<string>",
"allergens": [
"gluten"
],
"notes": "<string>",
"visitCount": 123,
"noShowCount": 123,
"externalRef": "<string>",
"updatedAt": "2023-11-07T05:31:56Z"
},
"table": {
"tableId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tableCombinationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tables": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"minSeats": 123,
"maxSeats": 123
}
]
}
}
}{
"reservation": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"venueId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"serviceDate": "2023-12-25",
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"partySize": 123,
"status": "created",
"tableAssigned": true,
"needsAttention": true,
"notes": "<string>",
"source": "phone",
"sourceDetail": "<string>",
"externalRef": "<string>",
"guestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"updatedAt": "2023-11-07T05:31:56Z",
"guest": {
"name": "<string>",
"allergies": "<string>",
"allergens": [
"gluten"
]
},
"guestDetails": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"phone": "<string>",
"email": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"name": "<string>",
"allergies": "<string>",
"allergens": [
"gluten"
],
"notes": "<string>",
"visitCount": 123,
"noShowCount": 123,
"externalRef": "<string>",
"updatedAt": "2023-11-07T05:31:56Z"
},
"table": {
"tableId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tableCombinationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tables": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"minSeats": 123,
"maxSeats": 123
}
]
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {
"fields": [
"<string>"
],
"requiredScope": "<string>",
"reason": "<string>",
"alternatives": [
{
"time": "<string>",
"startsAt": "2023-11-07T05:31:56Z",
"endsAt": "2023-11-07T05:31:56Z",
"turnTimeMinutes": 123,
"seats": 123,
"overflowsShift": true
}
]
},
"requestId": "<string>"
}
}Autorizzazioni
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Intestazioni
La stessa chiave ripetuta ritrova la risorsa invece di crearne un'altra
Corpo
application/json
Giorno di servizio, YYYY-MM-DD
Ora locale del locale, HH:mm
Pattern:
^([01]\d|2[0-3]):[0-5]\d$Intervallo richiesto:
x >= 1Telefono dell'ospite: lo riconosce o lo crea
Maximum string length:
200Solo con phone; riempie l'ospite se non l'ha già
Maximum string length:
254Solo con phone; riempie l'ospite se non l'ha già
Required string length:
1 - 100Solo con phone; riempie l'ospite se non l'ha già
Required string length:
1 - 100Solo con phone: si aggiungono all'ospite; un nome fuori catalogo è un 400
Maximum array length:
20Nome di un tag del catalogo
Required string length:
1 - 100Da dove arriva, es. sito o Google: finisce in sourceDetail
Maximum string length:
100Il tuo identificativo, unico nella tua organizzazione
Maximum string length:
200Risposta
Già creata con la stessa Idempotency-Key
- Option 1
- Option 2
Show child attributes
Show child attributes

