Sinch Verification API Start Verification API

Initiate a phone number verification.

Operations 1

POST /verifications Start a verification #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/sinch-verify-start-verification-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

sinch-verify-start-verification-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Sinch Verification Report Verification Start Verification API
  description: 'The Sinch Verification API (Sinch Verify) confirms that a user controls a mobile phone number, powering OTP, two-factor authentication (2FA), and anti-fraud sign-up flows. It supports four verification methods: SMS, flash call, phone call (callout), and data (seamless / silent). The flow is: start a verification, report the received code or caller ID, then read the pass/fail result. Status can also be queried by id, by number, or by a custom reference. Base URL is https://verification.api.sinch.com/verification/v1. Requests are server-to-server and authenticated with either an Application-signed request (HMAC-SHA256 over the request using your application key and secret) or HTTP Basic auth (recommended only for prototyping). Paths and methods below are grounded in the public Sinch developer documentation; request/response schemas are modeled and should be reconciled against the live API reference.'
  version: '1.0'
  contact:
    name: Sinch
    url: https://developers.sinch.com/docs/verification/
  x-modeled: true
servers:
- url: https://verification.api.sinch.com/verification/v1
  description: Sinch Verification API production
security:
- applicationSigned: []
- basicAuth: []
tags:
- name: Start Verification
  description: Initiate a phone number verification.
paths:
  /verifications:
    post:
      operationId: startVerification
      tags:
      - Start Verification
      summary: Start a verification
      description: Starts a verification using the chosen method (sms, flashcall, callout, or seamless). Provide the phone number as the identity. Sinch returns the template or CLI filter the client should observe. Used by the mobile and web Verification SDKs and callable directly from a backend.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StartVerificationRequest'
      responses:
        '200':
          description: Verification started.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StartVerificationResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  responses:
    Unauthorized:
      description: Authentication failed or was missing.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadRequest:
      description: The request was malformed.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    StartVerificationResponse:
      type: object
      properties:
        id:
          type: string
        method:
          type: string
          enum:
          - sms
          - flashcall
          - callout
          - seamless
        sms:
          type: object
          description: Present for SMS verifications; includes the template to match.
          properties:
            template:
              type: string
        flashCall:
          type: object
          description: Present for flash call verifications; includes the CLI filter.
          properties:
            cliFilter:
              type: string
            interceptionTimeout:
              type: integer
    StartVerificationRequest:
      type: object
      required:
      - identity
      - method
      properties:
        identity:
          $ref: '#/components/schemas/Identity'
        method:
          type: string
          enum:
          - sms
          - flashcall
          - callout
          - seamless
        reference:
          type: string
          description: Optional custom reference for tracking and later lookup.
        custom:
          type: string
          description: Optional custom string passed through to callbacks.
    Error:
      type: object
      properties:
        errorCode:
          type: integer
        message:
          type: string
        reference:
          type: string
    Identity:
      type: object
      properties:
        type:
          type: string
          example: number
        endpoint:
          type: string
          description: The phone number in E.164 format.
          example: '+15551234567'
  securitySchemes:
    applicationSigned:
      type: apiKey
      in: header
      name: Authorization
      description: Application-signed request. The Authorization header is "Application {application_key}:{signature}" where signature is a Base64-encoded HMAC-SHA256 of the canonicalized request (method, content type, Content-MD5, x-timestamp header, and path) using the Base64-decoded application secret. Recommended for production.
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic authentication using the application key as username and the application secret as password. Recommended for prototyping only.