Skip to content

BNDRY API (v1alpha)

API for the BNDRY platform

Download OpenAPI description
Overview
License

MIT License

Languages
Servers
Mock server

https://docs.bndry.net/_mock/apis/openapi/

BNDRY API

https://api.bndry.app/

Operations
Operations

Entity Risk Rating

Service for managing risk rating jobs for individual entities.

Operations

Individual Entity Verification

Service for managing individual entity verification jobs.

Operations

Onboard Individual Entity

Service for managing individual entity onboarding jobs.

Operations

Retrieve an onboard individual entity job

Request

Retrieves details about a specific onboard individual entity job.

Security
oauth2_client_credentials or oauth2_authorization_code
Path
entitystringrequired

The entity id.

onboardIndividualEntityJobstringrequired

The onboardIndividualEntityJob id.

curl -i -X GET \
  'https://docs.bndry.net/_mock/apis/openapi/v1alpha/entities/{entity}/onboardIndividualEntityJobs/{onboardIndividualEntityJob}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Success

Bodyapplication/json
namestring(name)

(IDENTIFIER) Output only. The resource name of the job. Format: entities/-/onboardIndividualEntityJobs/{onboard_individual_entity_job} correct_name_format // name must follow format 'entities/-/onboardIndividualEntityJobs/*' string.example = ["entities/-/onboardIndividualEntityJobs/mfs-onboard-job-2024-0127-kycind-743891"]

formDefinitionstring(form_definition)required

Required. The resource name of the form definition to use for data collection. Format: formDefinitions/{form_definition} correct_form_definition_format // form_definition must start with 'formDefinitions/' string.example = ["formDefinitions/mfs-individual-kyc-form-v2.1"]

jsonataExpressionstring(byte)(jsonata_expression)non-emptyrequired

Required. JSONata expression to transform form response into IndividualEntity. This must be base64-encoded when sent in JSON requests.

webhookUristring(uri)(webhook_uri)required

Required. Webhook target URI for notifications. string.example = ["https://api.example.com/webhooks/onboarding/individual/entity-job-status"] string.uri = true // value must be a valid URI string.uri_empty = true // value is empty, which is not a valid URI

createTimestring(date-time)(google.protobuf.Timestamp)read-only
updateTimestring(date-time)(google.protobuf.Timestamp)read-only
Response
application/json
{ "name": "entities/-/onboardIndividualEntityJobs/mfs-onboard-job-2024-0127-kycind-743891", "formDefinition": "formDefinitions/mfs-individual-kyc-form-v2.1", "jsonataExpression": "{\n \"legal_name\": {\n \"given_name\": $$.form_data.personal_info.first_name,\n \"family_name\": $$.form_data.personal_info.last_name\n },\n \"date_of_birth\": $$.form_data.personal_info.dob,\n \"addresses\": [{\n \"type\": \"RESIDENTIAL\",\n \"street_address\": $$.form_data.address.street,\n \"city\": $$.form_data.address.city,\n \"postal_code\": $$.form_data.address.zip\n }],\n \"tax_identification\": {\n \"tax_id_number\": $$.form_data.tax_info.ssn,\n \"tax_id_type\": \"US_SSN\"\n }\n}", "webhookUri": "https://api.example.com/webhooks/onboarding/individual/entity-job-status", "createTime": "2023-01-15T01:30:15.01Z", "updateTime": "2023-01-15T01:30:15.01Z" }

List onboard individual entity jobs

Request

Lists onboard individual entity jobs for a specific entity.

Security
oauth2_client_credentials or oauth2_authorization_code
Path
entitystringrequired

The entity id.

Query
pageSizeinteger(int32)(page_size)

Optional. The maximum number of jobs to return. The service may return fewer than this value. If unspecified, at most 10 jobs will be returned. The maximum value is 100; values above 100 will be coerced to 100.

pageTokenstring(page_token)

Optional. A page token, received from a previous ListOnboardIndividualEntityJobs call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListOnboardIndividualEntityJobs must match the call that provided the page token.

skipinteger(int32)(skip)>= 0

Optional. The number of jobs to skip before starting to collect the result set.

curl -i -X GET \
  'https://docs.bndry.net/_mock/apis/openapi/v1alpha/entities/{entity}/onboardIndividualEntityJobs?pageSize=25&pageToken=ChAIAhABGAEiAggC&skip=0' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Success

Bodyapplication/json
onboardIndividualEntityJobsArray of objects(onboard_individual_entity_jobs)

