- Docs
- Getting Started
- Quickstart
Quickstart
Your first API call in 60 seconds. No setup, no SDK, no domain knowledge.
1. Get your API key
Go to roxyapi.com/pricing and pick a plan. Your API key is delivered instantly after checkout. No account, no approval process.
2. Make your first call
A terminal is the app on your computer where you type commands. On Mac, search for "Terminal". On Windows, search for "PowerShell". Paste the command below and press Enter:
curl -X POST https://roxyapi.com/api/v2/tarot/daily \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
-d '{}'
Replace YOUR_API_KEY with the key you got from checkout.
What is curl? It is a command-line tool that sends HTTP requests. Think of it like a browser that runs in your terminal instead of a window. The
-Hflags are headers (metadata sent with the request) and-dis the data you are sending.
3. See the response
You get clean JSON back:
{
"date": "2026-03-15",
"card": {
"name": "The Star",
"arcana": "major",
"keywords": ["Hope", "faith", "renewal"],
"meaning": "A welcome reprieve after upheaval...",
"imageUrl": "https://roxyapi.com/img/tarot/major/star.jpg"
},
"dailyMessage": "Your card for today: The Star..."
}
That is it. You just pulled a tarot card from an API. Every Roxy endpoint works the same way: send a request, get structured data back.
The same thing in JavaScript
If you are working in a code editor (VS Code, Cursor, Replit), here is the equivalent using fetch() — the built-in way JavaScript makes HTTP requests:
// fetch() sends an HTTP request to a URL and returns the response
const response = await fetch('https://roxyapi.com/api/v2/tarot/daily', {
// POST means "send data to the server" (vs GET which just retrieves)
method: 'POST',
headers: {
// tells the server we are sending JSON data
'Content-Type': 'application/json',
// your API key — the server checks this before responding
'X-API-Key': 'YOUR_API_KEY'
},
// the data you are sending, converted to a JSON string
body: JSON.stringify({})
});
// parse the JSON response into a JavaScript object
const data = await response.json();
console.log(data.card.name); // "The Star"
console.log(data.card.meaning); // "A welcome reprieve after upheaval..."
What is
await? API calls take time (your code sends a request over the internet and waits for a response).awaittells JavaScript to pause until the response arrives. You can only useawaitinside anasyncfunction.
Try more endpoints
# Numerology: Life Path number
curl -X POST https://roxyapi.com/api/v2/numerology/life-path \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
-d '{"year": 1990, "month": 7, "day": 15}'
# Western Astrology: Daily horoscope
curl https://roxyapi.com/api/v2/astrology/horoscope/aries/daily \
-H "X-API-Key: YOUR_API_KEY"
# Dream interpretation: Look up a symbol
curl https://roxyapi.com/api/v2/dreams/symbols/water \
-H "X-API-Key: YOUR_API_KEY"
4. Build a web page
Now turn that API call into something you can open in a browser. Create a file called index.html and paste this:
<!DOCTYPE html>
<html>
<head>
<title>My Numerology App</title>
<style>
body { font-family: system-ui; max-width: 500px; margin: 40px auto; padding: 0 20px; }
button { padding: 10px 20px; cursor: pointer; font-size: 16px; }
#result { margin-top: 20px; padding: 20px; background: #f5f5f5; border-radius: 8px; display: none; }
</style>
</head>
<body>
<h1>Life Path Calculator</h1>
<p>Enter your birth date:</p>
<input type="date" id="birthdate" />
<button onclick="calculate()">Calculate</button>
<div id="result"></div>
<script>
async function calculate() {
const date = new Date(document.getElementById('birthdate').value);
const response = await fetch('https://roxyapi.com/api/v2/numerology/life-path', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-API-Key': 'YOUR_API_KEY'
},
body: JSON.stringify({
year: date.getFullYear(),
month: date.getMonth() + 1,
day: date.getDate()
})
});
const data = await response.json();
const el = document.getElementById('result');
el.style.display = 'block';
el.innerHTML = '<h2>Life Path ' + data.number + ': ' + data.meaning.title + '</h2>'
+ '<p>' + data.meaning.description + '</p>';
}
</script>
</body>
</html>
Replace YOUR_API_KEY with your key, then double-click the file to open it in your browser. Pick a birth date, click Calculate, and see a full Life Path interpretation. The same pattern works for any Roxy endpoint.
Important: This example puts the API key directly in browser code, which is fine for learning and testing. In a real app, call Roxy from your backend server so users cannot see your key. See Authentication for details.
What is next
- Authentication — how API keys work, headers, and keeping your key safe
- Starter Apps — clone a production-ready app and ship in 30 minutes
- AI Prompts — paste into Cursor or Claude and build without writing code
- API Reference — browse all 110+ endpoints with live testing