Agent skill
zapier
Zapier API for workflow automation. Use when user mentions "Zapier", "zap", "automation", or asks about connecting apps.
Install this agent skill to your Project
npx add-skill https://github.com/vm0-ai/vm0-skills/tree/main/zapier
SKILL.md
Zapier AI Actions API
Use the Zapier AI Actions API via direct curl calls to execute pre-configured actions across 6000+ apps using natural language instructions. AI Actions removes the complexity of building integrations by providing a single universal API that handles authentication, API calls, and edge cases for supported apps.
Official docs:
https://actions.zapier.com/docs/using-the-api
When to Use
Use this skill when you need to:
- Execute automated actions across apps like Gmail, Slack, Google Sheets, Salesforce, and thousands more
- Trigger workflows using natural language instructions without building direct integrations
- Preview action results before executing them
- List and manage configured AI actions available to your account
Prerequisites
- Sign up or log in at Zapier
- Go to AI Actions and configure the actions you want to expose
- Click Manage Actions to create and enable actions (e.g., "Gmail: Send Email", "Slack: Send Message")
- Get your API key from the credentials page
export ZAPIER_TOKEN="your-zapier-api-key"
How to Use
All examples below assume you have ZAPIER_TOKEN set. Authentication uses the x-api-key header.
1. Check API Key
Verify that your API key is valid.
curl -s "https://actions.zapier.com/api/v2/check/" --header "x-api-key: $(printenv ZAPIER_TOKEN)" | jq .
2. List Exposed Actions
Retrieve all actions you have configured and exposed in your Zapier AI Actions dashboard.
curl -s "https://actions.zapier.com/api/v1/exposed/" --header "x-api-key: $(printenv ZAPIER_TOKEN)" | jq '.results[] | {id, description, params}'
3. Execute an AI Action
Execute a configured action using natural language instructions. Replace ACTION_ID with the action ID from the list above.
curl -s -X POST "https://actions.zapier.com/api/v2/ai-actions/ACTION_ID/execute/" --header "Content-Type: application/json" --header "x-api-key: $(printenv ZAPIER_TOKEN)" -d '{"instructions": "Send a message saying hello to the #general channel"}' | jq .
4. Execute with Parameter Hints
Supply parameter hints to guide the AI in filling action fields. Supported modes: locked (use exact value), guess (AI matches text), choose_from (AI selects from list), ignored (skip parameter).
Write to /tmp/zapier_request.json:
{
"instructions": "Send an email about the weekly report",
"params": {
"to": {
"mode": "locked",
"value": "team@example.com"
},
"subject": {
"mode": "locked",
"value": "Weekly Report"
}
}
}
Then run:
curl -s -X POST "https://actions.zapier.com/api/v2/ai-actions/ACTION_ID/execute/" --header "Content-Type: application/json" --header "x-api-key: $(printenv ZAPIER_TOKEN)" -d @/tmp/zapier_request.json | jq .
5. Preview an Action (Dry Run)
Preview what the action would do without actually executing it. Add preview_only=true as a query parameter.
curl -s -X POST "https://actions.zapier.com/api/v2/ai-actions/ACTION_ID/execute/?preview_only=true" --header "Content-Type: application/json" --header "x-api-key: $(printenv ZAPIER_TOKEN)" -d '{"instructions": "Create a new row in the Sales spreadsheet with name John and amount 500"}' | jq .
6. Execute a V1 Exposed Action
Execute an action using the V1 endpoint. Replace ACTION_ID with the exposed action ID.
curl -s -X POST "https://actions.zapier.com/api/v1/dynamic/exposed/ACTION_ID/execute/" --header "Content-Type: application/json" --header "x-api-key: $(printenv ZAPIER_TOKEN)" -d '{"instructions": "Send a Slack message to #dev saying deployment complete"}' | jq .
Guidelines
- Configure actions first: Before using the API, you must configure and enable actions in the Zapier AI Actions dashboard. The API can only execute actions you have set up
- Use natural language: The
instructionsfield accepts plain English descriptions of what you want to do. The AI interprets and maps instructions to the correct action parameters - Parameter modes: Use
lockedmode when you know the exact value,guesswhen the AI should match text to available options, andchoose_fromto provide a list of valid IDs - Preview before executing: Use
preview_only=trueto verify the AI correctly interprets your instructions before running the action - Response statuses: Check the
statusfield in responses - values aresuccess,error,empty, orpreview - Rate limits: Zapier enforces rate limits on API calls. Implement backoff if you receive HTTP 429 responses
- Action IDs: Each configured action has a unique ID. Use the list endpoint to discover available action IDs
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
brave-search
Brave Search API for web search. Use when user says "search web", "Brave search", or asks to "find on web" without specifying Google.
supadata
Supadata API for YouTube/web data. Use when user mentions "Supadata", "YouTube data", "channel stats", or web scraping data.
roadmap-planning
Build and prioritize product roadmaps using scoring models like RICE, ICE, and value-effort matrices. Activate when creating a product roadmap, prioritizing features, sequencing initiatives, mapping dependencies, balancing team capacity, choosing between Now/Next/Later or quarterly planning, or communicating roadmap tradeoffs to executives and stakeholders.
qdrant
Qdrant API for vector search. Use when user mentions "Qdrant", "vector database", "semantic search", or embeddings storage.
calendly
Calendly scheduling API. Use when user mentions "Calendly", "calendly.com", "schedule a meeting", "booking link", "event types", or asks about interview scheduling.
stripe
Stripe API for payments. Use when user mentions "Stripe", "payment", "subscription", "billing", "invoice", or asks about payment processing.
Didn't find tool you were looking for?