The list of onboard individual entity jobs.

nextPageTokenstring(next_page_token)

A token to retrieve the next page of results, or empty if there are no more results in the list. string.example = ["ChAIAhABGAEiAggD"]

totalSizeinteger(int32)(total_size)

The total number of jobs matching the request. int32.example = [47]

Response
application/json
{ "onboardIndividualEntityJobs": [ {} ], "nextPageToken": "ChAIAhABGAEiAggD", "totalSize": 47 }

Create an onboard individual entity job

Request

Creates a new onboard individual entity job.

Security
oauth2_client_credentials or oauth2_authorization_code
Path
entitystringrequired

The entity id.

Query
onboardIndividualEntityJobIdstring(onboard_individual_entity_job_id)[ 4 .. 63 ] charactersrequired

REQUIRED. The ID to use for the job, which will become the final component of the job's resource name. This value should be 4-63 characters, and valid characters are /[a-z][0-9]-/.

Bodyapplication/json

Required. The onboard individual entity job to create.

namestring(name)

(IDENTIFIER) Output only. The resource name of the job. Format: entities/-/onboardIndividualEntityJobs/{onboard_individual_entity_job} correct_name_format // name must follow format 'entities/-/onboardIndividualEntityJobs/*' string.example = ["entities/-/onboardIndividualEntityJobs/mfs-onboard-job-2024-0127-kycind-743891"]

formDefinitionstring(form_definition)required

Required. The resource name of the form definition to use for data collection. Format: formDefinitions/{form_definition} correct_form_definition_format // form_definition must start with 'formDefinitions/' string.example = ["formDefinitions/mfs-individual-kyc-form-v2.1"]

jsonataExpressionstring(byte)(jsonata_expression)non-emptyrequired

Required. JSONata expression to transform form response into IndividualEntity. This must be base64-encoded when sent in JSON requests.

webhookUristring(uri)(webhook_uri)required

Required. Webhook target URI for notifications. string.example = ["https://api.example.com/webhooks/onboarding/individual/entity-job-status"] string.uri = true // value must be a valid URI string.uri_empty = true // value is empty, which is not a valid URI

curl -i -X POST \
  'https://docs.bndry.net/_mock/apis/openapi/v1alpha/entities/{entity}/onboardIndividualEntityJobs?onboardIndividualEntityJobId=kyc-individual-mfs-001' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "entities/-/onboardIndividualEntityJobs/mfs-onboard-job-2024-0127-kycind-743891",
    "formDefinition": "formDefinitions/mfs-individual-kyc-form-v2.1",
    "jsonataExpression": "{\n  \"legal_name\": {\n    \"given_name\": $$.form_data.personal_info.first_name,\n    \"family_name\": $$.form_data.personal_info.last_name\n  },\n  \"date_of_birth\": $$.form_data.personal_info.dob,\n  \"addresses\": [{\n    \"type\": \"RESIDENTIAL\",\n    \"street_address\": $$.form_data.address.street,\n    \"city\": $$.form_data.address.city,\n    \"postal_code\": $$.form_data.address.zip\n  }],\n  \"tax_identification\": {\n    \"tax_id_number\": $$.form_data.tax_info.ssn,\n    \"tax_id_type\": \"US_SSN\"\n  }\n}",
    "webhookUri": "https://api.example.com/webhooks/onboarding/individual/entity-job-status",
    "createTime": "2023-01-15T01:30:15.01Z",
    "updateTime": "2023-01-15T01:30:15.01Z"
  }'

Responses

Success

Bodyapplication/json
namestring(name)

(IDENTIFIER) Output only. The resource name of the job. Format: entities/-/onboardIndividualEntityJobs/{onboard_individual_entity_job} correct_name_format // name must follow format 'entities/-/onboardIndividualEntityJobs/*' string.example = ["entities/-/onboardIndividualEntityJobs/mfs-onboard-job-2024-0127-kycind-743891"]

formDefinitionstring(form_definition)required

Required. The resource name of the form definition to use for data collection. Format: formDefinitions/{form_definition} correct_form_definition_format // form_definition must start with 'formDefinitions/' string.example = ["formDefinitions/mfs-individual-kyc-form-v2.1"]

jsonataExpressionstring(byte)(jsonata_expression)non-emptyrequired

Required. JSONata expression to transform form response into IndividualEntity. This must be base64-encoded when sent in JSON requests.

