Skip to content
Keptslot
Start free

Set service calendars

PUT
/v1/services/{id}/staff
curl --request PUT \
--url https://api.keptslot.com/v1/services/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/staff \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "staff_ids": [ "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" ] }'

This endpoint replaces the whole set of calendars that offer a service. Send every calendar id you want. An id you omit no longer offers the service.

Send an empty array to make the service unbookable. Availability then returns no slots for it.

The response echoes the ids you sent.

id
required
string format: uuid

The service id.

Media type application/json
object
staff_ids
required
Array<string>
Example generated
{
"staff_ids": [
"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"
]
}

The set is replaced.

Media type application/json
object
staff_ids
required
Array<string>
Example generated
{
"staff_ids": [
"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"
]
}

The key is missing, malformed or revoked.

Media type application/json
object
error
required
object
type
required

A stable machine-readable code. Match on this.

string
message
required

A sentence for a person. Do not match on this.

string
param

The field that caused the refusal, if one field did.

string
dimension

The plan limit that refused the request. It is present only on a 402, and only for a secret key or an account key. See the errors guide.

string
used

The current count for that dimension. It is present only on a 402, and only for an account key. It is absent when the refusal has no count to report. Absent and zero are different answers.

integer format: int64
limit

The cap for that dimension. It is present only on a 402, and only for an account key. A cap of zero is a real value.

integer format: int64
Example generated
{
"error": {
"type": "example",
"message": "example",
"param": "example",
"dimension": "example",
"used": 1,
"limit": 1
}
}

There is no such resource in this workspace.

Media type application/json
object
error
required
object
type
required

A stable machine-readable code. Match on this.

string
message
required

A sentence for a person. Do not match on this.

string
param

The field that caused the refusal, if one field did.

string
dimension

The plan limit that refused the request. It is present only on a 402, and only for a secret key or an account key. See the errors guide.

string
used

The current count for that dimension. It is present only on a 402, and only for an account key. It is absent when the refusal has no count to report. Absent and zero are different answers.

integer format: int64
limit

The cap for that dimension. It is present only on a 402, and only for an account key. A cap of zero is a real value.

integer format: int64
Example generated
{
"error": {
"type": "example",
"message": "example",
"param": "example",
"dimension": "example",
"used": 1,
"limit": 1
}
}

The request body or the query is not valid.

Media type application/json
object
error
required
object
type
required

A stable machine-readable code. Match on this.

string
message
required

A sentence for a person. Do not match on this.

string
param

The field that caused the refusal, if one field did.

string
dimension

The plan limit that refused the request. It is present only on a 402, and only for a secret key or an account key. See the errors guide.

string
used

The current count for that dimension. It is present only on a 402, and only for an account key. It is absent when the refusal has no count to report. Absent and zero are different answers.

integer format: int64
limit

The cap for that dimension. It is present only on a 402, and only for an account key. A cap of zero is a real value.

integer format: int64
Example generated
{
"error": {
"type": "example",
"message": "example",
"param": "example",
"dimension": "example",
"used": 1,
"limit": 1
}
}