AhaSend · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for AhaSend API v2 Webhooks API
6 actions
6 updates
phrasing
extends
openapi/ahasend-webhooks-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for AhaSend's API. It is a proposal applied on top of the contract, not a document AhaSend publishes.
What the actions change
x-apievangelist-phrasing
Targets 6
$.info
$.paths['/v2/accounts/{account_id}/webhooks'].get
$.paths['/v2/accounts/{account_id}/webhooks'].post
$.paths['/v2/accounts/{account_id}/webhooks/{webhook_id}'].get
$.paths['/v2/accounts/{account_id}/webhooks/{webhook_id}'].put
$.paths['/v2/accounts/{account_id}/webhooks/{webhook_id}'].delete
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for AhaSend API v2 Webhooks API
version: 1.0.0
extends: openapi/ahasend-webhooks-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 5
- target: $.paths['/v2/accounts/{account_id}/webhooks'].get
update:
x-apievangelist-phrasing:
intent: List event webhooks
effect: read
questions:
- Which event notification webhooks are configured on my account?
- Can I list only webhooks that fire on bounces?
instructions:
- text: List all webhooks on account {account_id}.
slots:
account_id: path.account_id
- text: Show webhooks on account {account_id} where enabled is {enabled}.
slots:
account_id: path.account_id
enabled: query.enabled
- text: Find webhooks on account {account_id} with the bounce trigger set to {on_bounced}.
slots:
account_id: path.account_id
on_bounced: query.on_bounced
method: generated
generated: '2026-09-26'
- target: $.paths['/v2/accounts/{account_id}/webhooks'].post
update:
x-apievangelist-phrasing:
intent: Subscribe a URL to email events
effect: write
questions:
- How do I get notified at my URL when an email is delivered or bounces?
- Can I create a webhook that only covers some of my domains?
- Which email events can trigger a webhook, like opens and clicks?
instructions:
- text: Create a {scope} webhook named {name} posting to {url} on account {account_id}.
slots:
scope: requestBody.scope
name: requestBody.name
url: requestBody.url
account_id: path.account_id
- text: Add webhook {name} at {url} with scope {scope} for domains {domains}, firing on bounces, on account {account_id}.
slots:
name: requestBody.name
url: requestBody.url
scope: requestBody.scope
domains: requestBody.domains
account_id: path.account_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v2/accounts/{account_id}/webhooks/{webhook_id}'].get
update:
x-apievangelist-phrasing:
intent: View one webhook
effect: read
questions:
- Which events is a specific webhook subscribed to?
- Where does one particular webhook deliver its notifications?
instructions:
- text: Show webhook {webhook_id} on account {account_id}.
slots:
webhook_id: path.webhook_id
account_id: path.account_id
- text: Get the URL and event triggers of webhook {webhook_id} in account {account_id}.
slots:
webhook_id: path.webhook_id
account_id: path.account_id
method: generated
generated: '2026-09-26'
- target: $.paths['/v2/accounts/{account_id}/webhooks/{webhook_id}'].put
update:
x-apievangelist-phrasing:
intent: Change an existing webhook
effect: write
questions:
- How do I add click events to a webhook I already set up?
- Can I move an existing webhook to a new URL without recreating it?
instructions:
- text: Change the URL of webhook {webhook_id} to {url} on account {account_id}.
slots:
webhook_id: path.webhook_id
url: requestBody.url
account_id: path.account_id
- text: Set on_clicked to {on_clicked} for existing webhook {webhook_id} in account {account_id}.
slots:
on_clicked: requestBody.on_clicked
webhook_id: path.webhook_id
account_id: path.account_id
- text: Disable webhook {webhook_id} on account {account_id} by setting enabled to {enabled}.
slots:
webhook_id: path.webhook_id
account_id: path.account_id
enabled: requestBody.enabled
method: generated
generated: '2026-09-26'
- target: $.paths['/v2/accounts/{account_id}/webhooks/{webhook_id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a webhook
effect: destructive
questions:
- How do I stop sending email event notifications to an old endpoint?
- Can I permanently remove a webhook?
instructions:
- text: Delete webhook {webhook_id} from account {account_id}.
slots:
webhook_id: path.webhook_id
account_id: path.account_id
- text: Remove event webhook {webhook_id} in account {account_id}.
slots:
webhook_id: path.webhook_id
account_id: path.account_id
method: generated
generated: '2026-09-26'
Work with this as data
Every overlay 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 openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.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 overlay
curl "https://apis.io/api/v1/overlays/ahasend-webhooks-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.