Email on Acid Email Clients API
Manage email client lists and defaults for testing
Manage email client lists and defaults for testing
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/email-on-acid-email-clients-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: Email on Acid Authentication Email Clients API
description: 'REST API for automating email testing across 100+ email clients and devices, including email rendering previews, spam filter testing, seed list management, and accessibility checks. Now branded as Mailgun Inspect. Supports sandbox mode for development and test result storage for 90 days.
'
version: '5.0'
contact:
name: Email on Acid Support
url: https://www.emailonacid.com/contact/
license:
name: Proprietary
url: https://www.emailonacid.com/terms/
servers:
- url: https://api.emailonacid.com/v5
description: Email on Acid API v5
security:
- basicAuth: []
tags:
- name: Email Clients
description: Manage email client lists and defaults for testing
paths:
/email/clients:
get:
summary: Get available email clients
operationId: getEmailClients
tags:
- Email Clients
description: 'Retrieves a list of all available email clients for testing, filtered by the account''s plan eligibility.
'
responses:
'200':
description: Map of available email clients
content:
application/json:
schema:
$ref: '#/components/schemas/EmailClientsMap'
'401':
$ref: '#/components/responses/AccessDenied'
/email/clients/default:
get:
summary: Get default email clients
operationId: getDefaultEmailClients
tags:
- Email Clients
description: Retrieves the list of client IDs configured as defaults for email testing.
responses:
'200':
description: List of default client IDs
content:
application/json:
schema:
$ref: '#/components/schemas/ClientList'
'401':
$ref: '#/components/responses/AccessDenied'
put:
summary: Set default email clients
operationId: setDefaultEmailClients
tags:
- Email Clients
description: Updates the configured default clients used when no clients are specified in a test.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ClientList'
example:
clients:
- outlook16
- gmail_chr26_win
- iphone6p_9
responses:
'200':
description: Updated default clients with optional warnings for invalid IDs
content:
application/json:
schema:
$ref: '#/components/schemas/SetDefaultClientsResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/AccessDenied'
components:
responses:
BadRequest:
description: Invalid request parameters or JSON
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
example:
error:
name: InvalidJSON
message: Malformed JSON in request body
AccessDenied:
description: Authentication failure
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
example:
error:
name: AccessDenied
message: Invalid API credentials
schemas:
EmailClient:
type: object
properties:
id:
type: string
description: Unique client identifier usable in test creation
client:
type: string
description: Display name of the email client
os:
type: string
description: Operating system name
category:
type: string
enum:
- Application
- Mobile
- Web
description: Client classification
browser:
type: string
description: Browser name (if applicable)
rotate:
type: boolean
description: Whether device orientation change is supported
image_blocking:
type: boolean
description: Whether image blocking capability is supported
free:
type: boolean
description: Whether available on free tier tests
default:
type: boolean
description: Whether included in default client processing
ErrorResponse:
type: object
properties:
error:
type: object
properties:
name:
type: string
description: Error type identifier
enum:
- AccessDenied
- RateLimited
- InvalidJSON
- InvalidParameter
- InvalidTestID
- InvalidClient
- PermissionError
- TestLimitReached
message:
type: string
description: Human-readable error description
ClientList:
type: object
properties:
clients:
type: array
items:
type: string
description: Array of email client IDs
example:
- outlook16
- gmail_chr26_win
- iphone6p_9
EmailClientsMap:
type: object
description: Map of client ID to email client details
additionalProperties:
$ref: '#/components/schemas/EmailClient'
SetDefaultClientsResponse:
type: object
properties:
clients:
type: array
items:
type: string
description: Updated list of default client IDs
warnings:
type: array
items:
type: string
description: Invalid client IDs that were removed
securitySchemes:
basicAuth:
type: http
scheme: basic
description: 'HTTP Basic Authentication using `<api_key>:<account_password>` base64-encoded. Use "sandbox:sandbox" credentials for sandbox testing.
'