Skip to content
vocapable.Docs

Book a draft on the host's calendar

POST
/v1/workspace/meetings/{meeting_id}/book
curl --request POST \
--url https://api.vocapable.com/v1/workspace/meetings/example/book \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "expected_revision": 1 }'
meeting_id
required
Meeting Id
string
Media typeapplication/json
WorkspaceMeetingRevision
object
expected_revision
required
Expected Revision
integer
>= 1
Examplegenerated
{
"expected_revision": 1
}

Successful Response

Media typeapplication/json
WorkspaceMeetingSaved
object
meeting
required
WorkspaceMeeting
object
id
required
Id
string
organization_id
required
Any of:
string
organization_name
required
Any of:
string
contact_id
required
Any of:
string
contact_name
required
Any of:
string
opportunity_id
required
Any of:
string
quote_id
required
Any of:
string
host
required
Any of:
WorkspacePersonRef

A teammate named on a record: the id the server holds and the name to show.

object
user_id
required
User Id
string
name
required
Name
string
start_at
required
Start At
string format: date-time
end_at
required
End At
string format: date-time
duration_minutes
required
Duration Minutes
integer
timezone
required
Timezone
string
customer_timezone
required
Any of:
string
purpose
required
Any of:
string
event_type
required
Any of:
string
status
required
Status
string
Allowed values: draft checking reserved confirmed changed cancelled no_show completed recovery_needed
status_reason
required
Any of:
string
Allowed values: slot_taken provider_failed calendar_unavailable calendar_disconnected event_missing cancel_failed customer_plan_required reminder_failed
status_note
required
Any of:
string
calendar
required
WorkspaceMeetingCalendar

Where the meeting lives outside Vocapable, if anywhere.

object
provider
required
Any of:
string
Allowed values: google_calendar microsoft_calendar calendly
provider_name
required
Any of:
string
calendar_id
required
Any of:
string
external_event_id
required
Any of:
string
on_calendar
required
On Calendar
boolean
attendee_email
required
Any of:
string
attendee_name
required
Any of:
string
conference
required
Conference
boolean
reminder_state
required
Reminder State
string
Allowed values: none invitation_requested update_requested cancellation_requested notification_failed
reminder_note
required
Reminder Note
string
conflicts
required
Conflicts
Array<object>
WorkspaceBusyRange
object
start
required
Start
string format: date-time
end
required
End
string format: date-time
source
required
Source
string
Allowed values: calendar meeting
meeting_id
Any of:
string
label
Any of:
string
origin
required
Origin
string
Allowed values: workspace share_link
booking_version
required
Booking Version
integer
replaces_id
required
Any of:
string
created_by
required
Any of:
WorkspacePersonRef

A teammate named on a record: the id the server holds and the name to show.

object
user_id
required
User Id
string
name
required
Name
string
booked_at
required
Any of:
string format: date-time
confirmed_at
required
Any of:
string format: date-time
cancelled_at
required
Any of:
string format: date-time
outcome_at
required
Any of:
string format: date-time
outcome_by
required
Any of:
WorkspacePersonRef

A teammate named on a record: the id the server holds and the name to show.

object
user_id
required
User Id
string
name
required
Name
string
outcome_note
required
Any of:
string
pending_operation
required
Any of:
WorkspaceMeetingOperation

The provider write in flight for this meeting (booking, move or cancellation).

object
id
required
Id
string
status
required
Status
string
attempts
required
Attempts
integer
next_retry_at
required
Any of:
string format: date-time
error_class
required
Any of:
string
summary
required
Summary
string
actions
required
WorkspaceMeetingActions
object
can_edit
required
Can Edit
boolean
can_book
required
Can Book
boolean
can_reschedule
required
Can Reschedule
boolean
can_cancel
required
Can Cancel
boolean
can_mark_outcome
required
Can Mark Outcome
boolean
revision
required
Revision
integer
created_at
required
Created At
string format: date-time
updated_at
required
Updated At
string format: date-time
unchanged
required
Unchanged
boolean
message
required
Message
string
Example
{
"meeting": {
"status": "draft",
"status_reason": "slot_taken",
"calendar": {
"provider": "google_calendar"
},
"reminder_state": "none",
"conflicts": [
{
"source": "calendar"
}
],
"origin": "workspace"
}
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
input
Input
ctx
Context
object
Examplegenerated
{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example",
"input": "example",
"ctx": {}
}
]
}