5 operations. Call each with POST https://app.chirply.io/api/v1/actions/<name> and a bearer token; the response is { "data": { "action", "summary", "result" } }. A read badge means the operation changes nothing; write requires the credential’s write scope.
Cancel validation run
email_validation.cancel_jobwrite
Stop a queued or running background email-validation run. Contacts already checked keep their stamped verdicts; no further provider credits are spent.
Over MCP the same operation is the tool email_validation_cancel_job at https://app.chirply.io/api/mcp, same bearer token, same input.
View email validation settings
email_validation.getread
Read whether automatic email validation is enabled, which provider it uses, and which contact-capture channels are covered. Never returns provider credentials and performs no billable validation. Any member can read this, exactly as /settings/email-policy shows the panel to everyone and only disables the inputs for non-managers. `never_bounce_key_saved` says whether a NeverBounce key is on file; it is reported as false to members, because the page withholds that one fact from them too.
Over MCP the same operation is the tool email_validation_get at https://app.chirply.io/api/mcp, same bearer token, same input.
Validation run progress
email_validation.job_statusread
Read the progress of background email-validation runs: processed/total, live verdict counts, skips, failures, and final status. Pass an id for one run, or omit it for the most recent runs. Reading progress also nudges an unfinished run forward.
Over MCP the same operation is the tool email_validation_job_status at https://app.chirply.io/api/mcp, same bearer token, same input.
Save settings
email_validation.savewriteadmin only
Save automatic email-validation settings for the account. When enabled, each selected contact-capture channel can make a real single-address request to its own Mailgun or NeverBounce account and may incur that provider's validation charges. An explicit invalid or disposable result blocks that email from entering the CRM; provider errors and timeouts fail open.
Parameters
Field
Type
Required
Description
enabled
boolean
required
Turn automatic email validation on or off.
provider
"mailgun" | "neverbounce"
required
The service used for each single-address validation.
neverbounce_api_key
string
optional
A new NeverBounce API key to encrypt and store. Omit it to keep the saved key.
channels
object
required
Which contact-capture paths get their email addresses validated. Each flag is independent.
channels.api
boolean
required
Validate contacts created through API, MCP, or Copilot.
channels.tracking
boolean
required
Validate contacts auto-captured by website tracking.
channels.imports
boolean
required
Validate contact email addresses in CSV and file imports.
channels.manual
boolean
required
Validate contacts added manually in the dashboard.
channels.native
boolean
required
Validate emails submitted through native funnels, forms, surveys, and quizzes.
Over MCP the same operation is the tool email_validation_save at https://app.chirply.io/api/mcp, same bearer token, same input.
Validate email
email_validation.start_bulkwriteconfirm
Start a background job that validates each listed contact's email address through its own Mailgun or NeverBounce account and stamps the verdict (valid, catch-all, unknown, invalid, disposable) on each contact. Every check is a real provider request that can use a paid validation credit; by default contacts whose current address was already checked are skipped. Returns the job id immediately — poll email_validation.job_status for progress.
Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.
Parameters
Field
Type
Required
Description
contact_ids
array of (string (uuid))
required
The contacts whose email addresses should be validated.
mode
"skip_validated" | "always"
optional
skip_validated skips contacts whose current address was already checked (no credit spent); always re-checks every address. Default: "skip_validated"