curl --request POST \
--url https://api.enterprise.sandbox.uphold.com/core/kyb/associated-persons \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"type": "beneficial-owner",
"fullName": "Jane Smith",
"role": "CFO"
}
'
{
"associatedPerson": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"processes": {
"profile": {
"code": "profile",
"status": "pending",
"input": {
"type": "beneficial-owner",
"fullName": "John Doe",
"role": "CEO"
}
},
"identity": {
"code": "identity",
"status": "pending",
"type": "none"
},
"proofOfAddress": {
"code": "proof-of-address",
"status": "pending",
"type": "none"
}
},
"createdAt": "2024-01-01T00:00:00Z"
}
}
Associated persons
Create associated person
Create a new associated person for a business user.
POST
/
core
/
kyb
/
associated-persons
curl --request POST \
--url https://api.enterprise.sandbox.uphold.com/core/kyb/associated-persons \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"type": "beneficial-owner",
"fullName": "Jane Smith",
"role": "CFO"
}
'
{
"associatedPerson": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"processes": {
"profile": {
"code": "profile",
"status": "pending",
"input": {
"type": "beneficial-owner",
"fullName": "John Doe",
"role": "CEO"
}
},
"identity": {
"code": "identity",
"status": "pending",
"type": "none"
},
"proofOfAddress": {
"code": "proof-of-address",
"status": "pending",
"type": "none"
}
},
"createdAt": "2024-01-01T00:00:00Z"
}
}
This endpoint is currently available in Sandbox only. It is not yet available in Production.
id you use to complete their processes.
Types
type is the only required field, and it determines what the person represents:
beneficial-owner: An individual who ultimately owns or controls a share of the business. AcceptsownershipPercentage.authorized-signer: An individual authorized to act on behalf of the business. Does not acceptownershipPercentage.beneficial-owner-and-authorized-signer: An individual who is both. AcceptsownershipPercentage.
The type cannot be changed after creation. To correct it, delete the person and create them again.
Progressive creation
Every field other thantype is optional at creation, so you can register a person as soon as you know their role and fill in the rest later through Update associated person profile.Authorizations
OAuth 2.0 authentication.
Body
application/json
- Beneficial owner
- Authorized signer
- Beneficial owner and authorized signer
Allowed value:
"beneficial-owner"The full legal name.
Maximum string length:
200Pattern:
^\S+\s+\S+(\s+\S+)*$The person's role in the business (e.g., CFO, CEO).
Required string length:
1 - 140Pattern:
^\S.*\S$|^\S$The person's address of residency.
Show child attributes
Show child attributes
The date of birth.
The place of birth.
Show child attributes
Show child attributes
The legal identifiers.
Maximum array length:
20Show child attributes
Show child attributes
The ownership percentage for this beneficial owner.
Required range:
x <= 100Response
Associated person created successfully.
Show child attributes
Show child attributes
Was this page helpful?