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

# The Verification object

A verification represents an identity verification request sent to an individual. It captures the individual’s details, delivery settings, and the current status of the request — from the moment it is created through to completion, cancellation, or purge.

Verifications are always created from a specific account, using the `account_id` property. If the account is assigned to a [group](/api-reference/groups/group-object), the verification will automatically inherit that group. This can be overridden by supplying a `group_id` directly.

Identity verification must be enabled on your organisation before you can create verification requests.

### Verification statuses

The `status` property indicates the current state of the verification. Valid values include:

* `sent` – The verification has been created and the individual is eligible to complete it.
* `completed` – The individual has submitted their identity documents and the request is finished.
* `cancelled` – The verification was cancelled before completion. The individual can no longer access it.

### AML & CTF screening

Set `screening` to `true` to include [AML & CTF screening checks](/documentation/identity-verification/aml-ctf-screening-checks) when the individual completes the verification. Screening compares the individual’s identity against sanctions and watchlists, politically exposed persons, adverse media, and other risk lists.

`screening` defaults to `false`. When enabled, a screening report is available from the [Retrieve reports](/api-reference/verifications/retrieve-reports) endpoint once the check has completed.

`biometrics` can be enabled independently of screening. When `true`, the individual must capture a live selfie that matches their identity document.

### Muted verifications

Setting `muted` to `true` disables all automatic correspondence from Annature to the individual.

This is commonly used when you want to control delivery of the verification link yourself. Muted verifications must still have an email address.

Verification tokens for muted individuals can be generated via the [Retrieve a verification token](/api-reference/verifications/retrieve-verification-token) endpoint.

### Sharing and group visibility

Verification visibility is controlled by the sender’s group membership and the `shared` property.

When a verification is assigned to a [group](/api-reference/groups/group-object) and marked as `shared`, other accounts in that group can view and manage it. A verification cannot be shared unless it belongs to a group.

Default sharing behaviour or forced sharing rules can be configured at the account level via the Annature dashboard.

## Attributes

<ParamField path="id" type="string">
  The unique identifier for the verification.
</ParamField>

<ParamField path="name" type="string(250)">
  The full name of the individual being verified.
</ParamField>

<ParamField path="email" type="string(250)">
  The individual’s email address, used for identification and correspondence.
</ParamField>

<ParamField path="mobile" type="string(100)">
  The individual’s mobile number, in E.164 format. Used to send an SMS with a link to open the verification.
</ParamField>

<ParamField path="mobile_otp" type="string(100)">
  The mobile number used for SMS-based two-factor authentication, in E.164 format.

  When supplied, Annature will send a one-time code (OTP) that must be entered before the individual can access the verification.
</ParamField>

<ParamField path="message" type="string(1000)">
  The message body shown in the verification email. Supports placeholders such as `{{name}}` and `{{sender_business}}`.

  See the full list of [verification message bindings](https://annature.productlane.com/docs/identity-verification-2-0/verification-message-bindings).
</ParamField>

<ParamField path="message_sms" type="string(1000)">
  The message body sent via SMS. Supports the same placeholders as `message`, plus `{{token}}`, which is replaced with the verification link at send time.

  `{{token}}` is optional. If it is omitted, the SMS will not include a start link and the individual will need to open the verification from their email instead.

  See the full list of [verification message bindings](https://annature.productlane.com/docs/identity-verification-2-0/verification-message-bindings).
</ParamField>

<ParamField path="status" type="string">
  Read-only string representing the verification’s current status.

  Possible values: `sent`, `completed`, `cancelled`.
</ParamField>

<ParamField path="account_id" type="string">
  The unique identifier of the account that created the verification.
</ParamField>

<ParamField path="group_id" type="string">
  The unique identifier of the [group](/api-reference/groups/group-object) this verification is assigned to.

  If `shared` is `true`, other accounts in this group can view and manage the verification.
</ParamField>

<ParamField path="shared" type="boolean">
  Indicates whether the verification is shared with other accounts in the same group as the sender.
</ParamField>

<ParamField path="warning" type="string">
  Present when the individual’s identity documents could not be automatically verified and require manual review. This is a passthrough of [Stripe’s Identity error codes](https://docs.stripe.com/identity/verification-checks?type=selfie#document-failure).
</ParamField>

<ParamField path="muted" type="boolean">
  If `true`, Annature will not send any emails or SMS to the individual.
</ParamField>

<ParamField path="screening" type="boolean">
  Indicates whether AML & CTF screening checks are included on this verification.
</ParamField>

<ParamField path="biometrics" type="boolean">
  Indicates whether the individual must capture a live selfie that matches their identity document.
</ParamField>

<ParamField path="created" type="string">
  The ISO 8601 timestamp for when the verification was created.
</ParamField>

<ParamField path="cancelled" type="string">
  The ISO 8601 timestamp for when the verification was cancelled. `null` if the verification has not been cancelled.
</ParamField>

<ParamField path="completed" type="string">
  The ISO 8601 timestamp for when the verification was completed. `null` if the verification has not been completed.
</ParamField>

<ParamField path="purging" type="string">
  The ISO 8601 timestamp for when identity documents and PII stored with third parties are scheduled to be purged, based on your organisation’s data retention settings. `null` if no purge is scheduled.
</ParamField>

<ParamField path="purged" type="string">
  The ISO 8601 timestamp for when identity documents and PII stored with third parties were purged. `null` if the verification has not been purged.
</ParamField>

<ParamField path="metadata" type="object">
  A set of key–value pairs that can be attached to the verification.

  Use this to store custom metadata in a structured format.
</ParamField>

<RequestExample>
  ```bash Endpoints theme={null}
  GET /v2/verifications
  GET /v2/verifications/:id
  GET /v2/verifications/:id/reports
  GET /v2/verifications/:id/token
  POST /v2/verifications
  POST /v2/verifications/:id/resend
  POST /v2/verifications/:id/cancel
  POST /v2/verifications/:id/purge
  PUT /v2/verifications/:id
  ```
</RequestExample>

<ResponseExample>
  ```json Verification Object theme={null}
  {
    "id": "9d2e4b8c1a7f53e06c4b9d2a8e1f0c57",
    "name": "Ted Annature",
    "email": "ted@annature.com.au",
    "mobile": "+61422000000",
    "mobile_otp": "+61422000000",
    "message": "Lorem ipsum dolor sit amet.",
    "message_sms": "Lorem ipsum dolor sit amet: {{token}}",
    "status": "completed",
    "account_id": "c64ce66b70b21c03bfd5dfa0ab14b730",
    "group_id": "a5a885caee6286a54ad7bbd4ab5400e9",
    "shared": true,
    "warning": "document_expired",
    "muted": false,
    "screening": true,
    "biometrics": true,
    "created": "2026-08-24T00:00:00Z",
    "cancelled": "2026-08-24T00:00:00Z",
    "completed": "2026-08-24T00:00:00Z",
    "purging": "2026-08-24T00:00:00Z",
    "purged": "2026-08-24T00:00:00Z",
    "metadata": {
      "customer_id": "12345"
    }
  }
  ```
</ResponseExample>
