Skip to content

Accept the current version of one legal document

POST
/v1/agreements/accept
curl --request POST \
--url https://api.vocapable.com/v1/agreements/accept \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "agreement_kind": "msa", "version": "example", "content_sha256": "example", "signer_name": "example", "signer_title": "example", "signer_email": "example" }'
Media typeapplication/json
AgreementAcceptRequest

One click-through acceptance. The caller echoes the version and hash it was served; signer_ip and accepted_at are stamped by the API, never client input - the same posture as ConsentAttestation.

object
agreement_kind
required
Agreement Kind
string
Allowed values: msa telecom_addendum test_calls_addendum aup dpa production_services_order scrub_attestation api_source_attestation three_year_commitment_addendum cold_outreach_waiver
version
required
Version
string
>= 1 characters <= 100 characters
content_sha256
required
Content Sha256
string
/^[0-9a-f]{64}$/
signer_name
required
Signer Name
string
>= 1 characters <= 200 characters
signer_title
required
Signer Title
string
>= 1 characters <= 200 characters
signer_email
required
Signer Email
string
>= 3 characters <= 320 characters /^[^@\s]+@[^@\s]+\.[^@\s]+$/

Successful Response

Media typeapplication/json
AgreementAcceptance

A recorded acceptance, as the append-only ledger holds it.

object
id
required
Id
string
agreement_kind
required
Agreement Kind
string
Allowed values: msa telecom_addendum test_calls_addendum aup dpa production_services_order scrub_attestation api_source_attestation three_year_commitment_addendum cold_outreach_waiver
version
required
Version
string
content_sha256
required
Content Sha256
string
signer_name
required
Signer Name
string
signer_title
required
Signer Title
string
signer_email
required
Signer Email
string
signer_ip
Any of:
string
accepted_at
required
Accepted At
string format: date-time
Example
{
"agreement_kind": "msa"
}

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