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.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/persistiq-do-not-contact-domains-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
openapi: 3.2.0
info:
title: PersistIQ Campaigns Do Not Contact Domains API
version: v1
description: The PersistIQ API is a REST API for the PersistIQ sales engagement platform. It exposes users, leads (prospects), lead statuses and fields, campaigns (including adding and removing leads), activity events, and Do Not Contact (DNC) domains. Authentication is a company-wide API key sent in the `x-api-key` request header. Responses are JSON with a `status`/`errors` envelope, cursor pagination via `has_more` + `next_page`, and a per-key rate limit of 100 requests per minute surfaced through `X-RateLimit-*` headers. This specification was derived faithfully from PersistIQ's published API reference (apidocs.persistiq.com) and captures the documented request and response surface; it is not an official PersistIQ-published OpenAPI file.
contact:
name: PersistIQ
url: https://persistiq.com
x-apisjson-generated: '2026-07-20'
x-apisjson-method: derived
x-apisjson-source: https://apidocs.persistiq.com/
servers:
- url: https://api.persistiq.com
description: Production
security:
- ApiKeyAuth: []
tags:
- name: Do Not Contact Domains
description: Suppressed domains
paths:
/v1/dnc_domains:
get:
operationId: listDncDomains
summary: List all Do Not Contact domains
description: Do Not Contact domains prevent email being sent to email addresses at their domain. Each response contains a maximum of 100 domains.
tags:
- Do Not Contact Domains
responses:
'200':
description: A page of DNC domains
content:
application/json:
schema:
type: object
properties:
status:
type: string
errors:
type: array
items: {}
has_more:
type: boolean
next_page:
type:
- string
- 'null'
dnc_domains:
type: array
items:
$ref: '#/components/schemas/DncDomain'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/ServerError'
post:
operationId: createDncDomain
summary: Create a Do Not Contact domain
description: Creates a Do Not Contact domain, preventing emails from being sent (without manual approval) to email addresses at this domain.
tags:
- Do Not Contact Domains
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- name
properties:
name:
type: string
description: Do Not Contact domain name.
responses:
'200':
description: The created DNC domain
content:
application/json:
schema:
type: object
properties:
status:
type: string
errors:
type:
- array
- 'null'
items: {}
dnc_domain:
$ref: '#/components/schemas/DncDomain'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/ServerError'
components:
responses:
ServerError:
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Unauthorized - your API key is wrong
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
TooManyRequests:
description: Too Many Requests - more than 100 requests were sent in one minute.
headers:
X-RateLimit-Limit:
description: Maximum allowed requests per minute.
schema:
type: integer
X-RateLimit-Remaining:
description: Requests left for the current window.
schema:
type: integer
X-RateLimit-Reset:
description: UTC epoch seconds when the window resets.
schema:
type: integer
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
BadRequest:
description: Bad Request - missing a required parameter
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
DncDomain:
type: object
properties:
id:
type: string
example: dom_3eWoGj
name:
type: string
example: example.com
Error:
type: object
properties:
status:
type: string
example: error
error:
type: object
properties:
reason:
type: string
description: Error type. Values include invalid_request_error, api_error, bad_params, invalid_request, too_many_requests.
message:
type: string
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: x-api-key
description: Company-wide API key. Grants access to read and write all users' data within the company. Include it in the header of every request.