Skip to main content
POST
/
customers
/
migrate
Migrate customer from Dakota that has already done the initial Persona Inquiry
curl --request POST \
  --url https://api.platform.dakota.xyz/customers/migrate \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --header 'x-idempotency-key: <x-idempotency-key>' \
  --data '
{
  "customer_type": "business",
  "persona_case_id": "case_ie1Co7A2szWNJxogesfQXUaBBspM",
  "external_id": "legacy_customer_123",
  "bvnk_customer_id": "bvnk_customer_123456"
}
'
{
  "id": "1NFHrqBHb3cTfLVkFSGmHZqdDPi",
  "name": "Acme Corporation",
  "customer_type": "company",
  "persona_case_id": "case_ie1Co7A2szWNJxogesfQXUaBBspM",
  "created_at": 1703097600,
  "updated_at": 1703097600,
  "onboarding_result": {
    "successful_providers": [
      {
        "provider_id": "bvnk",
        "provider_customer_id": "bvnk_customer_123456"
      }
    ],
    "failed_providers": [
      {
        "provider_id": "bvnk",
        "error": "Customer validation failed: missing required documentation"
      }
    ],
    "has_failures": false
  },
  "external_id": "legacy_customer_123",
  "bvnk_customer_id": "bvnk_customer_123456"
}

Authorizations

x-api-key
string
header
required

Headers

x-idempotency-key
string<uuid>
required

Unique key to ensure request idempotency. If the same key is used within a certain time window, the original response will be returned instead of executing the request again.

Body

application/json

Request to migrate a customer from an existing Persona inquiry, optionally linking existing BVNK customer data.

customer_type
enum<string>
required

Type of entity being created - either an individual person or a business/organization.

Available options:
individual,
business
Example:

"business"

persona_case_id
string
required

Existing Persona case ID for this customer

Minimum string length: 1
Example:

"case_ie1Co7A2szWNJxogesfQXUaBBspM"

external_id
string

Unique identifier for the customer in the client's system.

Example:

"legacy_customer_123"

bvnk_customer_id
string

Existing BVNK customer reference ID if the customer already exists in BVNK

Example:

"bvnk_customer_123456"

Response

Customer migrated successfully

Response returned when a customer migration is successfully completed

id
string
required

KSUID is a 27-character globally unique ID that combines a timestamp with a random component. Used for all entity identifiers in the Dakota platform.

Required string length: 27
Example:

"1NFHrqBHb3cTfLVkFSGmHZqdDPi"

name
string
required

Name of the customer

Example:

"Acme Corporation"

customer_type
enum<string>
required

Type of entity

Available options:
person,
company
Example:

"company"

persona_case_id
string
required

Linked Persona case ID

Example:

"case_ie1Co7A2szWNJxogesfQXUaBBspM"

created_at
integer<int64>
required

Unix timestamp when the customer was created

Example:

1703097600

updated_at
integer<int64>
required

Unix timestamp when the customer was last updated

Example:

1703097600

onboarding_result
object
required

Result of onboarding a customer to one or more providers

external_id
string

External identifier for the customer

Example:

"legacy_customer_123"

bvnk_customer_id
string

BVNK customer reference ID if provided or created during migration

Example:

"bvnk_customer_123456"