Clients
Create One Client Wallets
Creates a new client linked to this vault and creates new wallets for each of the integrated blockchains. Clients represent external entities in segregated and consolidated vaults - they are identified by an externalId (your system's ID) and are used to separate funds and transactions by client in RoxCustody.
Body Parameters
BODY
{
"id": "client123"
}{
"id": "client123"
}Responses
201
Client Created Successfully
201
201 RESPONSE
{
"message": "Client created successfully.",
"client": {
"externalId": "client123",
"id": 4,
"createdAt": "20 August, 2025 11:18:53",
"updatedAt": "20 August, 2025 11:18:53"
},
"status": 201
}{
"message": "Client created successfully.",
"client": {
"externalId": "client123",
"id": 4,
"createdAt": "20 August, 2025 11:18:53",
"updatedAt": "20 August, 2025 11:18:53"
},
"status": 201
}404
Vault Not Found
404
404 RESPONSE
{
"status": 404,
"message": "Vault not found, or vault type is not allowed for creating clients"
}{
"status": 404,
"message": "Vault not found, or vault type is not allowed for creating clients"
}422
Client ID Already Exists
422
422 RESPONSE
{
"status": 422,
"message": "UnprocessableEntityException",
"errors": {
"clients": [
{
"id": 1,
"externalId": "client"
}
]
},
"code": "E50001"
}{
"status": 422,
"message": "UnprocessableEntityException",
"errors": {
"clients": [
{
"id": 1,
"externalId": "client"
}
]
},
"code": "E50001"
}422
Validation Error
422
422 RESPONSE
{
"status": 422,
"message": "id must be a string",
"errors": {
"message": "id must be a string",
"id": [
"id must be a string",
"The value must not exceed 255 characters",
"The id field is required."
]
},
"code": "E50001"
}{
"status": 422,
"message": "id must be a string",
"errors": {
"message": "id must be a string",
"id": [
"id must be a string",
"The value must not exceed 255 characters",
"The id field is required."
]
},
"code": "E50001"
}Create Clients Wallets
Creates multiple clients at once linked to this vault and creates new wallets for each of the integrated blockchains. Clients represent external entities in segregated and consolidated vaults - they are identified by an externalId (your system's ID) and are used to separate funds and transactions by client in RoxCustody.
Body Parameters
BODY
{
"ids": [
"client1",
"client2",
"client3",
"client4",
"client5"
]
}{
"ids": [
"client1",
"client2",
"client3",
"client4",
"client5"
]
}Responses
201
Clients Created Successfully
201
201 RESPONSE
{
"message": "Clients created successfully.",
"clients": [
{
"externalId": "client1",
"id": 9,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client2",
"id": 10,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client3",
"id": 11,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client4",
"id": 12,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client5",
"id": 13,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
}
],
"status": 201
}{
"message": "Clients created successfully.",
"clients": [
{
"externalId": "client1",
"id": 9,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client2",
"id": 10,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client3",
"id": 11,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client4",
"id": 12,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
},
{
"externalId": "client5",
"id": 13,
"createdAt": "20 August, 2025 11:51:20",
"updatedAt": "20 August, 2025 11:51:20"
}
],
"status": 201
}422
Some Client IDs Already Exist
422
422 RESPONSE
{
"status": 422,
"message": "UnprocessableEntityException",
"errors": {
"clients": [
{
"id": 1,
"externalId": "client1"
},
{
"id": 2,
"externalId": "client2"
},
{
"id": 3,
"externalId": "client3"
}
]
},
"code": "E50001"
}{
"status": 422,
"message": "UnprocessableEntityException",
"errors": {
"clients": [
{
"id": 1,
"externalId": "client1"
},
{
"id": 2,
"externalId": "client2"
},
{
"id": 3,
"externalId": "client3"
}
]
},
"code": "E50001"
}404
Vault Not Found
404
404 RESPONSE
{
"status": 404,
"message": "Vault not found, or vault type is not allowed for creating clients"
}{
"status": 404,
"message": "Vault not found, or vault type is not allowed for creating clients"
}422
Validation Error
422
422 RESPONSE
{
"status": 422,
"message": "Each value must not exceed 255 characters",
"errors": {
"message": "Each value must not exceed 255 characters",
"ids": [
"Each value must not exceed 255 characters",
"each value in ids must be a string",
"The ids field is required.",
"ids must not be empty",
"ids must be an array"
]
},
"code": "E50001"
}{
"status": 422,
"message": "Each value must not exceed 255 characters",
"errors": {
"message": "Each value must not exceed 255 characters",
"ids": [
"Each value must not exceed 255 characters",
"each value in ids must be a string",
"The ids field is required.",
"ids must not be empty",
"ids must be an array"
]
},
"code": "E50001"
}