Trusona Messages API
The Messages API from Trusona — 2 operation(s) for messages.
The Messages API from Trusona — 2 operation(s) for messages.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/trusona-messages-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: Verification Messages API
description: API to manage verifications, messages, checkers, devices, and risk scores.
contact:
name: API Support
url: https://trusona.com
email: support@trusona.com
version: 2.2.0
summary: 'Base URL: https://authcloud.trusona.net'
servers:
- url: https://authcloud.trusona.net
security:
- bearerAuth: []
tags:
- name: Messages
paths:
/api/v1/verifications/{verificationId}/messages:
get:
tags:
- Messages
summary: Get all messages for a verification
operationId: getMessages
parameters:
- name: verificationId
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: List of messages
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/VerificationMessage'
example:
- id: f2aafebd-8d41-4366-9ead-59e04931c3a8
status: DELIVERED
createdAt: 2026-05-05 18:00:00+00:00
channel: SMS
recipient: '+12025551234'
simSwapped: false
'404':
description: Messages not found
post:
tags:
- Messages
summary: Add a message to a verification
operationId: createMessage
parameters:
- name: verificationId
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/RequestedMessage'
- $ref: '#/components/schemas/RequestedCopyMessage'
- $ref: '#/components/schemas/RequestedEmailMessage'
- $ref: '#/components/schemas/RequestedSmsMessage'
- $ref: '#/components/schemas/RequestedTrustedSmsMessage'
required: true
responses:
'201':
description: Message added successfully
content:
'*/*':
schema:
$ref: '#/components/schemas/VerificationMessage'
example:
id: f2aafebd-8d41-4366-9ead-59e04931c3a8
status: DELIVERED
createdAt: 2026-05-05 18:00:00+00:00
channel: SMS
recipient: '+12025551234'
simSwapped: false
'400':
description: Bad request
'404':
description: Not found
'410':
description: Messages can no longer be added to this verification
'422':
description: Sim swap was detected for a TRUSTED_SMS
'429':
description: Quota limit has been reached
/api/v1/verifications/{verificationId}/messages/{verificationMessageId}:
get:
tags:
- Messages
summary: Get a verification's message by ID
operationId: getMessage
parameters:
- name: verificationId
in: path
required: true
schema:
type: string
format: uuid
- name: verificationMessageId
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: Message details
content:
'*/*':
schema:
$ref: '#/components/schemas/VerificationMessage'
'404':
description: Verification or message were not found
components:
schemas:
RequestedMessage:
type: object
discriminator:
propertyName: channel
properties:
channel:
type: string
enum:
- COPY
- SMS
- EMAIL
- TRUSTED_SMS
required:
- channel
RequestedTrustedSmsMessage:
allOf:
- $ref: '#/components/schemas/RequestedMessage'
- type: object
properties:
phoneNumber:
type: string
description: Phone number to send the trusted SMS to. Dashes, spaces, dots and parentheses are accepted, as is a missing leading +; the number is stored and returned in E.164 form. A number sent without a country code cannot be resolved and is rejected.
example: '+12025551234'
description: Send a trusted SMS with SIM swap detection to the provided phone number.
required:
- channel
RequestedSmsMessage:
allOf:
- $ref: '#/components/schemas/RequestedMessage'
- type: object
properties:
phoneNumber:
type: string
description: Phone number to send the SMS to. Dashes, spaces, dots and parentheses are accepted, as is a missing leading +; the number is stored and returned in E.164 form. A number sent without a country code cannot be resolved and is rejected.
example: '+12025551234'
description: Send an SMS message to the provided phone number.
required:
- channel
RequestedCopyMessage:
allOf:
- $ref: '#/components/schemas/RequestedMessage'
required:
- channel
RequestedEmailMessage:
allOf:
- $ref: '#/components/schemas/RequestedMessage'
- type: object
properties:
emailAddress:
type: string
format: email
description: Email address to send the message to.
example: user@example.com
minLength: 1
description: Send an email message to the provided email address.
required:
- channel
- emailAddress
VerificationMessage:
type: object
properties:
id:
type: string
format: uuid
readOnly: true
status:
type: string
readOnly: true
createdAt:
type: string
format: date-time
example: 2022-01-01 00:00:00+00:00
readOnly: true
channel:
type: string
enum:
- COPY
- SMS
- EMAIL
- TRUSTED_SMS
recipient:
type: string
simSwapped:
type: boolean
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT