> ## Documentation Index
> Fetch the complete documentation index at: https://docs.trusset.org/llms.txt
> Use this file to discover all available pages before exploring further.

# List Verification Profiles

> The verification levels configured for your instance

Returns the verification profiles your instance runs. A profile ties a verification level to the investor type it results in and the fields it requires.

That lets a hosted [ID Link](/endpoints/customers/create-id-link) be issued against a named level rather than an ad-hoc set of requirements.

## Response Fields

<ResponseField name="data" type="array">
  <Expandable>
    <ResponseField name="id" type="string">Profile ID.</ResponseField>
    <ResponseField name="key" type="string">Stable key for the profile. This is what other endpoints take.</ResponseField>
    <ResponseField name="name" type="string">Display name.</ResponseField>
    <ResponseField name="description" type="string">What the level covers, or `null`.</ResponseField>
    <ResponseField name="onChainInvestorType" type="string">The investor classification a customer receives on passing: `RETAIL`, `PROFESSIONAL` or `INSTITUTIONAL`.</ResponseField>
    <ResponseField name="sumsubLevelName" type="string">The provider-side level this maps to.</ResponseField>
    <ResponseField name="requiredFields" type="array">Fields the level collects.</ResponseField>
    <ResponseField name="isPreset" type="boolean">Whether this is a Trusset preset rather than one your instance defined.</ResponseField>
    <ResponseField name="enabled" type="boolean">Whether it can currently be used.</ResponseField>
    <ResponseField name="createdAt" type="string">ISO 8601.</ResponseField>
    <ResponseField name="updatedAt" type="string">ISO 8601.</ResponseField>
  </Expandable>
</ResponseField>

<Note>
  `data` is the array itself, not an object wrapping one. Profiles are created and edited in the Issuer Portal; this surface reads them.
</Note>

<RequestExample>
  ```bash cURL theme={null}
  curl "https://api.trusset.org/customers/api/verification-profiles" \
    -H "X-API-Key: trusset_your_key_here"
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "success": true,
    "data": [
      {
        "id": "vp_001",
        "key": "professional",
        "name": "Professional investor",
        "description": "MiFID II professional client onboarding",
        "onChainInvestorType": "PROFESSIONAL",
        "sumsubLevelName": "professional-kyc",
        "requiredFields": ["firstName", "lastName", "dateOfBirth", "nationality", "documentNumber"],
        "isPreset": true,
        "enabled": true,
        "createdAt": "2026-06-01T09:00:00.000Z",
        "updatedAt": "2026-08-14T10:12:00.000Z"
      }
    ]
  }
  ```
</ResponseExample>

## Error Codes

| Code                   | HTTP  | Cause                          |
| ---------------------- | ----- | ------------------------------ |
| `LIST_PROFILES_FAILED` | `500` | The profiles could not be read |
