Skip to content
vocapable.Docs

Save the registration form (owner)

PUT
/v1/workspace/texting/registration
curl --request PUT \
--url https://api.vocapable.com/v1/workspace/texting/registration \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "brand_type": "standard", "business": { "legal_name": "example", "business_type": "Corporation", "industry": "example", "ein": "example", "website_url": "example", "company_type": "private", "stock_exchange": "example", "stock_ticker": "example", "contact_first_name": "example", "contact_last_name": "example", "contact_email": "example", "contact_phone_e164": "example", "contact_title": "example", "contact_job_position": "Director", "otp_mobile_e164": "example", "address": { "street": "example", "street_secondary": "example", "city": "example", "region": "example", "postal_code": "example", "iso_country": "US" } }, "campaign": { "use_case": "example", "description": "example", "message_flow": "example", "samples": [ "example" ], "opt_in_message": "example", "opt_out_message": "example", "help_message": "example", "has_embedded_links": true, "has_embedded_phone": true, "privacy_policy_url": "example", "terms_and_conditions_url": "example" }, "phone_number_ids": [ "example" ], "expected_revision": 1 }'
Media typeapplication/json
WorkspaceA2pDraft

Create or replace the draft; refused once submitted.

object
brand_type
required
Brand Type
string
Allowed values: standard low_volume_standard sole_proprietor
business
required
WorkspaceA2pBusiness

What Trust Hub needs about the business and the person authorized to register it.

EIN brands (standard / low-volume standard) fill the business fields; a sole proprietor (no EIN) fills only their name, email, address and the mobile number that receives the one-time verification text.

object
legal_name
required
Legal Name
string
>= 1 characters <= 120 characters
business_type
Any of:
string
Allowed values: Corporation Limited Liability Corporation Partnership Co-operative Non-profit Corporation
industry
Any of:
string
<= 40 characters
ein
Any of:
string
/^\d{2}-\d{7}$/
website_url
Any of:
string
<= 300 characters
company_type
Any of:
string
Allowed values: private public non-profit government
stock_exchange
Any of:
string
<= 10 characters
stock_ticker
Any of:
string
<= 10 characters
contact_first_name
required
Contact First Name
string
>= 1 characters <= 60 characters
contact_last_name
required
Contact Last Name
string
>= 1 characters <= 60 characters
contact_email
required
Contact Email
string
>= 3 characters <= 200 characters
contact_phone_e164
required
Contact Phone E164
string
/^\+[1-9]\d{6,14}$/
contact_title
Any of:
string
<= 60 characters
contact_job_position
Any of:
string
Allowed values: Director GM VP CEO CFO General Counsel Other
otp_mobile_e164
Any of:
string
/^\+1\d{10}$/
address
required
WorkspaceA2pAddress
object
street
required
Street
string
>= 1 characters <= 120 characters
street_secondary
Any of:
string
<= 120 characters
city
required
City
string
>= 1 characters <= 80 characters
region
required
Region
string
/^[A-Z]{2}$/
postal_code
required
Postal Code
string
/^\d{5}(-\d{4})?$/
iso_country
Iso Country
string
default: US
Allowed values: US CA
campaign
required
WorkspaceA2pCampaign
object
use_case
required
Use Case
string
>= 2 characters <= 40 characters
description
required
Description
string
>= 40 characters <= 4096 characters
message_flow
required
Message Flow
string
>= 40 characters <= 2048 characters
samples
required
Samples
Array<string>
>= 2 items <= 5 items
opt_in_message
Any of:
string
>= 20 characters <= 320 characters
opt_out_message
Any of:
string
>= 20 characters <= 320 characters
help_message
Any of:
string
>= 20 characters <= 320 characters
has_embedded_links
required
Has Embedded Links
boolean
has_embedded_phone
required
Has Embedded Phone
boolean
privacy_policy_url
required
Privacy Policy Url
string
>= 8 characters <= 300 characters
terms_and_conditions_url
required
Terms And Conditions Url
string
>= 8 characters <= 300 characters
phone_number_ids
required
Phone Number Ids
Array<string>
>= 1 items <= 50 items
expected_revision
Any of:
integer
>= 1

Successful Response

Media typeapplication/json
WorkspaceA2pRegistration

Where business texting registration stands, in the owner’s words.

object
id
required
Any of:
string
telephony_account_id
required
Any of:
string
stage
required
Stage
string
Allowed values: draft submitting brand_review brand_verification campaign_review active rejected suspended
brand_type
required
Any of:
string
Allowed values: standard low_volume_standard sole_proprietor
headline
required
Headline
string
failed_artefact
required
Any of:
string
failure_reasons
required
Failure Reasons
Array<string>
last_error
required
Any of:
string
sending_enabled
required
Sending Enabled
boolean
manual_override
required
Manual Override
boolean
business
required
Business
object
key
additional properties
any
campaign
required
Campaign
object
key
additional properties
any
numbers
required
Numbers
Array<object>
WorkspaceA2pNumber
object
phone_number_id
required
Phone Number Id
string
phone_e164
required
Phone E164
string
registration
required
Registration
string
Allowed values: registry manual none
selected
required
Selected
boolean
use_cases
required
Use Cases
Array<object>
WorkspaceA2pUseCase
object
code
required
Code
string
label
required
Label
string
fees
required
Fees
Array<object>
WorkspaceA2pFee
object
item
required
Item
string
amount
required
Amount
string
fees_source
required
Fees Source
string
fees_note
required
Fees Note
string
can_edit
required
Can Edit
boolean
can_submit
required
Can Submit
boolean
can_resend_otp
required
Can Resend Otp
boolean
submitted_at
required
Any of:
string format: date-time
approved_at
required
Any of:
string format: date-time
last_checked_at
required
Any of:
string format: date-time
revision
required
Any of:
integer
Example
{
"stage": "draft",
"brand_type": "standard",
"numbers": [
{
"registration": "registry"
}
]
}

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