---
title: "Create an Email & Phone verification check"
method: POST
path: "/v1/checks/email-phone-verification"
tags: ["Email & Phone verification check"]
---

# Create an Email & Phone verification check

`POST /v1/checks/email-phone-verification`

## Request

- Base URL: `https://api.dotfile.com`
- URL: `https://api.dotfile.com/v1/checks/email-phone-verification`
- Auth: API key in header `X-DOTFILE-API-KEY`

Create an Email & Phone verification check. The check verifies the individual's email address and phone number, and returns the fraud and trust signals the vendor reports alongside them. Whichever of the two the individual has is sent; the check cannot be created when the individual has neither.

## Request body

- EmailPhoneVerificationCheckCreate
  - `individual_id` string, uuid, required
  - `settings` EmailPhoneVerificationCheckSettingsCreate
    - `vendor` 'gbg': Vendor to use for the verification. Currently only `gbg` is supported.
    - `automatic_approval` boolean
    - `automatic_rejection` boolean

## Response `201`

Email & Phone verification check has been created

**ℹ️ Click to see full payload**

- EmailPhoneVerificationCheck
  - `id` string, uuid, required
  - `individual_id` string, uuid, required
  - `is_internal` boolean, required
  - `status` 'in_progress' | 'need_review' | 'processing' | 'approved' | 'rejected' | 'expired', required: ℹ️ Check status `expired` is deprecated and will be removed Q1'25. It will be replaced with an expired flag.
  - `type` 'email_phone_verification', required
  - `subtype` string, nullable, required: Currently always null for `email_phone_verification` Check
  - `last_activity_at` string, date-time, required: Latest activity date Date time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)
  - `data` EmailPhoneVerificationCheckData, required
    - `result` 'approved' | 'rejected' | 'error', nullable, required
    - `settings` EmailPhoneVerificationCheckDataSettings, required
      - `vendor` 'gbg', required
      - `automatic_approval` boolean, required
      - `automatic_rejection` boolean, required
    - `vendor` EmailPhoneVerificationCheckDataVendor, required
      - `name` 'gbg', required
      - `country` string, alpha-2, required: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code (eg `FR`)
    - `ai` EmailPhoneVerificationCheckDataAi, required
      - `interpretation` object, nullable, required
    - `review` Review, required
      - `comment` string, nullable, required
      - `reviewed_at` string, date-time, nullable, required: Date time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)
      - `reviewer_type` 'user' | 'system' | 'api', nullable, required
      - `user` NestedUser, required
        - `id` string, uuid, required
        - `first_name` string, required
        - `last_name` string, required
        - `email` string, email, required
    - `signals` ContactSignals, required
      - `trust` ContactTrustSignal, required
        - `score` number, nullable, required
        - `band` string, nullable, required
        - `triggered_rules` ContactTrustRule[], required
          - `code` string, required
          - `description` string, required
      - `fraud_score` ContactFraudScoreSignal, required
        - `score` number, nullable, required
        - `band` string, nullable, required
        - `labels` string[], required
      - `email_verification` ContactEmailVerificationSignal, required
        - `risk_score` number, nullable, required
        - `risk_band` string, nullable, required
        - `risk_level` string, nullable, required
        - `email_first_seen` string, nullable, required
        - `domain_first_seen` string, nullable, required
        - `domain_country` string, nullable, required
        - `mailbox_missing` boolean, nullable, required
      - `email_validation` ContactEmailValidationSignal, required
        - `address_valid` boolean, nullable, required
        - `bounce_risk` string, nullable, required
      - `mobile_validation` ContactMobileValidationSignal, required
        - `number_valid` boolean, nullable, required
        - `line_type` string, nullable, required
        - `current_network` ContactMobileNetwork, required
          - `operator` string, nullable, required
          - `country` string, nullable, required
        - `original_network` ContactMobileNetwork, required
          - `operator` string, nullable, required
          - `country` string, nullable, required

## Other responses

- `400`: The request is either malformed or contain invalid parameters. - Make sure the body payload matches the expected schema - Limit reached. Contact us at support@dotfile.com to lift all limits.
- `404`: No Individual can be found.
- `422`: The individual has neither an email address nor a phone number, so there is nothing to verify.
- `502`: The verification provider could not be reached. The check has not been created and has not been billed, so the request can be retried.

## Changes

- **2026-11-03** `50cab516e856`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/dotfile/apis/api-specifications/changes/v1/checks/email-phone-verification/post.md)

---

[API](https://skmtc.dev/dotfile/apis/api-specifications.md) - [All operations](https://skmtc.dev/dotfile/apis/api-specifications/llms.txt) - [OpenAPI document](https://skmtc.dev/dotfile/apis/api-specifications/revisions/50cab516e856?raw)
