Connect AI Domination to 6,000+ apps with Zapier
Every event AI Domination emits is available as a Zapier trigger — audit completions, content approvals, mention alerts, trial reminders. Authenticate with one API key, pick the events you want, build the rest of the workflow in Zapier.
About AI Domination
AI Domination is the AI Visibility Operating System. It audits how brands appear in answers from ChatGPT, Perplexity, Gemini, and other AI engines, generates content optimized for those engines, and publishes it across web + social channels — all while monitoring mentions and tracking score deltas over time.
Authentication
Customers create an API key at /settings/api-keys and paste it into Zapier. Every request uses the Authorization: Bearer header. Test endpoint:
GET https://mymilliondollarfirm.com/api/v1/companies
Authorization: Bearer aid_••••••••••Keys are scoped to a single workspace. The auth test returns the workspace details so Zapier can label the connection.
Available triggers
All triggers are webhook-based (REST hooks in Zapier terminology). Subscribing creates a managed webhook on the workspace, posts a sample payload back to Zapier, and streams every matching event going forward.
- Audit completed
audit.completed - Audit failed
audit.failed - Content generated
content.generated - Content approved
content.approved - Content rejected
content.rejected - Content published
content.published - Content publish failed
content.publish_failed - A/B test winner promoted
ab_test.winner_promoted - Mention alert created
mention.alert_created - Subscription created
subscription.created - Subscription canceled
subscription.canceled - Trial ending
trial.ending - Quota exceeded
quota.exceeded - Team invitation accepted
team.invitation.accepted
Available actions
Phase 2. Today the Zapier integration ships triggers only — we want every customer to be able to ingest AI Domination events into their existing stack without us touching their data. Actions (e.g. “Create company”, “Queue audit”) are on the public roadmap.
Sample request
Zapier subscribes by POSTing the target catch-hook URL to our subscribe endpoint. Unsubscribe is the same URL with the subscription id appended.
POST https://mymilliondollarfirm.com/api/v1/webhooks/subscriptions
Authorization: Bearer aid_••••••••••
Content-Type: application/json
{
"event": "audit.completed",
"target_url": "https://hooks.zapier.com/hooks/catch/123/abcd"
}Sample event payloads
Every payload is flat — no nested JSON — so Zapier's mapper renders every field as a scalar in the trigger inspector. Nested values are JSON-stringified into the leaf field.
audit.completed{
"event": "audit.completed",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_4kfb2",
"delivery_attempt": 1,
"data_companyName": "Acme Inc",
"data_companyId": "cmp_1aA",
"data_auditId": "aud_xv9",
"data_overallScore": 82
}audit.failed{
"event": "audit.failed",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_sample",
"delivery_attempt": 1
}content.generated{
"event": "content.generated",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_sample",
"delivery_attempt": 1
}content.approved{
"event": "content.approved",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_sample",
"delivery_attempt": 1
}content.rejected{
"event": "content.rejected",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_sample",
"delivery_attempt": 1
}content.published{
"event": "content.published",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_8z2k1",
"delivery_attempt": 1,
"data_title": "5 ways AI engines rank pages",
"data_type": "BLOG_POST",
"data_destination": "wordpress",
"data_externalUrl": "https://acme.example.com/blog/ai-ranking"
}content.publish_failed{
"event": "content.publish_failed",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_sample",
"delivery_attempt": 1
}ab_test.winner_promoted{
"event": "ab_test.winner_promoted",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_sample",
"delivery_attempt": 1
}mention.alert_created{
"event": "mention.alert_created",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_sample",
"delivery_attempt": 1
}subscription.created{
"event": "subscription.created",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_sample",
"delivery_attempt": 1
}subscription.canceled{
"event": "subscription.canceled",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_sample",
"delivery_attempt": 1
}trial.ending{
"event": "trial.ending",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_e21pq",
"delivery_attempt": 1,
"data_daysRemaining": 3,
"data_tier": "DOMINATION"
}quota.exceeded{
"event": "quota.exceeded",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_sample",
"delivery_attempt": 1
}team.invitation.accepted{
"event": "team.invitation.accepted",
"organization_id": "org_2N1xZQ",
"organization_name": "Acme Inc",
"occurred_at": "2026-05-16T10:42:18.000Z",
"delivery_id": "dlv_sample",
"delivery_attempt": 1
}Platform manifest
The Zapier CLI manifest is published at /zapier-platform.json. Use it as the starting point for the platform integration repo (the actual Zapier app code lives in a separate repo that publishes through zapier push).
Ready to wire it up?
Start a free trial, then create an API key from your settings page. Paste it into Zapier and you’re done.