- Docs
- Integrations
- Zapier
Zapier
Connect RoxyAPI to Zapier and automate astrology, tarot, numerology, dream, crystal, angel number, and biorhythm workflows across 7,000+ apps. One API key, 10 domains, 130+ endpoints, called from a Zap action without writing a single line of code. If you can drag boxes in a workflow editor you can ship a daily horoscope email blast, a Life Path lookup on form submit, or a tarot card of the day to Slack that runs every morning on autopilot.
Zapier is the original no-code workflow automation platform with the largest app integration catalog in the industry. RoxyAPI is not (yet) a native Zapier app, but Zapier's official Webhooks by Zapier action lets you call any REST API from any Zap. This page walks you through the setup.
Before you start
- A RoxyAPI account and an API key. Grab one from the pricing page, or test endpoints first with the pre-filled key on the interactive API reference.
- A Zapier account. The free plan gives you 100 tasks per month and includes basic Zap building. Webhooks by Zapier has historically been a premium feature that requires a paid plan (Professional, $19.99/mo billed annually). If you cannot find the Webhooks app in the action picker on the free tier, that is why — upgrade your plan, or use a free alternative like n8n or Make instead.
- Five minutes.
Zapier's pattern is similar to Make and n8n — a Zap is a Trigger plus one or more Actions, and you call RoxyAPI from an Action step. If you have already shipped a Make integration or n8n integration, the same architecture applies here. The difference is in the field labels.
Step 1: pick a trigger
Every Zap needs a trigger. For RoxyAPI workflows, the three most common are:
- Schedule by Zapier — runs your Zap on a cron (every day at 8 AM, every Monday morning, every hour). Best for daily horoscope emails, scheduled tarot cards, weekly newsletters
- Webhooks by Zapier > Catch Hook — exposes a unique URL you can POST to from any form or external system. Best for "user submits a birth form, generate their natal chart"
- Forms (Tally, Typeform, Google Forms, Jotform, Wufoo, etc.) — Zapier integrates with every popular form builder. Pick whichever you already use
Set up the trigger first and run a test so you know what fields are available downstream.
Step 2: add a Webhooks by Zapier action
This is where the RoxyAPI call happens.
- In your Zap, click the
+to add a new step - Search for Webhooks by Zapier and select it
- Pick the Action Event based on what you need:
- GET — for read endpoints like daily horoscopes, dream symbol lookups, hexagram readings
- POST — for endpoints that take a JSON body (natal chart, synastry, Vedic kundli, KP, numerology calculations)
- PUT — same field shape as POST. RoxyAPI does not currently use PUT, but it is available if you need it for a future endpoint
- Custom Request — for full control over method, headers, body, and response handling. Use this when GET or POST do not fit
- Click Continue
Step 3: configure the request (POST endpoint example)
For a POST endpoint like /astrology/natal-chart, configure the action as follows:
| Field | Value |
|---|---|
| URL | https://roxyapi.com/api/v2/astrology/natal-chart |
| Payload_type | JSON |
| Data | Map fields from your trigger here (see below) |
| Wrap Request In Array | No |
| File | (leave empty unless uploading a file) |
| Unflatten | Yes |
| Basic Auth | (leave empty — RoxyAPI uses header auth, not basic auth) |
| Headers | X-API-Key : your_roxyapi_key_here |
For the Data field, use the Zapier mapping panel to drag fields from your trigger into the body. For a natal chart from a form trigger, your Data block should look like this (where 1. references the upstream module ID):
| Key | Value |
|---|---|
datetime | (drag in the birth datetime from your form) |
latitude | (drag in the latitude) |
longitude | (drag in the longitude) |
timezone | (drag in the IANA zone, e.g. Europe/Istanbul) |
Click Continue, then Test action. Zapier sends a real request to RoxyAPI with your test data and shows the response. A healthy response looks like a JSON object with planets, houses, and aspects.
Step 3 (alt): GET endpoint example
For a GET endpoint like /astrology/horoscope/aries/daily, the setup is simpler:
| Field | Value |
|---|---|
| URL | https://roxyapi.com/api/v2/astrology/horoscope/aries/daily |
| Query String Params | (leave empty unless you need ?date=YYYY-MM-DD) |
| Send As JSON | Yes |
| JSON key | (leave empty — pull all fields from the response) |
| Unflatten | Yes |
| Basic Auth | (leave empty — RoxyAPI uses header auth) |
| Headers | X-API-Key : your_roxyapi_key_here |
For dynamic signs (the user picks Leo, Aries, etc.), drag the trigger field into the URL path itself by replacing aries with the mapped field. Zapier replaces it at runtime.
A successful test response:
{
"sign": "Aries",
"date": "2026-04-13",
"overview": "Today, your natural leadership shines through...",
"love": "Venus in your 5th house favours playful encounters...",
"career": "Mars supports decisive action on a stalled project...",
"luckyNumber": 7,
"luckyColor": "Red",
"moonSign": "Libra",
"energyRating": 8
}
Every field above (overview, luckyNumber, moonSign, etc.) is now mappable in any downstream action.
Zapier stores the Headers field value in plain text inside your Zap's configuration. Anyone with edit access to the Zap can see your API key. For production Zaps, use Zapier's Storage by Zapier or a separate Stored Value to hold the key, or rotate the key regularly. Zapier does not currently have a "secrets" feature comparable to Make's keychain or n8n's credentials.
Step 4: use the response in downstream actions
After Webhooks by Zapier, every field in the RoxyAPI response is available as a draggable variable in subsequent actions. Common patterns:
- Email by Zapier — email the daily horoscope to a subscriber list. Drag
overview,love,careerinto the email body - Slack > Send Channel Message — post the daily tarot card to a team channel
- Google Sheets > Create Spreadsheet Row — log the response for analytics
- Mailchimp > Add Subscriber — add the user to a segment based on their numerology results
- OpenAI > Chat Completion — feed the structured RoxyAPI response into an LLM for personalised interpretation
Custom Request action: the power-user path
If GET and POST do not give you the control you need (for example, you want to set extra headers, customize the body parser, or use PUT/PATCH), pick Custom Request instead.
| Field | Value |
|---|---|
| Method | GET, POST, PUT, PATCH, DELETE |
| URL | https://roxyapi.com/api/v2/astrology/natal-chart |
| Data Pass-Through? | No (you are sending a manually constructed body) |
| Data | Raw request body (JSON string for POST endpoints) |
| Unflatten | Yes |
| Basic Auth | (leave empty) |
| Headers | X-API-Key, Content-Type: application/json |
| Return Raw Response | No (let Zapier parse the JSON for you) |
For Custom Request POST with a JSON body, you must set Content-Type: application/json in the Headers field manually. Without it, Zapier sends the body as form-urlencoded and RoxyAPI's POST endpoints will reject the request.
Fallback: API key as a query parameter
If you hit a Zapier limitation that prevents you from setting custom headers, every RoxyAPI endpoint also accepts the key as a query parameter:
https://roxyapi.com/api/v2/astrology/horoscope/aries/daily?api_key=YOUR_KEY
Prefer the header method whenever you can. Query parameters end up in Zapier task history logs and any intermediate proxies. Headers are the safer home for secrets.
Test your API key outside Zapier first
Before you wire anything into a Zap, confirm your key works on its own. Open a terminal and run:
curl "https://roxyapi.com/api/v2/astrology/horoscope/aries/daily" \
-H "X-API-Key: YOUR_KEY"
If that prints JSON, the key is good and any error you see in Zapier is an action config issue, not a RoxyAPI issue. If it returns 401, the key is wrong. Check at your account page.
Troubleshooting
401 api_key_required
{
"error": "API key is required. Provide via X-API-Key header or api_key query param",
"code": "api_key_required"
}
Zapier did not attach the header. Open the action and check:
- The Headers section has an entry with the key spelled exactly
X-API-Key(hyphens required, case does not matter, spelling does) - The value has your full key with no leading or trailing spaces, no quotes
- You are using the Webhooks by Zapier action with POST, GET, or Custom Request — not the Catch Hook trigger
401 invalid_api_key
The header reached the server but the key value is wrong. Re-paste the key from your account, strip whitespace, and update the action.
429 rate_limited
You hit your plan quota. Every RoxyAPI response carries X-RateLimit-Remaining and X-RateLimit-Reset headers. Add a Delay by Zapier step before high-frequency loops, batch your scenario with a less aggressive Schedule trigger, or upgrade on the pricing page.
404 not_found with a suggestion field
{
"error": "Not found",
"code": "not_found",
"suggestion": "Did you mean POST /astrology/natal-chart?",
"docs": "https://roxyapi.com/products/astrology-api"
}
The path is wrong. RoxyAPI returns the closest valid route in the suggestion field. Copy that path into the URL field of your action and re-test.
405 method_not_allowed
You used the wrong HTTP verb. The response allow array lists valid methods. Switch to a different Webhooks action (POST instead of GET, or vice versa) and re-test.
"Body sent but RoxyAPI rejects with validation error"
You used Custom Request with a JSON body but forgot the Content-Type: application/json header. Zapier defaults to form-urlencoded for raw Data. Add the header in the Headers field and re-test.
Action does not appear when I search for "Webhooks"
Webhooks by Zapier is a premium app. It is only available on paid Zapier plans (Professional and above). Upgrade your plan, or switch your workflow to use a regular app integration that already exists in Zapier.
Extend your integration
You have one endpoint working in Zapier. Adding the next 130 is the same pattern: drop another Webhooks by Zapier action, change the URL, change the body, the same X-API-Key header gets reused. Three places to find the next endpoint to wire up:
- Interactive API reference — Scalar-powered live docs for every endpoint across all 10 domains. Try a call in the browser with the pre-filled test key, see the exact request and response shape, then paste the URL and body into a new Webhooks action.
- Domain guides — short walkthroughs of which endpoints to call in what order:
- Western Astrology guide — natal charts, horoscopes, synastry, transits
- Vedic Astrology guide — kundli, Gun Milan, Vimshottari Dasha, panchang, KP
- Tarot guide — daily card, three-card, Celtic Cross, custom spreads
- Numerology guide — Life Path, Expression, Soul Urge, personal year
- Reuse the header. Every Webhooks action takes the same
X-API-Keyheader. Copy the header from one action to the next and you are 80% done.
The pattern is the same every time: horoscope today, compatibility tomorrow, kundli next week. One header, every endpoint unlocked.
What to build first
- Daily horoscope email to subscribers. Schedule (8 AM daily) → Webhooks GET
/astrology/horoscope/{sign}/daily→ Email by Zapier or Mailchimp Send Email. Add a Filter step or a Path step to fan out across all 12 signs. - Tarot card of the day to Slack. Schedule (cron) → Webhooks POST
/tarot/daily→ Slack Send Channel Message. Your team starts the day with a tarot card. - Webhook-powered Life Path calculator. Webhooks Catch Hook → Webhooks POST
/numerology/life-path→ Webhooks Catch Hook response. Point a no-code form at the webhook URL and you have a live numerology API with zero backend code. - Vedic kundli on form submit. Tally or Typeform trigger → Webhooks POST
/vedic-astrology/birth-chart→ Google Docs Create document → Convert to PDF → Email to user. Full kundli with nakshatra, Vimshottari Dasha, and panchang as a branded PDF report. - Dream journal with auto-interpretation. Email parser → Webhooks GET
/dreams/symbols→ Reply via email with matching symbols. - Weekly horoscope newsletter. Schedule (Monday 9 AM) → Path by Zapier (12 branches, one per sign) → 12 Webhooks GET actions → Mailchimp Send Campaign. One Zap, one campaign, every subscriber served.
- Zodiac compatibility on Telegram. Telegram Bot trigger → Parser (extract two signs from message) → Webhooks POST
/astrology/compatibility-score→ Telegram Bot Send Message with the score.
FAQ
How do I connect Zapier to RoxyAPI?
Add a Webhooks by Zapier action (POST, GET, or Custom Request), set the URL to a RoxyAPI endpoint, set Payload Type to JSON for POST endpoints, fill in the Data with mapped fields from your trigger, and add a Header with key X-API-Key and value your RoxyAPI key. Test the action and you have a working integration.
Is Webhooks by Zapier free?
Webhooks by Zapier has historically been classified as a premium app, available only on paid Zapier plans (Professional, $19.99/mo as of 2026). Zapier may have shifted this for some accounts — check your action picker. If Webhooks does not appear, premium gating is the most likely cause and you will need to upgrade.
Can I use this with the Zapier free plan?
Webhooks by Zapier is not available on the free plan. If you only need a free no-code option, consider n8n (free self-hosted, free cloud tier) or Make (generous free tier with the HTTP module included).
How do I store my API key securely in Zapier?
Zapier does not have a dedicated secrets feature like Make's keychain or n8n's credentials. The cleanest pattern is: store your key in a private Storage by Zapier value, then look it up in every action via a Storage by Zapier "Get Value" step. The key never appears as a literal string in your Zap configuration. Anyone with edit access to your Zap can still see the lookup, but they cannot see the value without Storage access.
Does Zapier have native MCP support?
Yes. Zapier MCP is available on every Zapier plan (Free, Professional, Team; Enterprise on request). However, Zapier MCP is positioned to expose Zapier's own actions as tools to AI agents (Claude, GPT, Cursor) — not the other way around. So you cannot yet use Zapier MCP to consume RoxyAPI's MCP server. Use the Webhooks by Zapier action path on this page instead. For direct MCP access to RoxyAPI from an AI agent, see our MCP setup guide.
How accurate are the astrology calculations under a Zap?
Every position comes from Roxy Ephemeris, verified against NASA JPL Horizons. See the methodology page for accuracy details. Same engine for every endpoint, regardless of which integration calls it.
How do I cache RoxyAPI responses to save quota?
Zapier does not have built-in HTTP caching. The closest pattern: store the response in Storage by Zapier keyed by date and sign (for example, horoscope_aries_2026-04-13), and check the storage first before calling RoxyAPI. Add a Filter step that only proceeds if the storage value is empty or stale. For high-volume Zaps, consider moving to Make or n8n which both have dedicated data store features.
Will my API key end up in exported Zap JSON?
Yes. Zapier stores Headers field values as plain text in the Zap configuration, and that configuration is part of any export. Do not share Zap exports without first removing the API key, or rotate the key after sharing.
Where do I get a RoxyAPI key?
Visit the pricing page for paid plans, or try the interactive API reference with a pre-filled test key first. Plans start at 5,000 requests per month.
Is there a native RoxyAPI Zapier app planned?
Not yet. If there is enough customer interest, we will build a native Zapier integration that exposes every RoxyAPI endpoint as a first-class Zapier action with proper credential storage. Reply to your onboarding email and tell us. Enough requests and we will ship one.