/api/astro/tarot/spread/1 creditTarot spread
A named spread with every position labelled. Six layouts, from a single card to the ten-card Celtic Cross — also past/present/future, situation/action/outcome, a five-card relationship spread and the seven-card horseshoe. The labels are the point. Three unlabelled cards are three cards; "Past, Present, Future" is a reading. Each card comes back with the position it fell in and what that position stands for. Every response carries the `seed` that produced it, and sending that seed back reproduces the draw exactly — same cards, same order, same way up. Omit it and one is generated and returned, so a fresh draw is the default and repeating it afterwards is always possible. This is what lets a client store a reading and show it again rather than handing the querent a different answer to the same question.
https://yogataraapi.prahlad.app/api/astro/tarot/spread/Authentication
Send your key in the X-API-Key header. Keys are server-side credentials — never put one in browser JavaScript or a mobile app.
X-API-Key: yt_live_a1b2c3d4_…
Content-Type: application/jsonRequest fields
| Field | Type | Required | Notes |
|---|---|---|---|
| allow_reversed | boolean | optional | Whether cards can come up reversed. Some readers work upright-only. |
| question | string | optional | Optional. Echoed back, and folded into a generated seed. |
| reversal_chance | number (double) | optional | Probability of a reversal, when reversals are allowed. min 0 · max 1 |
| seed | string | optional | Send a seed to reproduce a draw exactly. Omit it and one is generated and returned, so any draw can be repeated afterwards. |
| spread | string | optional | Which named spread to lay out. celtic_crosshorseshoeone_cardrelationshipsituationthree_card |
Example request
curl -X POST https://yogataraapi.prahlad.app/api/astro/tarot/spread/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"question":"How is this relationship placed?","spread":"three_card","seed":"sample-spread"}'Response
{
"data": {
"question": "How is this relationship placed?",
"seed": "sample-spread",
"reproducible": "Send this seed back to get exactly this draw again.",
"deck": "Rider-Waite-Smith, 78 cards",
"reversals_allowed": true,
"cards": [
{
"position": 1,
"id": 51,
"name": "Two of Swords",
"arcana": "minor",
"suit": "Swords",
"rank": "Two",
"number": 2,
"element": "air",
"upright": "stalemate, a decision deferred, blindfolded",
"reversed": "the blindfold lifted, deciding",
"orientation": "upright",
"meaning": "stalemate, a decision deferred, blindfolded",
"yes_no": "maybe",
"position_name": "Past"
},
{
"position": 2,
"id": 59,
"name": "Ten of Swords",
"arcana": "minor",
"suit": "Swords",
"rank": "Ten",
"number": 10,
"element": "air",
"upright": "an ending, rock bottom, the worst passed",
"reversed": "recovery, the only way is up",
"orientation": "reversed",
"meaning": "recovery, the only way is up",
"yes_no": "yes",
"position_name": "Present"
},
{
"position": 3,
"id": 30,
"name": "Nine of Wands",
"arcana": "minor",
"suit": "Wands",
"rank": "Nine",
"number": 9,
"element": "fire",
"upright": "resilience, the last stretch, guarded",
"reversed": "exhaustion, defensiveness",
"orientation": "upright",
"meaning": "resilience, the last stretch, guarded",
"yes_no": "maybe",
"position_name": "Future"
}
],
"spread": "three_card",
"spread_name": "Past, present, future",
"positions": [
"Past",
"Present",
"Future"
],
"count": 3
},
"status": 200,
"is_error": false,
"message": "successful"
}Captured from a real call using the exact request above. Results sit under data.
Errors
Metering errors return { "error": "…", "message": "<code>", "is_error": true }. Show error to people and branch on message. See the error reference.