Skip to content
vocapable.Docs

Add a customer

POST
/v1/workspace/organizations
curl --request POST \
--url https://api.vocapable.com/v1/workspace/organizations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "name": "example", "kind": "business", "website": "example", "industry": "example", "timezone": "example", "owner_user_id": "example", "person": { "first_name": "example", "last_name": "example", "title": "example", "email": "example", "phone_e164": "example", "timezone": "example" } }'
Idempotency-Key
Any of:
string

Unique key for this request, so a retry replays the original result instead of repeating the work. Stored for 24 hours; a replayed response carries Idempotent-Replay: true. A UUID is the documented shape.

Media typeapplication/json
WorkspaceOrganizationCreate

Add a customer. Adding a record never grants permission to call or message them.

object
name
required
Name
string
>= 1 characters <= 200 characters
kind
Kind
string
default: business
Allowed values: business household
website
Any of:
string
<= 300 characters
industry
Any of:
string
<= 120 characters
timezone
Any of:
string
<= 64 characters
owner_user_id
Any of:
string
person
Any of:
WorkspacePersonCreate
object
first_name
required
First Name
string
>= 1 characters <= 100 characters
last_name
Any of:
string
<= 100 characters
title
Any of:
string
<= 150 characters
email
Any of:
string
<= 320 characters /^[^@\s]+@[^@\s]+$/
phone_e164
required
Phone E164
string
/^\+[1-9]\d{1,14}$/
timezone
Any of:
string
<= 64 characters

Successful Response

Media typeapplication/json
WorkspaceOrganization

A relationship with its people, open work and source.

object
id
required
Id
string
name
required
Name
string
kind
required
Kind
string
Allowed values: business household
status
required
Status
string
Allowed values: active merged archived
website
required
Any of:
string
industry
required
Any of:
string
timezone
required
Any of:
string
timezone_source
required
Any of:
string
owner
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
source
required
Source
string
source_detail
required
Any of:
string
people
required
People
Array<object>
WorkspacePerson

One person (a contacts row) inside a relationship.

object
contact_id
required
Contact Id
string
organization_id
required
Any of:
string
display_name
required
Display Name
string
first_name
required
Any of:
string
last_name
required
Any of:
string
title
required
Any of:
string
email
required
Any of:
string
phone_e164
required
Phone E164
string
timezone
required
Any of:
string
owner
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
do_not_contact
required
Do Not Contact
boolean
contact_points
required
Contact Points
Array<object>
WorkspaceContactPoint
object
id
required
Id
string
contact_id
required
Contact Id
string
kind
required
Kind
string
Allowed values: phone email
value
required
Value
string
label
required
Any of:
string
is_primary
required
Is Primary
boolean
verified_at
required
Any of:
string format: date-time
source
required
Source
string
revision
required
Revision
integer
policy
required
WorkspacePolicySummary

The current contact-policy answer for the viewing person, on one channel.

object
channel
required
Channel
string
Allowed values: voice sms email
allowed
required
Allowed
boolean
holds
required
Holds
Array<object>
WorkspacePolicyHold
object
code
required
Code
string
Allowed values: do_not_contact owned_by_teammate owner_unassigned device_not_ready not_available no_address contact_review_needed ai_consent_missing callback_scheduled timezone_unknown outside_local_window frequency_cap_reached service_not_entitled spend_cap_reached
message
required
Message
string
recovery
required
Recovery
string
recipient_local_time
required
Any of:
string format: date-time
window_opens_at
required
Any of:
string format: date-time
evaluated_at
required
Evaluated At
string format: date-time
policy_version
required
Policy Version
string
window_start_local
Any of:
string format: time
window_end_local
Any of:
string format: time
window_jurisdictions
Window Jurisdictions
Array<string>
frequency_cap
Any of:
integer
frequency_cap_period_hours
Any of:
integer
cap_clears_at
Any of:
string format: date-time
rules_version
Any of:
string
open_opportunities
required
Open Opportunities
Array<object>
WorkspaceOpportunitySummary
object
id
required
Id
string
title
required
Title
string
stage
required
Stage
string
Allowed values: new qualified proposal won lost deferred
amount_minor
required
Amount Minor
integer
currency
required
Currency
string
owner
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
next_step
required
Any of:
string
next_step_due_at
required
Any of:
string format: date-time
open_tasks
required
Open Tasks
Array<object>
WorkspaceTask
object
id
required
Id
string
kind
required
Kind
string
Allowed values: follow_up callback delivery review case_response meeting_prep
title
required
Title
string
organization_id
required
Any of:
string
contact_id
required
Any of:
string
opportunity_id
required
Any of:
string
subject_type
required
Any of:
string
Allowed values: handoff case meeting approval call quote
subject_id
required
Any of:
string
owner
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
due_at
required
Any of:
string format: date-time
status
required
Status
string
Allowed values: open done cancelled
completed_at
required
Any of:
string format: date-time
completed_by_user_id
required
Any of:
string
completion_note
required
Any of:
string
revision
required
Revision
integer
created_at
required
Created At
string format: date-time
updated_at
required
Updated At
string format: date-time
needs_review
required
Needs Review
boolean
revision
required
Revision
integer
created_at
required
Created At
string format: date-time
updated_at
required
Updated At
string format: date-time
Example
{
"kind": "business",
"status": "active",
"people": [
{
"contact_points": [
{
"kind": "phone"
}
],
"policy": {
"channel": "voice",
"holds": [
{
"code": "do_not_contact"
}
]
}
}
],
"open_opportunities": [
{
"stage": "new"
}
],
"open_tasks": [
{
"kind": "follow_up",
"subject_type": "handoff",
"status": "open"
}
]
}

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": {}
}
]
}