{
 "slug": "zapier",
 "name": "Zapier",
 "url": "https://zapier.com",
 "domain": "zapier.com",
 "category": "automation",
 "category_name": "Automation",
 "tested_at": "2026-10-06",
 "run": "20261006T052048Z",
 "draft": false,
 "reviewed": true,
 "owner_verified": null,
 "origin": "editorial",
 "history": [
  {
   "run": "20261006T052048Z",
   "date": "2026-10-06",
   "level": 2,
   "engine": {
    "runner": "omp",
    "model": "claude-opus-5-5",
    "driver": 2,
    "signed": true,
    "inbox": [
     "agentdrives.com"
    ],
    "robots": "start"
   }
  }
 ],
 "level": 2,
 "level_name": "Gets in",
 "level_selfhost": null,
 "entry": "self-start",
 "door": {
  "passed": 1,
  "tries": 1,
  "self_start": true
 },
 "badges": [
  "agent-can-leave"
 ],
 "stages": [
  {
   "key": "in",
   "label": "Access",
   "state": "yes",
   "text": "Gets in on its own: sign-up in a browser"
  },
  {
   "key": "work",
   "label": "Use",
   "state": "no",
   "text": "Work done: 25% of the core"
  },
  {
   "key": "pay",
   "label": "Pay",
   "state": "unreached",
   "text": "Card checkout",
   "value": "not_tried",
   "route": "card_checkout",
   "why": "no_card"
  },
  {
   "key": "leave",
   "label": "Leave",
   "state": "yes",
   "text": "Leaves on its own: nothing to cancel, deletes its account",
   "left": "deleted"
  }
 ],
 "outcomes": [
  {
   "key": "find",
   "label": "Find",
   "state": "yes",
   "text": "Docs agents can read: llms.txt, an OpenAPI and an MCP server",
   "have": [
    "llms_txt",
    "openapi",
    "mcp"
   ]
  },
  {
   "key": "access",
   "label": "Access",
   "state": "yes",
   "text": "Gets in on its own: sign-up in a browser",
   "stage": "in"
  },
  {
   "key": "use",
   "label": "Use",
   "state": "no",
   "text": "Work done: 25% of the core",
   "stage": "work"
  },
  {
   "key": "pay",
   "label": "Pay",
   "state": "unreached",
   "text": "Card checkout",
   "value": "not_tried",
   "route": "card_checkout",
   "why": "no_card",
   "stage": "pay"
  },
  {
   "key": "leave",
   "label": "Leave",
   "state": "yes",
   "text": "Leaves on its own: nothing to cancel, deletes its account",
   "left": "deleted",
   "stage": "leave"
  }
 ],
 "access": [
  {
   "key": "browser_signup",
   "label": "Sign-up in a browser",
   "routes": [],
   "minutes": 7.7,
   "core": "2/8"
  }
 ],
 "minutes": 7.7,
 "next": {
  "to": 3,
  "text": "Next: do half of the core work (now 25%)"
 },
 "stop": null,
 "core": "2/8",
 "scores": {
  "coverage": 17,
  "reliability": 33,
  "resilience": null,
  "setup": 100,
  "surface_coverage": null,
  "docs_accuracy": null,
  "docs_completeness": null
 },
 "parts": {
  "holds_up": null,
  "docs_match": null,
  "setup": 100,
  "security": "private",
  "standards": [
   {
    "standard": "MCP",
    "state": "behind",
    "behind": 1,
    "value": "2025-11-25"
   },
   {
    "standard": "MCP discovery",
    "state": "behind",
    "behind": null,
    "value": "legacy"
   },
   {
    "standard": "MCP client registration",
    "state": "behind",
    "behind": null,
    "value": "dcr"
   },
   {
    "standard": "OpenAPI",
    "state": "behind",
    "behind": 1,
    "value": "3.1.0"
   }
  ]
 },
 "reliability_method": "first-try",
 "resilience": null,
 "stress": [],
 "surface_audit": null,
 "coverage_core": 25,
 "after_wall": null,
 "coverage_source": "computed",
 "driver": {
  "version": 2,
  "model": "claude-opus-5-5",
  "profile": "full",
  "assisted": false,
  "handoff": null,
  "prompt_sha": "f3d0adeeb256",
  "kb_version": "2+overlay-9e43028a2c",
  "identity": null
 },
 "methodology": 15,
 "rules_date": "2026-10-15",
 "engine": {
  "runner": "omp",
  "model": "claude-opus-5-5",
  "driver": 2,
  "signed": true,
  "inbox": [
   "agentdrives.com"
  ],
  "robots": "start"
 },
 "same_level_drives": 1,
 "drives": 1,
 "works_assisted": null,
 "freshness": "fresh",
 "nothing_to_pay": false,
 "core_gated": false,
 "profiles": {},
 "agent_check": null,
 "agent_pass": null,
 "who_gets_in": {
  "server": {
   "state": "in"
  },
  "signed": {
   "state": "page",
   "kind": "signup",
   "at": "2026-10-13"
  },
  "browser": {
   "state": "in",
   "measured": false
  },
  "our_key": "pending",
  "robots": null,
  "tip": false
 },
 "ladder": {
  "docs": {
   "status": "headless",
   "note": "docs.zapier.com/llms.txt with 'For AI agents' rules, .md pages, Accept: text/markdown, RFC 9727 API catalog, OpenAPI 3.1.0 specs"
  },
  "signup": {
   "status": "browser",
   "note": "Documented `zapier-sdk signup --headless` only prints a zapier.com/sign-up URL; two-step web form (email+name, then password); no CAPTCHA"
  },
  "verify": {
   "status": "n/a",
   "note": "Email confirmation not required to use the account (email_confirmed:false all drive); no verification mail arrived"
  },
  "credentials": {
   "status": "browser",
   "note": "OAuth consent page in the browser for both the SDK CLI (then --callback-url) and MCP (DCR + PKCE); after that create-client-credentials gives a headless client id/secret",
   "via": ""
  },
  "first_call": {
   "status": "headless",
   "note": "zapier-sdk get-profile"
  },
  "first_action": {
   "status": "headless",
   "note": "zapier-sdk create-table"
  },
  "pay": {
   "status": "",
   "grade": "P2",
   "rails": [
    "web checkout (not opened)"
   ],
   "rail_ids": [],
   "first_party": false,
   "rail_scope": "none",
   "trial_path": "free tier",
   "note": "No 402/x402/MPP/UCP anywhere; not in x402 Bazaar or mpp.dev. Free plan plus a 14-day Professional trial that started at sign-up without a card. Upgrade is a web checkout we did not open (no card)."
  },
  "cancel": {
   "status": "n/a",
   "grade": "X5",
   "note": "Nothing to cancel: our agent used the free plan.",
   "docs_note": "Nothing recurring: the trial needed no card and no plan was bought",
   "nothing": "free_plan"
  },
  "delete": {
   "status": "browser",
   "note": "Web only: Settings > Security and data > Delete my account, re-login, type DELETE; verified by SDK 401 afterwards",
   "left": "deleted",
   "account": true
  }
 },
 "routes": [],
 "checkout": null,
 "docs": null,
 "claims": null,
 "pay_options": {
  "checked": "2026-10-06",
  "source": "drive",
  "options": [
   {
    "id": "card",
    "name": "Card checkout",
    "kind": "checkout",
    "first_party": false,
    "lead": false,
    "networks": [],
    "testnet": false
   }
  ],
  "agentic": [],
  "paid": null,
  "exercised": null,
  "detected_grade": null,
  "trial": {
   "no_card": null,
   "card_required": null,
   "free_plan": true
  },
  "owner_fixes": [
   {
    "title": "Accept x402 or MPP on your API",
    "how": "Answer an unpaid call with 402 and a payment challenge, so an agent pays per call or buys credits without an account or a card."
   },
   {
    "title": "List your plans on Stripe Projects",
    "how": "Agents buy a plan with `stripe projects add`, paid with a token under a spend cap the owner sets (projects.dev)."
   }
  ]
 },
 "surfaces": {
  "api": true,
  "openapi": true,
  "cli": true,
  "sdk": true,
  "mcp": "official",
  "llms_txt": true,
  "webhooks": true,
  "sandbox": false
 },
 "surface_notes": {
  "mcp": "official, 17 meta-tools (discover/enable/inspect/execute actions, skills), the older 25 Nov 2025 spec",
  "cli": "@zapier/zapier-sdk-cli 0.86.4: actions, apps, connections, tables, trigger inboxes",
  "openapi": "Actions, Connections, Trigger Inbox specs, openapi 3.1.0; no Zap create/toggle for normal accounts"
 },
 "can_do": [
  "Create a Zapier Table, add fields and records, update and read them back from the CLI",
  "Enable an app on the Zapier MCP server and run its action (Zapier Tables create record)",
  "Save, list, use and delete a reusable MCP Skill",
  "Create headless client credentials once logged in",
  "Revoke tokens and delete tables, skills and client credentials"
 ],
 "cannot_do": [
  {
   "what": "Create, publish or switch on a Zap headless",
   "why": "No documented API/CLI/MCP route for normal accounts; in the editor the table dropdown did not respond to our agent's browser and Copilot did not set it"
  },
  {
   "what": "Sign up or get a first credential without a browser",
   "why": "CLI signup prints a web URL; OAuth needs a consent page; no device flow"
  },
  {
   "what": "Delete the account headless",
   "why": "Web settings only"
  },
  {
   "what": "Pay the agent way",
   "why": "No 402 rail; web checkout with a card"
  }
 ],
 "blockers": [
  "Zaps have no headless create/publish route",
  "Sign-up and OAuth consent need a browser"
 ],
 "tips_for_owner": [
  "Add an API route to create Zaps",
  "Reject unknown action parameters",
  "Offer device flow for CLI and MCP",
  "Support MCP (the 28 Jul 2026 spec) and CIMD",
  "Add an account delete API"
 ],
 "tips_for_agents": [
  "Use the SDK CLI for Tables and run-action; use MCP for app actions from an AI client",
  "Call inspect_zapier_actions with tool_name and parent params before executing; read the result back because wrong keys are silently ignored",
  "`zapier-sdk signup --headless` gives a URL; finish it in a browser, then pass the loopback URL to --callback-url",
  "Deleting tables needs --can-delete-tables (ask the user)"
 ],
 "selfhost": null,
 "summary": "An agent can sign up and authorise Zapier in a browser (no CAPTCHA, no email confirmation needed) and then work headless through the SDK CLI and the official MCP server: we created, updated and read back records in Zapier Tables, ran a Tables action through MCP, and saved and used an MCP Skill. Zaps, the core product, have no headless route for a normal account, and in our agent's browser the editor's Copilot left the draft Zap unfinished. Account deletion is web only.",
 "wall": "",
 "plan_scope": "free plan (with the auto-started 14-day Professional trial, no card)",
 "robots_stop": null,
 "robots": null,
 "plain": {
  "summary": "Zapier lets an agent sign up and log in with two short browser steps (no CAPTCHA), then work on its own through a command-line tool and Zapier's official AI connector: it built a data table, wrote and read records, and ran an app action. It stopped being able to do everything on its own when it tried to build and turn on the tool's main feature, an automated workflow (a 'Zap'), that still needs a person in the visual editor, and account deletion is web-only too.",
  "can_do": [
   "Sign up and log in (with one browser step each) and then run commands and AI-connector calls without a browser",
   "Create a data table, add and update records, and read them back",
   "Enable an app and run one of its actions through Zapier's official AI connector",
   "Save, use and delete a reusable instruction set for the AI connector"
  ],
  "cannot_do": [
   {
    "what": "Build and turn on an automated workflow (Zap) by itself",
    "why": "No programmatic way to do this; the visual editor needed a person to finish it"
   },
   {
    "what": "Delete the account without a browser",
    "why": "Only available in the web settings page"
   },
   {
    "what": "Pay like a machine would (no human checkout)",
    "why": "No agent payment method offered; only the normal web checkout"
   }
  ]
 },
 "plan_gated": [
  {
   "capability": "Next Gen Zap via MCP",
   "plan": "Professional+ with early access",
   "evidence": "docs.zapier.com/mcp/get-started/build-a-workflow.md: 'Next Gen Zaps is in early access by request'; workflow tools absent from tools/list"
  }
 ],
 "reply": null,
 "capabilities": [
  {
   "id": "cap-01",
   "group": "Workflows",
   "capability": "Build a multi-step Zap workflow (trigger + actions across apps)",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "Workflow API (embed) — zap creation",
    "mcp": null,
    "cli": null,
    "ui": "Zap editor at zapier.com/app/editor"
   },
   "check": "GET the Zap's definition shows the configured trigger and ordered action steps; a test run produces a successful task in history",
   "source": "https://zapier.com/workflows; https://docs.zapier.com/powered-by-zapier/zap-creation/getting-started.md"
  },
  {
   "id": "cap-02",
   "group": "Workflows",
   "capability": "Turn a Zap workflow on or off",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Zap editor toggle / Zaps dashboard"
   },
   "check": "Zap status field flips between 'on' and 'off'; a disabled Zap stops producing new task runs",
   "source": "https://zapier.com/workflows"
  },
  {
   "id": "cap-03",
   "group": "Connections",
   "capability": "Connect a third-party app account (OAuth/API key/etc.)",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "Workflow API authentication",
    "mcp": "connection auto-provisioning",
    "cli": null,
    "ui": "zapier.com/app/assets/connections"
   },
   "check": "GET /app/assets/connections lists the new account with status 'connected'; a step using that app runs without an auth error",
   "source": "https://zapier.com/llms.txt#auth; https://docs.zapier.com/integrations/build/auth.md"
  },
  {
   "id": "cap-04",
   "group": "AI access",
   "capability": "Call an app action from an AI assistant via Zapier MCP",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "Streamable HTTP MCP endpoint (mcp.zapier.com)",
    "mcp": "dynamic tool discovery / named action tools",
    "cli": null,
    "ui": "mcp.zapier.com server dashboard"
   },
   "check": "MCP tools/call response reports success, and the target app (e.g. Slack message, Sheet row) shows the new state when read back",
   "source": "https://docs.zapier.com/mcp/home.md; https://docs.zapier.com/mcp/overview/how-tools-work.md"
  },
  {
   "id": "cap-05",
   "group": "Workflows",
   "capability": "Describe a workflow in chat and have an AI client build/deploy it as a Next Gen Zap",
   "weight": "core",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": "build-a-workflow tool",
    "cli": null,
    "ui": "Workflow Manager"
   },
   "check": "GET the new Zap in Workflow Manager shows the steps the agent described, with a run-history entry from its test execution",
   "source": "https://docs.zapier.com/mcp/get-started/build-a-workflow.md; https://zapier.com/workflows"
  },
  {
   "id": "cap-06",
   "group": "Tables",
   "capability": "Create a Table and read/write structured records",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "Tables API (via SDK/MCP)",
    "mcp": "Tables tools",
    "cli": null,
    "ui": "zapier.com/app/tables"
   },
   "check": "GET the table's records shows the new/updated row with the written field values",
   "source": "https://zapier.com/tables; https://zapier.com/pricing (Tables feature rows)"
  },
  {
   "id": "cap-07",
   "group": "Agents",
   "capability": "Build and deploy an AI Agent that acts across connected apps",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "zapier.com/app/agents builder"
   },
   "check": "Agent's activity log shows a completed task (e.g. sent email, updated record) matching the instructed action",
   "source": "https://zapier.com/agents; https://zapier.com/pricing (AI products: Zapier Agents)"
  },
  {
   "id": "cap-08",
   "group": "Chatbots",
   "capability": "Build and publish an AI Chatbot trained on your content",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "zapier.com/app/chatbots builder"
   },
   "check": "The published chatbot's public share link answers a question using the uploaded FAQ/doc content",
   "source": "https://zapier.com/ai/chatbot; https://zapier.com/pricing (AI products: Zapier Chatbots)"
  },
  {
   "id": "cap-09",
   "group": "Forms",
   "capability": "Create a Form that collects submissions and triggers a workflow",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "zapier.com/app/forms builder"
   },
   "check": "Submitting the live form creates a new record/task and a corresponding Zap run in task history",
   "source": "https://zapier.com/forms"
  },
  {
   "id": "cap-10",
   "group": "Workflow logic",
   "capability": "Filter a Zap run so it only continues when data matches a condition",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Filter step in Zap editor"
   },
   "check": "Runs with non-matching data are marked 'filtered' (no task consumed) in Zap history; matching runs continue to the next step",
   "source": "https://zapier.com/workflows; https://zapier.com/pricing (Filters & Paths row)"
  },
  {
   "id": "cap-11",
   "group": "Workflow logic",
   "capability": "Branch a workflow into different paths by condition",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Paths step in Zap editor"
   },
   "check": "Run history shows the executed path's steps only, matching the branch condition that was met",
   "source": "https://zapier.com/workflows"
  },
  {
   "id": "cap-12",
   "group": "Workflow logic",
   "capability": "Transform/clean data in a step (dates, text, numbers)",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Formatter step in Zap editor"
   },
   "check": "Downstream step's input data shows the reformatted value (e.g. date in target format) from the Formatter step output",
   "source": "https://zapier.com/workflows; https://zapier.com/pricing (Formatter row)"
  },
  {
   "id": "cap-13",
   "group": "Workflow logic",
   "capability": "Loop a step over multiple line items",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Looping step in Zap editor"
   },
   "check": "Run history shows one sub-run per line item, with the step repeated the expected number of times",
   "source": "https://zapier.com/workflows"
  },
  {
   "id": "cap-14",
   "group": "Integrations",
   "capability": "Send/receive data from any service via Webhooks",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "Webhooks by Zapier (catch/send HTTP)",
    "mcp": null,
    "cli": null,
    "ui": "Webhooks step in Zap editor"
   },
   "check": "A POST to the catch-hook URL produces a new trigger event visible in the Zap's run history with the posted payload",
   "source": "https://zapier.com/pricing (Connections via webhooks row)"
  },
  {
   "id": "cap-15",
   "group": "AI in workflows",
   "capability": "Run an AI step inside a Zap to extract, generate, or analyze data",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "AI by Zapier step in Zap editor"
   },
   "check": "Step output field contains the AI-generated/extracted content, visible in the run's step output data",
   "source": "https://zapier.com/pricing (AI by Zapier row)"
  },
  {
   "id": "cap-16",
   "group": "AI in workflows",
   "capability": "Run custom JavaScript/Python code in a step",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Code by Zapier step in Zap editor"
   },
   "check": "Step output matches the value returned/logged by the custom code for that run",
   "source": "https://zapier.com/pricing (Code by Zapier row)"
  },
  {
   "id": "cap-17",
   "group": "Canvas",
   "capability": "Visually map a business process and auto-generate a Zap from it",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "zapier.com/canvas"
   },
   "check": "The generated Zap's steps correspond 1:1 to the nodes drawn on the Canvas diagram",
   "source": "https://zapier.com/canvas"
  },
  {
   "id": "cap-18",
   "group": "Discovery",
   "capability": "Browse and clone prebuilt workflow/table/form templates",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "zapier.com/templates"
   },
   "check": "Cloning a template creates a new Zap/Table/Form pre-filled with the template's steps/fields in the user's account",
   "source": "https://zapier.com/templates; https://zapier.com/templates.md"
  },
  {
   "id": "cap-19",
   "group": "MCP management",
   "capability": "Share an MCP server and curated tool bundles with teammates",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "mcp.zapier.com server access settings"
   },
   "check": "An invited teammate's MCP client lists the shared server with only the bundled tools exposed",
   "source": "https://docs.zapier.com/mcp/manage/server-access.md; https://docs.zapier.com/mcp/get-started/tool-bundles.md"
  },
  {
   "id": "cap-20",
   "group": "MCP management",
   "capability": "Create reusable Markdown Skills for an MCP server",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": "Skills (agentic mode)",
    "cli": null,
    "ui": "mcp.zapier.com skills editor"
   },
   "check": "Invoking the skill by name in an MCP client runs the saved multi-tool sequence and returns its result",
   "source": "https://docs.zapier.com/mcp/manage/skills.md"
  },
  {
   "id": "cap-21",
   "group": "Developer platform",
   "capability": "Build and publish a custom app integration to the Zapier directory",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": "zapier-platform-cli push/promote",
    "ui": "Platform UI builder"
   },
   "check": "The integration's new version appears as 'available'/'promoted' in the Developer Platform and is installable from the public app directory",
   "source": "https://docs.zapier.com/integrations/quickstart/build-integration.md; https://docs.zapier.com/integrations/manage/promote.md"
  },
  {
   "id": "cap-22",
   "group": "Embedding",
   "capability": "Embed Zapier's Zap editor, Workflow API, or MCP inside your own product",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "Workflow API; embedded MCP endpoint",
    "mcp": "embedded MCP server",
    "cli": null,
    "ui": "embedded Zap editor iframe"
   },
   "check": "A Zap created through the embedded editor/API in the partner's own app shows up under that end-user's Zapier account",
   "source": "https://docs.zapier.com/powered-by-zapier/index.md; https://docs.zapier.com/powered-by-zapier/embedding-zapier-mcp/getting-started.md"
  },
  {
   "id": "cap-23",
   "group": "Admin",
   "capability": "Enforce SSO (SAML) and automated user provisioning (SCIM)",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Team/Enterprise admin settings"
   },
   "check": "A user provisioned via the IdP appears in the Zapier account's member list without manual invite",
   "source": "https://zapier.com/pricing (SAML single sign-on, User provisioning rows)"
  },
  {
   "id": "cap-24",
   "group": "Admin",
   "capability": "Stream account activity logs to an external monitoring tool",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": "Log Streams",
    "mcp": null,
    "cli": null,
    "ui": "Enterprise admin settings"
   },
   "check": "Events generated by a Zap run appear in the connected Datadog/Splunk destination shortly after the run",
   "source": "https://zapier.com/pricing (Log Streams row)"
  },
  {
   "id": "cap-25",
   "group": "Embedding",
   "capability": "White-label branded app connections for embed partners",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": "White Label token exchange",
    "mcp": "White Label AI agent connections",
    "cli": null,
    "ui": "White Label partner dashboard"
   },
   "check": "The connection screen shown to the partner's end-user displays the partner's own branding, not Zapier's",
   "source": "https://docs.zapier.com/white-label/getting-started.md; https://docs.zapier.com/white-label/token-exchange.md"
  },
  {
   "id": "cap-26",
   "group": "Admin",
   "capability": "Create isolated Workspaces with their own apps, connections, and permissions",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Enterprise Workspaces admin settings"
   },
   "check": "Resources (Zaps, connections) created inside one Workspace are not visible from a different Workspace in the same account",
   "source": "https://zapier.com/pricing (Workspaces row)"
  }
 ],
 "attempts": [
  {
   "t": "01:10",
   "cap": "discovery",
   "capability": "Agent discovery",
   "task": "robots.txt",
   "route": "api",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "GET https://zapier.com/robots.txt 200: User-agent * Allow / with Disallow /app/, /api/ etc.; AI agents group (ChatGPT-User, Claude-User...) Allow /; 'Content-Signal: ai-train=yes, search=yes, ai-input=yes' (Cloudflare Content Signals syntax, parses); no Content-Usage (aipref) line; 'Agentmap: https://zapier.com/.well-known/ai-catalog.json'",
   "notes": ""
  },
  {
   "t": "01:20",
   "cap": "discovery",
   "capability": "Agent discovery",
   "task": "llms.txt",
   "route": "api",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "https://zapier.com/llms.txt 200 text/plain (12654 B); https://docs.zapier.com/llms.txt 200 (54092 B) with a 'For AI agents' section and rules",
   "notes": ""
  },
  {
   "t": "01:30",
   "cap": "discovery",
   "capability": "Agent discovery",
   "task": "AI catalog and MCP server card",
   "route": "api",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "https://zapier.com/.well-known/ai-catalog.json 200 application/json (specVersion 1.0) -> entry type application/mcp-server-card+json at https://zapier.com/.well-known/mcp/server-card.json (200 JSON, remote streamable-http https://mcp.zapier.com/api/v1/connect, supportedProtocolVersions 2025-11-25..2024-10-07). <endpoint>/server-card -> 422 validation error (not served there)",
   "notes": ""
  },
  {
   "t": "01:40",
   "cap": "discovery",
   "capability": "Agent discovery",
   "task": "A2A agent card",
   "route": "api",
   "documented": true,
   "result": "failed",
   "verified": true,
   "evidence": "/.well-known/agent-card.json 404 text/html; /.well-known/agent.json 404",
   "notes": ""
  },
  {
   "t": "01:50",
   "cap": "discovery",
   "capability": "Agent discovery",
   "task": "auth.md and OAuth metadata",
   "route": "api",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "https://zapier.com/auth.md 200 text/markdown: OAuth code+PKCE on mcp.zapier.com, DCR at /api/v1/oauth/register; no agent_auth block. mcp.zapier.com/.well-known/oauth-authorization-server 200 JSON: registration_endpoint present, no client_id_metadata_document_supported, no device_authorization_endpoint, code_challenge_methods plain+S256. PRM: root 404 JSON, path-suffixed /.well-known/oauth-protected-resource/api/v1/connect 200 JSON; 401 WWW-Authenticate Bearer resource_metadata=... points to it",
   "notes": ""
  },
  {
   "t": "02:30",
   "cap": "discovery",
   "capability": "Agent discovery",
   "task": "MCP server/discover (2026-07-28)",
   "route": "mcp",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "POST https://mcp.zapier.com/api/v1/connect server/discover unauthenticated -> 401 + resource_metadata. With OAuth token -> HTTP 400 {code:-32000,'Unsupported protocol version: 2026-07-28 (supported versions: 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05, 2024-10-07)'} (not -32022) -> legacy; initialize offering 2026-07-28 answered protocolVersion 2025-11-25 with Mcp-Session-Id, serverInfo zapier / Zapier MCP 1.0.0",
   "notes": "discover done at 11:30 after OAuth; logged here with discovery"
  },
  {
   "t": "03:00",
   "cap": "discovery",
   "capability": "Agent discovery",
   "task": "Markdown docs",
   "route": "api",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "GET https://docs.zapier.com/mcp/home with Accept: text/markdown -> content-type text/markdown; vary includes Accept. .md URLs work (e.g. /install.md, /api-reference/overview.md)",
   "notes": ""
  },
  {
   "t": "03:30",
   "cap": "discovery",
   "capability": "Agent discovery",
   "task": "OpenAPI and API catalog",
   "route": "api",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "https://zapier.com/.well-known/api-catalog 200 application/linkset+json (RFC 9727) listing Actions, Connections, Trigger Inbox APIs; specs at docs.zapier.com/api-reference/specs/{actions,connections,trigger-inbox}.yaml declare openapi: 3.1.0; workflow.yaml 404",
   "notes": ""
  },
  {
   "t": "03:40",
   "cap": "docs",
   "capability": "Find docs",
   "task": "Read docs for agent routes",
   "route": "api",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "docs.zapier.com llms.txt + install.md route agents to MCP, SDK (@zapier/zapier-sdk) or CLI (@zapier/zapier-sdk-cli)",
   "notes": ""
  },
  {
   "t": "06:30",
   "cap": "signup",
   "capability": "Sign up",
   "task": "Create account",
   "route": "browser",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "`zapier-sdk signup --headless --non-interactive` (documented) only prints a zapier.com/sign-up URL to open in a browser. Opened it in our agent's browser: two-step web form (email+first/last name, then password). No CAPTCHA or visible challenge; account created, redirected to OAuth consent 'Allow Zapier SDK access'",
   "notes": "No headless sign-up API. Form is two-step (password field inert until step 1 submitted).",
   "quality": {
    "error_legibility": "clear",
    "recoverable": "yes"
   }
  },
  {
   "t": "07:30",
   "cap": "credentials",
   "capability": "Get credentials",
   "task": "CLI login credentials",
   "route": "browser",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "Clicked Allow on zapier.com/oauth/authorize, took loopback callback URL, ran `zapier-sdk signup --callback-url <url>` -> 'Credentials \"the agent's inbox@matfy-de\" created and set as default'",
   "notes": "Consent step is in browser; afterwards `create-client-credentials` gives headless client id/secret (documented in sdk/deploy)"
  },
  {
   "t": "07:40",
   "cap": "first_call",
   "capability": "First call",
   "task": "get-profile",
   "route": "cli",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "`npx zapier-sdk get-profile` -> {full_name:'AgentDrives Test', email:'the agent's inbox', email_confirmed:false}",
   "notes": ""
  },
  {
   "t": "08:00",
   "cap": "verify",
   "capability": "Verify email",
   "task": "Check inbox for verification mail",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": true,
   "evidence": "No mail at 07:48 and 13:55 in the agent's inbox; profile email_confirmed:false but account fully usable without it",
   "notes": "Verification not required to use the product"
  },
  {
   "t": "08:30",
   "cap": "first_action",
   "capability": "First action",
   "task": "Create a Zapier Table",
   "route": "cli",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "`zapier-sdk create-table 'AgentDrives Test Table'` -> id 01M47V00YDFZ9S0XDMCP5MSHJ2",
   "notes": ""
  },
  {
   "t": "09:10",
   "cap": "cap-06",
   "capability": "Create a Table and read/write structured records",
   "task": "Create table, add fields Task/Status, add 2 records, update one, read back",
   "route": "cli",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "create-table-fields ok; create-table-records first failed with clear error 'records.0.data: expected record, received undefined', retried with {data:{...}}; update-table-records Status=done; get-table-record shows {Task:'Drive Zapier',Status:'done'}",
   "notes": "",
   "quality": {
    "verify_route": "yes",
    "error_legibility": "clear",
    "docs_match": "match",
    "recoverable": "yes"
   }
  },
  {
   "t": "10:30",
   "cap": "credentials",
   "capability": "Get credentials",
   "task": "MCP OAuth via DCR + PKCE",
   "route": "browser",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "POST /api/v1/oauth/register (DCR) -> client_id; authorize in browser (consent 'AgentDrives wants to access your Zapier account'), code exchanged at /api/v1/oauth/token with PKCE+resource -> access_token (3600 s) + refresh_token",
   "notes": "Authorization response carried no RFC 9207 iss parameter. MCP server auto-created on consent."
  },
  {
   "t": "12:00",
   "cap": "cap-04",
   "capability": "Call an app action from an AI assistant via Zapier MCP",
   "task": "Enable Zapier Tables on MCP server and create a record",
   "route": "mcp",
   "documented": true,
   "result": "partial",
   "verified": true,
   "evidence": "tools/list 17 meta-tools; discover_zapier_actions app 'Zapier Tables' -> TableCLIAPI; enable_zapier_action ok (14 actions, needs_auth false); execute_zapier_write_action create_record with params Task/Status (and f1/f2) -> success but record created with all fields null",
   "notes": "Unknown param keys silently ignored; correct keys new__data__f1 only appear in inspect with tool_name + parent params",
   "quality": {
    "error_legibility": "silent",
    "verify_route": "yes",
    "recoverable": "yes"
   }
  },
  {
   "t": "12:40",
   "cap": "cap-04",
   "capability": "Call an app action from an AI assistant via Zapier MCP",
   "task": "Create record with dynamic field keys",
   "route": "mcp",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "inspect_zapier_actions tool_name=zapier_tables_create_record params.table_id -> dynamic_properties_schema new__data__f1/f2; execute -> record 01M47V6RAPC45QMXWWYQ2HP9CW {f1:'Added via MCP',f2:'open'}; read back via CLI list-table-records shows Task 'Added via MCP' Status 'open'",
   "notes": "",
   "quality": {
    "verify_route": "yes",
    "docs_match": "match"
   }
  },
  {
   "t": "13:00",
   "cap": "cap-20",
   "capability": "Create reusable Markdown Skills for an MCP server",
   "task": "create_zapier_skill 'add-task'",
   "route": "mcp",
   "documented": true,
   "result": "failed",
   "verified": true,
   "evidence": "tools/call create_zapier_skill name 'add-task' -> empty response body; get_zapier_skill 'add-task' -> 'Skill \"add-task\" not found'",
   "notes": "",
   "quality": {
    "error_legibility": "silent",
    "recoverable": "yes"
   }
  },
  {
   "t": "13:30",
   "cap": "cap-20",
   "capability": "Create reusable Markdown Skills for an MCP server",
   "task": "create_zapier_skill 'add task' and run it",
   "route": "mcp",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "create_zapier_skill -> 'Skill \"add task\" saved.'; list_zapier_skills lists it; get_zapier_skill returns the markdown; following it, execute_zapier_write_action created record 01M47VA02D7M27769VPWQ05TKB {f1:'Task from skill add task'}",
   "notes": "",
   "quality": {
    "verify_route": "yes"
   }
  },
  {
   "t": "14:30",
   "cap": "cap-05",
   "capability": "Describe a workflow in chat and have an AI client build/deploy it as a Next Gen Zap",
   "task": "Look for build-workflow tools on MCP",
   "route": "mcp",
   "documented": true,
   "result": "plan_gated",
   "verified": true,
   "evidence": "tools/list has no workflow tools (run_workflow_draft/publish_workflow_draft absent). docs.zapier.com/mcp/get-started/build-a-workflow.md: 'Next Gen Zaps is in early access by request... A Zapier account on a Professional, Team, or Enterprise plan, with Next Gen Zaps early access enabled.'",
   "notes": ""
  },
  {
   "t": "17:30",
   "cap": "cap-01",
   "capability": "Build a multi-step Zap workflow (trigger + actions across apps)",
   "task": "Build 'every day 9am -> Zapier Tables create record' Zap with editor Copilot",
   "route": "browser",
   "documented": true,
   "result": "partial",
   "verified": true,
   "evidence": "zapier.com/editor Copilot built a draft Zap 382525575 'Daily check - Create record at 9am' (Schedule by Zapier trigger + Zapier Tables Create Record step, screenshot shots/021.png). Table ID dropdown did not open for our agent's browser across 3 tries; Copilot asked the user to pick the table instead of setting it; step stayed 'finish required fields', not published or tested",
   "notes": "No documented headless route to create a Zap for a normal account (Workflow API is for embed partners). Draft deleted with the account.",
   "quality": {
    "verify_route": "no",
    "error_legibility": "vague",
    "recoverable": "no"
   }
  },
  {
   "t": "22:00",
   "cap": "cap-02",
   "capability": "Turn a Zap workflow on or off",
   "task": "Toggle the Zap on",
   "route": "browser",
   "documented": true,
   "result": "failed",
   "verified": false,
   "evidence": "Draft Zap could not be published (required Table ID unset, see ), so the 'Turn Zap on' toggle stayed unavailable; no documented API/CLI/MCP route to toggle a Zap",
   "notes": "",
   "quality": {
    "verify_route": "no"
   }
  },
  {
   "t": "22:30",
   "cap": "cap-03",
   "capability": "Connect a third-party app account (OAuth/API key/etc.)",
   "task": "Connect an app account",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "SDK has get-connection-start-url/create-connection and MCP manage_zapier_connections returns a URL for the user to connect; our agent has no third-party app account to connect",
   "notes": "Not attempted: no third-party account in our agent; Zapier Tables needed none (needs_auth:false)"
  },
  {
   "t": "22:40",
   "cap": "cap-05",
   "capability": "Describe a workflow in chat and have an AI client build/deploy it as a Next Gen Zap",
   "task": "(see 14:30)",
   "route": "mcp",
   "documented": true,
   "result": "plan_gated",
   "verified": true,
   "evidence": "Early access by request; workflow tools absent from tools/list",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-07",
   "capability": "Build and deploy an AI Agent that acts across connected apps",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "UI-only per capability map; not attempted within the 45-minute budget after the Zap editor proved slow to drive",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-08",
   "capability": "Build and publish an AI Chatbot trained on your content",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "UI-only per capability map; not attempted within the 45-minute budget after the Zap editor proved slow to drive",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-09",
   "capability": "Create a Form that collects submissions and triggers a workflow",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "UI-only per capability map; not attempted within the 45-minute budget after the Zap editor proved slow to drive",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-17",
   "capability": "Visually map a business process and auto-generate a Zap from it",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "UI-only per capability map; not attempted within the 45-minute budget after the Zap editor proved slow to drive",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-18",
   "capability": "Browse and clone prebuilt workflow/table/form templates",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "UI-only per capability map; not attempted within the 45-minute budget after the Zap editor proved slow to drive",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-10",
   "capability": "Filter a Zap run",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Zap editor steps; depend on a working Zap (stayed a draft)",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-11",
   "capability": "Branch a workflow into paths",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Zap editor steps; depend on a working Zap (stayed a draft)",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-12",
   "capability": "Formatter step",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Zap editor steps; depend on a working Zap (stayed a draft)",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-13",
   "capability": "Looping step",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Zap editor steps; depend on a working Zap (stayed a draft)",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-14",
   "capability": "Webhooks step",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Zap editor steps; depend on a working Zap (stayed a draft)",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-15",
   "capability": "AI by Zapier step",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Zap editor steps; depend on a working Zap (stayed a draft)",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-16",
   "capability": "Code step",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Zap editor steps; depend on a working Zap (stayed a draft)",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-19",
   "capability": "Share an MCP server and curated tool bundles with teammates",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Needs a second teammate account; we have one identity",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-21",
   "capability": "Build and publish a custom app integration",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "zapier-platform-cli exists (docs); not attempted in the budget",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-22",
   "capability": "Embed Zapier inside your own product",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Partner/Enterprise feature; not tested",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-23",
   "capability": "SSO/SCIM",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Partner/Enterprise feature; not tested",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-24",
   "capability": "Log Streams",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Partner/Enterprise feature; not tested",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-25",
   "capability": "White Label",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Partner/Enterprise feature; not tested",
   "notes": ""
  },
  {
   "t": "23:00",
   "cap": "cap-26",
   "capability": "Workspaces",
   "task": "Not attempted",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "Partner/Enterprise feature; not tested",
   "notes": ""
  },
  {
   "t": "23:10",
   "cap": "pay",
   "capability": "Pay step",
   "task": "Probe agent payment rails",
   "route": "api",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "api.zapier.com/actions/v1 and /connections/v1 unauthenticated -> 401 application/json (no 402, no PAYMENT-REQUIRED, no WWW-Authenticate Payment); x402.zapier.com and mpp.zapier.com do not resolve (curl 000); agents.zapier.com -> 307 to sign-in; zapier.com/.well-known/ucp 404 HTML; /openapi.json 404; OpenAPI specs carry no x-payment-info; docs llms.txt has no x402/MPP/402 text; zapier not found in x402 Bazaar or mpp.dev/api/services. zapier.com/pricing: Free $0, Professional from $19.99/month 'Try it free'. After sign-up the account showed 'Welcome to your Professional trial! You have 14 days' with no card asked. Upgrade is web checkout (not opened: no card).",
   "notes": ""
  },
  {
   "t": "23:20",
   "cap": "cancel",
   "capability": "Cancel",
   "task": "Cancel trial/plan",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": true,
   "evidence": "Nothing recurring: the 14-day Professional trial started without a card; no paid plan started",
   "notes": ""
  },
  {
   "t": "24:00",
   "cap": "cleanup",
   "capability": "Cleanup",
   "task": "Delete skill, records, table; revoke tokens",
   "route": "cli",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "delete_zapier_skill -> 'Skill \"add task\" deleted.' (list shows 0); delete-table-records ok; delete-table first refused with ZAPIER_CONFIGURATION_ERROR asking for --can-delete-tables (clear, tells agents to ask the user); with the flag -> success, get-table -> not found; delete-client-credentials -> success",
   "notes": "We enabled --can-delete-tables to remove our own test table at the end of the drive.",
   "quality": {
    "error_legibility": "clear",
    "verify_route": "yes"
   }
  },
  {
   "t": "24:10",
   "cap": "security",
   "capability": "Token revocation",
   "task": "Revoke MCP OAuth tokens",
   "route": "api",
   "documented": true,
   "result": "partial",
   "verified": true,
   "evidence": "POST https://mcp.zapier.com/api/v1/oauth/revoke for refresh and access token -> 200 both; the revoked access token still got 200 on initialize and tools/list 5+ s later",
   "notes": ""
  },
  {
   "t": "24:50",
   "cap": "delete",
   "capability": "Delete account",
   "task": "Delete account and data",
   "route": "browser",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "Web only: Settings > Security and data > Delete my account -> re-auth login (email then password) -> type email + 'DELETE' -> 'Delete permanently' -> redirected to zapier.com. Verified: `zapier-sdk get-profile` -> 401 'Failed to authenticate Bearer token'; MCP initialize -> 404 'Account setup is incomplete'",
   "notes": "No API/CLI route to delete the account",
   "quality": {
    "verify_route": "yes"
   }
  }
 ],
 "stale": false,
 "icon": "/logos/zapier.png",
 "monitored": false,
 "verdict": "Gets in on its own: L2 · Gets in. Our agent passed sign-up (no CAPTCHA, no email confirmation needed) and authorised the account, both in a browser, then worked headless through the SDK CLI and the official MCP server. It created, updated and read back records in Zapier Tables, ran a Tables action through MCP, and saved and used an MCP Skill. Zaps, the core product, have no headless route for a normal account, and in the browser the editor's Copilot left a draft Zap unfinished. Our agent never reached checkout: the trial started without a card, and account deletion needs the browser too.",
 "page": "https://agentdrives.com/tools/zapier?via=api"
}