Account Regulatory Data

Create or update regulatory data for a Canadian account.

Endpoint

POST https://sandbox-api.veem.com/veem/v1.2/account/{accountId}/regulatoryData

  • Produces: application/json

Path Parameters

NameTypeRequiredDescription
accountIdLongYesTarget account ID whose regulatory data will be created/updated.

Request Headers

❗️

Headers

There are 2 headers necessary for the use of this endpoint:

  • X-request-id: This is a number unique to the current API request, and follows the UUID format. Reusing this header without changing the value will result in a 409 (Conflict) status. An example X-request-id is as follows:

48855846-628d-4177-b071-80332a116f0a

  • Authorization: This header holds the partner bearer token required to use Veem's public API, and belongs to the partner account. Failure to use a valid bearer token will result in a 404 (Not Found) status. An example of a valid token is as follows:

Bearer c047594b-082c-4da1-be89-08fe3770f4b3

See Get Access Token section to generate your bearerToken


Request Body

Example

{
  "firstName": "Jhon",
  "lastName": "Doe",
  "occupation": "Manager",
  "extraInfo": {
    "address": {
      "countryCode": "CA",
      "street": "123 Main St",
      "city": "123123",
      "stateProvince": "ON",
      "postalCode": "K2E2E2"
    }
  },
  "dob": "10/02/2007"
}

Field Reference

All fields below are validated. Unless stated otherwise, they are mandatory.

FieldTypeRequiredNotes / ConstraintsExample
firstNameStringYesNon-empty."Jhon"
lastNameStringYesNon-empty."Doe"
middleNameStringNoOptional field."A"
occupationStringYesNon-empty."Manager"
dobLocalDate (MM/dd/yyyy)YesMust be a valid date formatted as MM/dd/yyyy. Min 18 years and Max 120 years."10/02/2007"
extraInfoObjectYesContainer for address.{...}
extraInfo.addressObjectYesCanadian address only.{...}
extraInfo.address.countryCodeCountryCodeYesMust be CA."CA"
extraInfo.address.streetStringYesNon-empty."123 Main St"
extraInfo.address.cityStringYesNon-empty."123123"
extraInfo.address.stateProvinceStringYesMust match a valid Canadian region code ( ON, QC, NS, NB, MB, BC, PE, SK, AB, NL, NT, YT, NU). Case-insensitive."ON"
extraInfo.address.postalCodeStringYesNon-empty."K2E2E2"

Validation summary

  • The caller must belong to the correct partner for the accountId.
  • The target accountId must be Canadian (CA).
  • Every field marked Yes above is mandatory; middleName is optional.
  • stateProvince must be one of the supported region codes for Canada.

Responses

200 OK

Returns account regulatory data in JSON.

Error Conditions (examples)

HTTPCode/Exception (server-side)When
400This account 'A' cannot be set by caller 'B'Caller is not the configured partner for the accountId.
400The country US is invalid. Only Canada-CA is valid.Account is not CA or countryCode in the payload is not CA.
400The following parameter(s) is(are) missing: [...].One or more required fields are missing/blank (message lists fields).
400The state/provice CT is not valid.stateProvince not in supported Canadian region codes.
400lastName contains unsupported characterslastName or any other field has an invalid character
400Customer must be at least 18 years oldThe DOB is invalid
403<head><title>403 Forbidden</title></head>The payload has a malformed or invalid character

cURL Example

curl -X POST "https://sandbox-api.veem.com/veem/v1.2/account/{accountId}/regulatoryData" \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "firstName": "Jhon",
    "lastName": "Doe",
    "occupation": "Manager",
    "extraInfo": {
      "address": {
        "countryCode": "CA",
        "street": "123 Main St",
        "city": "123123",
        "stateProvince": "ON",
        "postalCode": "K2E2E2"
      }
    },
    "dob": "10/02/2007"
  }'

Notes for Maintainers

  • Keep the Availability Notice at the top until November 12, 2025. Remove it on/after release.
  • If middleName must become mandatory, add it to the required-fields check in validation and update the table accordingly.
  • If enforcing a minimum age, document the rule under dob and update validation.