webhookUristring(uri)(webhook_uri)required

Required. Webhook target URI for notifications. string.example = ["https://api.example.com/webhooks/onboarding/individual/entity-job-status"] string.uri = true // value must be a valid URI string.uri_empty = true // value is empty, which is not a valid URI

createTimestring(date-time)(google.protobuf.Timestamp)read-only
updateTimestring(date-time)(google.protobuf.Timestamp)read-only
Response
application/json
{ "name": "entities/-/onboardIndividualEntityJobs/mfs-onboard-job-2024-0127-kycind-743891", "formDefinition": "formDefinitions/mfs-individual-kyc-form-v2.1", "jsonataExpression": "{\n \"legal_name\": {\n \"given_name\": $$.form_data.personal_info.first_name,\n \"family_name\": $$.form_data.personal_info.last_name\n },\n \"date_of_birth\": $$.form_data.personal_info.dob,\n \"addresses\": [{\n \"type\": \"RESIDENTIAL\",\n \"street_address\": $$.form_data.address.street,\n \"city\": $$.form_data.address.city,\n \"postal_code\": $$.form_data.address.zip\n }],\n \"tax_identification\": {\n \"tax_id_number\": $$.form_data.tax_info.ssn,\n \"tax_id_type\": \"US_SSN\"\n }\n}", "webhookUri": "https://api.example.com/webhooks/onboarding/individual/entity-job-status", "createTime": "2023-01-15T01:30:15.01Z", "updateTime": "2023-01-15T01:30:15.01Z" }

Run an onboard individual entity job

Request

Runs an onboard individual entity job.

Security
oauth2_client_credentials or oauth2_authorization_code
Path
entitystringrequired

The entity id.

onboardIndividualEntityJobstringrequired

The onboardIndividualEntityJob id.

Bodyapplication/jsonrequired
redirectUristring(uri)(redirect_uri)required

The final redirect URI where the user should be sent after onboarding is complete. string.example = ["https://app.example.com/kyc/complete"] string.uri = true // value must be a valid URI string.uri_empty = true // value is empty, which is not a valid URI

entityAnnotationsobject(entity_annotations)

(OPTIONAL) Optional. Arbitrary annotations to be applied to the entity being created.

curl -i -X POST \
  'https://docs.bndry.net/_mock/apis/openapi/v1alpha/entities/{entity}/onboardIndividualEntityJobs/{onboardIndividualEntityJob}:run' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "redirectUri": "https://app.example.com/kyc/complete",
    "entityAnnotations": {
      "property1": "string",
      "property2": "string"
    }
  }'

Responses

Success

Bodyapplication/json
One of:

This resource represents a long-running operation that is the result of a network API call.

namestring(name)

The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should be a resource name ending with operations/{unique_id}.

metadataobject(google.protobuf.Any)
doneboolean(done)

If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.

errorobject(google.rpc.Status)required
error.​codeinteger(int32)(code)

The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].

error.​messagestring(message)

A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.

error.​detailsArray of objects(details)

A list of messages that carry the error details. There is a common set of message types for APIs to use.

Response
application/json
{ "name": "string", "metadata": { "type": "string", "value": "string" }, "done": true, "error": { "code": 0, "message": "string", "details": [] } }

Request

Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.

Security
oauth2_client_credentials or oauth2_authorization_code
Path
entitystringrequired

The entity id.

onboardIndividualEntityJobstringrequired

The onboardIndividualEntityJob id.

operationstringrequired

The operation id.

curl -i -X GET \
  'https://docs.bndry.net/_mock/apis/openapi/v1alpha/entities/{entity}/onboardIndividualEntityJobs/{onboardIndividualEntityJob}/operations/{operation}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Success

Bodyapplication/json
One of:

This resource represents a long-running operation that is the result of a network API call.

namestring(name)

The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should be a resource name ending with operations/{unique_id}.

metadataobject(google.protobuf.Any)
doneboolean(done)

If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.

errorobject(google.rpc.Status)required
error.​codeinteger(int32)(code)

The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].

error.​messagestring(message)

A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.

error.​detailsArray of objects(details)

A list of messages that carry the error details. There is a common set of message types for APIs to use.

Response
application/json
{ "name": "string", "metadata": { "type": "string", "value": "string" }, "done": true, "error": { "code": 0, "message": "string", "details": [] } }

Entity PEP Sanctions Check

Service for managing PEP and sanctions screening jobs for individual entities.

Operations