8 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.
Add to pool
email_pools.add_senderwriteadmin only
Add ONE account email address to a sending pool, appended to the end of the rotation. Use this instead of replacing the whole member list when a single sender is joining. The address must already be ready to send, since a pending sender in a pool is skipped at send time. Re-adding an existing member does nothing and keeps its place in the rotation. If the pool has a warmup plan with auto-enrol switched on, the new member starts that ramp from its own day one rather than joining at the volume the established members already send. From the next bulk send onward, some recipients will see this address as the From — it does not send anything by itself.
Parameters
Field
Type
Required
Description
pool_id
string (uuid)
required
Email pool the sender should join.
identity_id
string (uuid)
required
Ready account email identity to add to the rotation.
Over MCP the same operation is the tool email_pools_add_sender at https://app.chirply.io/api/mcp, same bearer token, same input.
Create email pool
email_pools.createwriteadmin only
Create an email sending pool. Bulk sends addressed to the pool rotate across its member addresses (least-used-today first, respecting each member's warmup allowance). The pool's reply-to overrides every member's individual reply-to; leave it blank and replies return to whichever address sent each message. Creating a pool sends nothing.
Parameters
Field
Type
Required
Description
name
string
required
Pool name shown in send pickers, such as 'Cold outreach pool'.
reply_to
string (email) (or null)
optional
One address that receives replies to everything sent through this pool, or null so replies return to the sending address.
identity_ids
array of (string (uuid))
optional
Account email identities to add as members, in rotation tie-break order. The same identity may belong to several pools. Default: []
Over MCP the same operation is the tool email_pools_create at https://app.chirply.io/api/mcp, same bearer token, same input.
Delete email pool
email_pools.deletewriteconfirmadmin only
Permanently delete an email pool and its member list. The member email addresses themselves are NOT deleted and keep working individually. Any broadcast still pointing at this pool falls back to the account default sender on its next send, which changes what recipients see — that is why this asks for confirmation.
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.
Over MCP the same operation is the tool email_pools_delete at https://app.chirply.io/api/mcp, same bearer token, same input.
View email pool
email_pools.getreadadmin only
Show one email pool in full: its reply-to, status, the warmup plan applied to its members, and every member address with today's send count, its current warmup allowance, and whether it is resting. Read-only. Owner/admin only, matching the Email pools settings screen.
Over MCP the same operation is the tool email_pools_get at https://app.chirply.io/api/mcp, same bearer token, same input.
List email pools
email_pools.listreadadmin only
List the account's email sending pools — named sets of From addresses that bulk sends rotate across — with each pool's member count, reply-to address, active/paused status, warmup plan, and how many emails it has sent today. Read-only. Owner/admin only, matching the Email pools settings screen.
Over MCP the same operation is the tool email_pools_list at https://app.chirply.io/api/mcp, same bearer token, same input.
Remove from pool
email_pools.remove_senderwriteadmin only
Take ONE email address out of a sending pool's rotation. The address itself is not deleted and keeps working on its own; every other member of the pool is left in place. Later bulk sends through this pool stop coming from this address, which concentrates the same volume on the remaining members — worth checking against their warmup allowances. Sends nothing.
Parameters
Field
Type
Required
Description
pool_id
string (uuid)
required
Email pool to take the sender out of.
identity_id
string (uuid)
required
Account email identity to remove from the rotation.
Over MCP the same operation is the tool email_pools_remove_sender at https://app.chirply.io/api/mcp, same bearer token, same input.
Warm up pool
email_pools.set_warmupwriteadmin only
Put every address in a sending pool onto one warmup ramp, in a single call. While warming, pool rotation caps each member at its own daily allowance (day-one volume, plus the increment for each elapsed day, levelling off at the maximum, counted per UTC day) and parks the rest of a campaign until the next day rather than failing it. Pick a named plan — gentle (5/day +5, up to 100), standard (10/day +10, up to 200) or fast (25/day +25, up to 500) — or 'custom' with your own numbers. Staggering starts each member's ramp a few days after the last, so a pool of new mailboxes does not step up in lockstep. Members that are not ready to send are skipped rather than enrolled, since their ramp clock would otherwise run down while they sat idle. Changes future pacing only; sends nothing and costs nothing.
Parameters
Field
Type
Required
Description
pool_id
string (uuid)
required
Email pool whose member addresses should be warmed up.
enabled
boolean
optional
False turns warmup off for every member of the pool and clears the pool's plan, so members send at whatever volume a campaign asks for. Default: true
plan
"gentle" | "standard" | "aggressive" | "custom"
optional
Named ramp to apply. 'gentle' for brand-new mailboxes on a brand-new domain, 'standard' for a new address on a domain that already sends, 'aggressive' for a new mailbox on an already-warm domain, 'custom' to supply the three numbers below. Default: "standard"
start_per_day
integer (or null)
optional
Custom plans only: emails each address may send on day one.
increment_per_day
integer (or null)
optional
Custom plans only: extra emails allowed each subsequent day.
max_per_day
integer (or null)
optional
Custom plans only: the daily ceiling the ramp levels off at, or null to keep climbing.
stagger_days
integer
optional
Days between each member's ramp start. 0 starts everyone today; 2 means the second address begins in two days, the third in four. Defaults to the chosen plan's own stagger.
auto_enroll
boolean
optional
Put addresses added to this pool later onto the same plan from their own day one, instead of letting them join at the volume established members already send. Default: false
restart
boolean
optional
Restart every member's ramp from day one (use when re-warming mailboxes that have been rested). Default: false
Over MCP the same operation is the tool email_pools_set_warmup at https://app.chirply.io/api/mcp, same bearer token, same input.
Update email pool
email_pools.updatewriteadmin only
Rename an email pool, change or clear its reply-to, pause or reactivate it, or replace its member list. A paused pool refuses new sends; in-flight campaigns pointing at it park until it is active again. Omitted fields are left alone. Sends nothing.
Parameters
Field
Type
Required
Description
pool_id
string (uuid)
required
Email pool to change.
name
string
optional
New pool name.
reply_to
string (email) (or null)
optional
New reply-to for everything sent through the pool, or null so replies return to the sending address.
status
"active" | "paused"
optional
Pause to stop the pool accepting sends; reactivate to resume.
identity_ids
array of (string (uuid))
optional
Replacement member list in rotation tie-break order. Omit to keep current members.