EZ Texting Message Reports API
The Message Reports API from EZ Texting — 4 operation(s) for message reports.
The Message Reports API from EZ Texting — 4 operation(s) for message reports.
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/eztexting-com:eztexting-com-message-reports-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a 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: 3.2.0
info:
title: EzTexting Message Reports API
description: EzTexting API
termsOfService: https://www.eztexting.com/terms
contact:
email: support@eztexting.com
version: '1.0'
servers:
- url: a.eztexting.com
security:
- basic_auth:
- read
- write
- oauth_auth:
- read
- write
tags:
- name: Message Reports
paths:
/v1/message-reports/{id}:
get:
tags:
- Message Reports
summary: Get a Message Report
description: Get a message report by message id
operationId: get_4
parameters:
- name: id
in: path
description: Message id
required: true
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/MessageReport'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
'401':
description: Unauthorized
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
'404':
description: Not Found
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
'429':
description: Too Many Requests
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
/v1/message-reports/{id}/responses/delivery:
get:
tags:
- Message Reports
summary: List Message Report Delivery Responses
description: List message delivery responses by status
operationId: listResponsesDelivery
parameters:
- name: id
in: path
description: Message id
required: true
schema:
type: string
- name: page
in: query
description: Offset of a given page. The default is 0. See [pagination](https://eztexting.readme.io/docs/pagination) docs for more information.
required: false
schema:
type: integer
default: 0
example: 0
- name: size
in: query
description: The maximum number of records to return in a paged list response. The default is 20 and allowed values are 10, 20, 50, 100, 200
required: false
schema:
type: string
default: '20'
enum:
- '10'
- '20'
- '50'
- '100'
- '200'
example: 20
- name: sort
in: query
description: 'Sort field name and direction (asc or desc). Example: sort=created,desc'
required: false
schema:
type: string
- name: filters[status][eq]
in: query
description: 'Filter by response status: delivered, bounced, queued, not_sent'
required: true
schema:
type: string
enum:
- delivered
- bounced
- queued
- not_sent
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/PageResponseMessageReportResponse'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
'401':
description: Unauthorized
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
'404':
description: Not Found
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
'429':
description: Too Many Requests
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
/v1/message-reports/{id}/responses/engagement:
get:
tags:
- Message Reports
summary: List Message Report Engagement Responses
description: List message engagement responses by status
operationId: listResponsesEngagement
parameters:
- name: id
in: path
description: Message id
required: true
schema:
type: string
- name: page
in: query
description: Offset of a given page. The default is 0. See [pagination](https://eztexting.readme.io/docs/pagination) docs for more information.
required: false
schema:
type: integer
default: 0
example: 0
- name: size
in: query
description: The maximum number of records to return in a paged list response. The default is 20 and allowed values are 10, 20, 50, 100, 200
required: false
schema:
type: string
default: '20'
enum:
- '10'
- '20'
- '50'
- '100'
- '200'
example: 20
- name: sort
in: query
description: 'Sort field name and direction (asc or desc). Example: sort=created,desc'
required: false
schema:
type: string
- name: filters[status][eq]
in: query
description: 'Filter by response status: replied, opted_out, no_action'
required: true
schema:
type: string
enum:
- replied
- opted_out
- no_action
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/PageResponseMessageReportResponse'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
'401':
description: Unauthorized
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
'404':
description: Not Found
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
'429':
description: Too Many Requests
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
/v1/message-reports/{id}/responses/link:
get:
tags:
- Message Reports
summary: List Message Report Link Responses
description: List message link responses by status
operationId: listResponsesLink
parameters:
- name: id
in: path
description: Message id
required: true
schema:
type: string
- name: page
in: query
description: Offset of a given page. The default is 0. See [pagination](https://eztexting.readme.io/docs/pagination) docs for more information.
required: false
schema:
type: integer
default: 0
example: 0
- name: size
in: query
description: The maximum number of records to return in a paged list response. The default is 20 and allowed values are 10, 20, 50, 100, 200
required: false
schema:
type: string
default: '20'
enum:
- '10'
- '20'
- '50'
- '100'
- '200'
example: 20
- name: sort
in: query
description: 'Sort field name and direction (asc or desc). Example: sort=created,desc'
required: false
schema:
type: string
- name: filters[status][eq]
in: query
description: 'Filter by response status: clicked, not_clicked'
required: true
schema:
type: string
enum:
- clicked
- not_clicked
- name: filters[fullUrl][eq]
in: query
description: Filter by url-encoded full url
required: true
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/PageResponseMessageReportResponse'
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
'401':
description: Unauthorized
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
'404':
description: Not Found
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
'429':
description: Too Many Requests
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/Errors'
components:
schemas:
MessageReportResponse:
type: object
description: MessageReportResponse
properties:
phoneNumber:
type: string
description: Phone number
firstName:
type: string
description: First name
lastName:
type: string
description: Last name
lastDate:
type: string
format: date-time
description: Last date
Error:
type: object
properties:
code:
type: string
title:
type: string
message:
type: string
MessageReportLinkDetailed:
type: object
properties:
hits:
type: integer
format: int32
lastDate:
type: string
format: date-time
MessageReportItem:
type: object
properties:
label:
type: string
data:
type: integer
format: int32
percentage:
type: number
MessageReport:
type: object
description: MessageReport
properties:
delivery:
type: object
additionalProperties:
$ref: '#/components/schemas/MessageReportItem'
description: Message delivery report
engagement:
type: object
additionalProperties:
$ref: '#/components/schemas/MessageReportItem'
description: Message engagement report
links:
type: array
description: Message link report
items:
$ref: '#/components/schemas/MessageReportLink'
MessageReportLink:
type: object
properties:
longUrl:
type: string
shortUrl:
type: string
clicks:
type: integer
format: int32
clickRate:
type: integer
format: int32
total:
type: integer
format: int32
detailed:
type: array
items:
type: object
additionalProperties:
$ref: '#/components/schemas/MessageReportLinkDetailed'
Errors:
type: object
properties:
status:
type: integer
format: int32
title:
type: string
detail:
type: string
errors:
type: array
items:
$ref: '#/components/schemas/Error'
PageResponseMessageReportResponse:
type: object
description: Page
properties:
content:
type: array
description: The paged collection of elements
items:
$ref: '#/components/schemas/MessageReportResponse'
number:
type: integer
format: int32
description: The requested page number
example: 0
size:
type: integer
format: int32
description: The requested page size
example: 20
totalElements:
type: integer
format: int64
description: The total number of elements available
example: 100
totalPages:
type: integer
format: int32
description: The total number of pages available
example: 5
numberOfElements:
type: integer
format: int32
description: The number of elements in the current page
example: 20
securitySchemes:
basic_auth:
type: http
scheme: basic
oauth_auth:
type: oauth2
flows:
password:
tokenUrl: http://nova-app.stg0.cf.wtf/oauth_token/generate/swagger
scopes:
read: ''
write: ''
x-proxy-enabled: false
x-send-defaults: true
x-samples-languages:
- curl
- node
- ruby
- javascript
- python
- java
- swift
- kotlin
- go
- csharp
x-provenance:
method: searched
source: https://developers.eztexting.com/reference
harvested: '2026-11-07'
tool: harvest-readme-openapi.py
note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
assembled_from:
- https://developers.eztexting.com/reference/acquire-1.md
- https://developers.eztexting.com/reference/acquire_1-1.md
- https://developers.eztexting.com/reference/archive-1.md
- https://developers.eztexting.com/reference/blockoutboundtexts-1.md
- https://developers.eztexting.com/reference/check-1.md
- https://developers.eztexting.com/reference/contactsadd-1.md
- https://developers.eztexting.com/reference/contactsremove-1.md
- https://developers.eztexting.com/reference/create-1.md
- https://developers.eztexting.com/reference/create_1-1.md
- https://developers.eztexting.com/reference/create_2-1.md
- https://developers.eztexting.com/reference/create_3-1.md
- https://developers.eztexting.com/reference/create_4-1.md
- https://developers.eztexting.com/reference/create_5-1.md
- https://developers.eztexting.com/reference/create_6-1.md
- https://developers.eztexting.com/reference/createorupdate-1.md
- https://developers.eztexting.com/reference/createorupdatebatch-1.md
- https://developers.eztexting.com/reference/creditbalance-1.md
- https://developers.eztexting.com/reference/delete-1.md
- https://developers.eztexting.com/reference/delete_1-1.md
- https://developers.eztexting.com/reference/delete_2-1.md
- https://developers.eztexting.com/reference/delete_3-1.md
- https://developers.eztexting.com/reference/delete_4-1.md
- https://developers.eztexting.com/reference/delete_5-1.md
- https://developers.eztexting.com/reference/delete_6-1.md
- https://developers.eztexting.com/reference/details-1.md
- https://developers.eztexting.com/reference/get-1.md
- https://developers.eztexting.com/reference/get_1-1.md
- https://developers.eztexting.com/reference/get_2-1.md
- https://developers.eztexting.com/reference/get_3-1.md
- https://developers.eztexting.com/reference/get_4-1.md
- https://developers.eztexting.com/reference/get_5-1.md
- https://developers.eztexting.com/reference/get_6-1.md
- https://developers.eztexting.com/reference/list-1.md
- https://developers.eztexting.com/reference/list_1-1.md
- https://developers.eztexting.com/reference/list_2-1.md
- https://developers.eztexting.com/reference/list_3-1.md
- https://developers.eztexting.com/reference/list_4-1.md
- https://developers.eztexting.com/reference/list_5-1.md
- https://developers.eztexting.com/reference/list_6-1.md
- https://developers.eztexting.com/reference/list_7-1.md
- https://developers.eztexting.com/reference/list_8-1.md
- https://developers.eztexting.com/reference/listcampaigns-1.md
- https://developers.eztexting.com/reference/listresponsesdelivery-1.md
- https://developers.eztexting.com/reference/listresponsesengagement-1.md
- https://developers.eztexting.com/reference/listresponseslink-1.md
- https://developers.eztexting.com/reference/messagelist-1.md
- https://developers.eztexting.com/reference/messageread-1.md
- https://developers.eztexting.com/reference/messageunread-1.md
- https://developers.eztexting.com/reference/purchasecredits-1.md
- https://developers.eztexting.com/reference/refresh-1.md
- https://developers.eztexting.com/reference/release-1.md
- https://developers.eztexting.com/reference/restore-1.md
- https://developers.eztexting.com/reference/revoke-1.md
- https://developers.eztexting.com/reference/update-1.md
- https://developers.eztexting.com/reference/update_1-1.md
- https://developers.eztexting.com/reference/update_2-1.md
- https://developers.eztexting.com/reference/updatesettings-1.md
merge:
pages: 57
deduped: 253
conflicts_kept_first: 0