Tarot API
App · Misc References · 10 actions
Read tarot cards from Tarot API, the free reference for the 78 cards of the Rider-Waite-Smith deck. Draw a card of the day, deal a whole spread with every card in its position and the reading written out ready for a model to interpret, or look one card up by name and get both of its meanings. Browse the deck by suit, by court rank, by number or by a search across every card's description and meanings. Card names, descriptions and divinatory meanings come from A. E. Waite's 'The Pictorial Key to the Tarot' (1910), the companion to the deck most modern decks are based on. No account or API key required.
Actions
| Action | What it does |
|---|---|
| Draw a tarot card | Draw one card at random and get it the way up it came out, with the meaning that applies. |
| Draw a tarot spread | Draw a whole spread and lay it out: every card gets the position it was dealt into, from a three-card past, present and future to a ten-card Celtic cross. |
| Draw several tarot cards | Draw a number of cards at random, each one read the way it came out. |
| Get a suit's cards | Get the fourteen cards of one suit, in order from the Ace to the King, along with the element the suit is read as and the other names it goes by. |
| Get a tarot card | Look one card up by name and get both its meanings and Waite's description of its picture. |
| Get every tarot card | Get the whole 78-card deck, each card with its meanings and its description, for building a reference table or seeding a database. |
| Get one number across the suits | Get the same number in all four suits at once, e.g. all four Fours or all four Queens, which is how a repeated number in a reading is looked into. |
| Get the court cards | Get the court cards, all sixteen of them or the four of one rank. |
| Get the major arcana | Get the twenty-two trumps in trump order, from The Fool at 0 to The World at 21. |
| Search tarot cards | Search the deck by text, suit, number or arcana. |
Draw a tarot card
Draw one card at random and get it the way up it came out, with the meaning that applies. Use it for a card of the day, a daily message to a channel, or a prompt for a model to write around. The API only ever ships both meanings side by side, so the orientation and the meaning that goes with it are worked out here. No API key required.
Inputs
- Allow reversed cards
allow_reversedtrue/false - Optional. Let a card come out reversed, which is decided here by a coin flip per card because the API has no notion of an orientation. On by default. Turn it off for an upright-only reading, which is how many readers work.Default:
true.
Outputs
arcanatext- 'major' or 'minor'.
cardobject- The card that was drawn, in full.
descriptiontext- Waite's description of the card's picture.
is_reversedtrue/false- True when the card came out reversed.
keywordslist- That meaning split into its separate terms.
meaningtext- The meaning for the way it came out, which is the field a reading should print.
nametext- The card's name, lifted out so a message can use it without reaching into the card.
orientationtext- 'upright' or 'reversed'.
suittext- The card's suit, or null when it is one of the 22 trumps.
Example output
{
"arcana": "major",
"card": {
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"is_reversed": false,
"keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"meaning": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"orientation": "upright",
"position": null,
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
},
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice.",
"is_reversed": false,
"keywords": [
"Folly",
"mania",
"extravagance"
],
"meaning": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"orientation": "upright",
"suit": null
}Draw a tarot spread
Draw a whole spread and lay it out: every card gets the position it was dealt into, from a three-card past, present and future to a ten-card Celtic cross. The reading comes back written out as text as well as card by card, so a following step can hand it straight to a model or paste it into a message. No API key required.
Inputs
- Spread
spreadtext - Which layout to deal. Each one fixes how many cards are drawn and what each position is read as.One of:
single(One card),three_card(Past, present, future (3 cards)),situation(Situation, action, outcome (3 cards)),horseshoe(Horseshoe (7 cards)),celtic_cross(Celtic cross (10 cards)). Default:three_card. - Allow reversed cards
allow_reversedtrue/false - Optional. Let a card come out reversed, which is decided here by a coin flip per card because the API has no notion of an orientation. On by default. Turn it off for an upright-only reading, which is how many readers work.Default:
true. - Question
questiontext - Optional. What the reading is about. It is not sent anywhere, only carried through onto the written-out reading so a model reading it knows what was asked.
Outputs
allow_reversedtrue/false- Whether this draw was allowed to turn cards up reversed.
cardslist- The cards, in the order they were dealt, each carrying the position it landed in.
countnumber- How many cards came back in this result.
is_completetrue/false- True when every position in the layout got a card.
nameslist- Just the card names, for a message or a check that does not need the whole record.
positionslist- What each position in this layout is read as, in order.
questiontext- The question that was asked, carried through. Null when none was given.
readingtext- The whole spread written out, one numbered line per position with the card, its orientation and its meaning. This is the field to hand to a model or paste into a message.
reversed_countnumber- How many of the drawn cards came out reversed.
spreadtext- Which layout was dealt, as its stored value.
spread_nametext- The layout's name, e.g. 'Celtic cross'.
upright_countnumber- How many came out upright.
Example output
{
"allow_reversed": true,
"cards": [
{
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"is_reversed": false,
"keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"meaning": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"orientation": "upright",
"position": "The past",
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
}
],
"count": 3,
"is_complete": true,
"names": [
"The Fool",
"Queen of Cups",
"Ace of Wands"
],
"positions": [
"The past",
"The present",
"The future"
],
"question": "What should I focus on this week?",
"reading": "Past, present, future\nQuestion: What should I focus on this week?\n1. The past: The Fool (upright) - Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"reversed_count": 1,
"spread": "three_card",
"spread_name": "Past, present, future",
"upright_count": 2
}Draw several tarot cards
Draw a number of cards at random, each one read the way it came out. The cards are unique: a draw takes each card at most once, the way a shuffled deck does. Asking for more than the 78 the deck holds is refused here rather than quietly answered with the whole deck, which is what the API does. No API key required.
Inputs
- How many cards
countnumber - How many cards to draw, 1 to 78. Three by default. Each card comes up at most once.From 1 to 78. Default:
3. - Allow reversed cards
allow_reversedtrue/false - Optional. Let a card come out reversed, which is decided here by a coin flip per card because the API has no notion of an orientation. On by default. Turn it off for an upright-only reading, which is how many readers work.Default:
true.
Outputs
allow_reversedtrue/false- Whether this draw was allowed to turn cards up reversed.
cardslist- The cards that were drawn, in the order they came out.
countnumber- How many cards came back in this result.
deck_sizenumber- How many cards a tarot deck holds, which is always 78.
firstobject- The first card drawn, lifted out of the list so a message can use it without indexing. Null when nothing came back.
nameslist- Just the card names, for a message or a check that does not need the whole record.
requested_countnumber- How many cards were asked for, so a short answer from the service is visible.
reversed_countnumber- How many of the drawn cards came out reversed.
upright_countnumber- How many came out upright.
Example output
{
"allow_reversed": true,
"cards": [
{
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"is_reversed": false,
"keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"meaning": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"orientation": "upright",
"position": null,
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
}
],
"count": 3,
"deck_size": 78,
"first": {
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"is_reversed": false,
"keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"meaning": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"orientation": "upright",
"position": null,
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
},
"names": [
"The Fool",
"Queen of Cups",
"Ace of Wands"
],
"requested_count": 3,
"reversed_count": 1,
"upright_count": 2
}Get a suit's cards
Get the fourteen cards of one suit, in order from the Ace to the King, along with the element the suit is read as and the other names it goes by. Wands, cups, swords and pentacles are the names the API takes; coins, disks, staves, rods, batons, chalices and blades are translated to them here rather than coming back as a missing suit. No API key required.
Inputs
- Suit
suittextRequired - Which of the four suits. Other names for the same suits are accepted and translated: coins or disks for pentacles, staves, rods or batons for wands, chalices for cups, blades for swords.One of:
wands(Wands (Fire)),cups(Cups (Water)),swords(Swords (Air)),pentacles(Pentacles (Earth)).
Outputs
also_known_aslist- The other names this suit goes by in older and non-English decks, e.g. coins and disks for pentacles.
cardslist- The suit's cards, Ace through King.
countnumber- How many cards came back in this result.
court_cardslist- The names of the suit's four court cards, Page through King.
elementtext- The element the suit is read as: Fire for wands, Water for cups, Air for swords, Earth for pentacles.
expected_countnumber- How many cards a complete answer holds, since the deck is fixed.
is_completetrue/false- True when every card that should be here is. False means the service answered with fewer than the deck holds, which is worth noticing rather than reading as an empty category.
nameslist- Just the card names, for a message or a check that does not need the whole record.
numbered_cardslist- The names of the suit's ten numbered cards.
suittext- The suit that was fetched, as the API spells it, after any other name for it was translated.
suit_display_nametext- The same suit capitalized, for a message.
total_matchednumber- How many cards the API matched, from the 'nhits' it reports. The API has no paging, so this is the whole match rather than one page of it, and it differs from 'count' only when a limit here cut the list short.
Example output
{
"also_known_as": [
"coins",
"disks"
],
"cards": [
{
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
}
],
"count": 14,
"court_cards": [
"Page of Pentacles",
"Knight of Pentacles",
"Queen of Pentacles",
"King of Pentacles"
],
"element": "Earth",
"expected_count": 14,
"is_complete": true,
"names": [
"Ace of Pentacles",
"Two of Pentacles"
],
"numbered_cards": [
"Ace of Pentacles",
"Two of Pentacles"
],
"suit": "pentacles",
"suit_display_name": "Pentacles",
"total_matched": 14
}Get a tarot card
Look one card up by name and get both its meanings and Waite's description of its picture. Takes a full name ('The Fool'), a short name ('ar00') or part of a name ('hanged'). The API's search matches on descriptions and meanings too, so this step matches on the name only and falls back to reading the deck, which is what makes it a lookup rather than a search. No API key required.
Inputs
- Card
cardtextRequired - The card to look up: a name such as 'The Fool' or 'Ace of Cups', a short name such as 'ar00', or part of a name such as 'hanged'. When part of a name matches several cards the lowest-numbered one is returned and the rest are listed in 'other matches'.
Outputs
arcanatext- 'major' or 'minor'.
cardobject- The card that was found, in full.
descriptiontext- Waite's description of the card's picture.
matched_exactlytrue/false- True when the name given was this card's name or short name. False means it was part of a name and this was the best match, so check 'other matches'.
meaning_reversedtext- What it means reversed.
meaning_uprighttext- What it means upright.
nametext- The card's name.
name_shorttext- The card's short name, e.g. 'ar00'.
other_matcheslist- The names of the other cards the text matched, empty when the match was exact.
reversed_keywordslist- The reversed meaning split into its terms.
suittext- The card's suit, or null for a trump.
upright_keywordslist- The upright meaning split into its terms.
valuetext- What the card's number is called.
value_intnumber- The same number as an integer.
Example output
{
"arcana": "major",
"card": {
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
},
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice.",
"matched_exactly": true,
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"other_matches": [],
"reversed_keywords": [
"Negligence",
"absence",
"distribution"
],
"suit": null,
"upright_keywords": [
"Folly",
"mania",
"extravagance"
],
"value": "0",
"value_int": 0
}Get every tarot card
Get the whole 78-card deck, each card with its meanings and its description, for building a reference table or seeding a database. The API sends the deck in one answer and has no paging, so a limit here shortens the result rather than saving a request. No API key required.
Inputs
- Limit
limitnumber - Optional. Return at most this many cards. Left blank, every card that matched comes back. The API sends its whole answer at once, so this shortens the result rather than saving a request, and 'total matched' still reports the full count.From 1 to 78.
- Skip
offsetnumber - Optional. Skip this many cards before the ones that come back, so a workflow can walk the deck in chunks. 0 by default.From 0 to 78. Default:
0.
Outputs
cardslist- The cards in this window of the deck.
countnumber- How many cards came back in this result.
deck_sizenumber- How many cards a tarot deck holds, which is always 78.
has_moretrue/false- True when there are cards after this window.
is_complete_decktrue/false- True when the API sent all 78 cards, before any limit here was applied.
limitnumber- The limit that was applied, or null for none.
nameslist- Just the card names, for a message or a check that does not need the whole record.
next_offsetnumber- The 'Skip' that fetches the next window. Null at the end of the deck.
offsetnumber- How many cards were skipped.
total_countnumber- How many cards the API sent, from the 'nhits' it reports. 78 for a healthy service.
Example output
{
"cards": [
{
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
}
],
"count": 78,
"deck_size": 78,
"has_more": false,
"is_complete_deck": true,
"limit": null,
"names": [
"The Fool",
"The Magician",
"The High Priestess"
],
"next_offset": null,
"offset": 0,
"total_count": 78
}Get one number across the suits
Get the same number in all four suits at once, e.g. all four Fours or all four Queens, which is how a repeated number in a reading is looked into. A number search can also match the trump that carries it, so the answer is filtered to exactly the arcana asked for and the trump is reported separately when it is wanted. No API key required.
Inputs
- Number
valuenumberRequired - The number to fetch. A suit runs 1 (Ace) to 14 (King), with 11 to 14 being the Page, Knight, Queen and King. Turn on 'Include the major arcana' to reach 0 to 21, which is the range the trumps use.From 0 to 21.
- Include the major arcana
include_major_arcanatrue/false - Optional. Also return the trump that carries this number, e.g. The Emperor alongside the four Fours. Off by default, which is what makes the answer the four suit cards and nothing else.Default:
false.
Outputs
cardslist- The cards carrying this number.
countnumber- How many cards came back in this result.
expected_countnumber- How many cards a complete answer holds, since the deck is fixed.
include_major_arcanatrue/false- Whether the trumps were included.
is_completetrue/false- True when every card that should be here is. False means the service answered with fewer than the deck holds, which is worth noticing rather than reading as an empty category.
major_arcanalist- The names of any trumps carrying this number, empty unless 'Include the major arcana' was on.
nameslist- Just the card names, for a message or a check that does not need the whole record.
suits_coveredlist- Which suits the number was found in. All four for a complete answer.
total_matchednumber- How many cards the API matched, from the 'nhits' it reports. The API has no paging, so this is the whole match rather than one page of it, and it differs from 'count' only when a limit here cut the list short.
valuenumber- The number that was asked for.
value_nametext- What that number is called, e.g. 'ace' or 'queen', taken from the cards themselves.
Example output
{
"cards": [
{
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
}
],
"count": 4,
"expected_count": 4,
"include_major_arcana": false,
"is_complete": true,
"major_arcana": [],
"names": [
"Four of Wands",
"Four of Cups",
"Four of Swords",
"Four of Pentacles"
],
"suits_covered": [
"cups",
"pentacles",
"swords",
"wands"
],
"total_matched": 4,
"value": 4,
"value_name": "four"
}Get the court cards
Get the court cards, all sixteen of them or the four of one rank. These are the cards usually read as people, so this is the step for a reading about who is involved rather than what is happening. A rank can be given singular or plural, and the names other decks use are accepted: a Thoth Princess is a Page, a Prince is a Knight. No API key required.
Inputs
- Rank
ranktext - Optional. Narrow to one rank's four cards. Left as any, all sixteen court cards come back. Plurals ('queens'), other decks' names ('princess', 'prince') and a playing card's 'jack' are all understood.One of:
any(All sixteen court cards),page(Pages),knight(Knights),queen(Queens),king(Kings). Default:any.
Outputs
cardslist- The court cards that came back.
countnumber- How many cards came back in this result.
expected_countnumber- How many cards a complete answer holds, since the deck is fixed.
is_completetrue/false- True when every card that should be here is. False means the service answered with fewer than the deck holds, which is worth noticing rather than reading as an empty category.
nameslist- Just the card names, for a message or a check that does not need the whole record.
ranktext- The rank that was fetched, singular and lower-case. Null when every rank was.
ranks_includedlist- Which ranks are present in the result.
suits_includedlist- Which suits are present in the result.
total_matchednumber- How many cards the API matched, from the 'nhits' it reports. The API has no paging, so this is the whole match rather than one page of it, and it differs from 'count' only when a limit here cut the list short.
Example output
{
"cards": [
{
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
}
],
"count": 4,
"expected_count": 4,
"is_complete": true,
"names": [
"Queen of Wands",
"Queen of Cups",
"Queen of Swords",
"Queen of Pentacles"
],
"rank": "queen",
"ranks_included": [
"queen"
],
"suits_included": [
"cups",
"pentacles",
"swords",
"wands"
],
"total_matched": 4
}Get the major arcana
Get the twenty-two trumps in trump order, from The Fool at 0 to The World at 21. These are the cards read as the big themes of a reading rather than its details. The API returns them in no particular order, so they are sorted here. No API key required.
Inputs
None.
Outputs
cardslist- The trumps, in order from 0 to 21.
countnumber- How many cards came back in this result.
expected_countnumber- How many cards a complete answer holds, since the deck is fixed.
firstobject- The lowest-numbered trump, which is The Fool. Null when nothing came back.
is_completetrue/false- True when every card that should be here is. False means the service answered with fewer than the deck holds, which is worth noticing rather than reading as an empty category.
lastobject- The highest-numbered trump, which is The World. Null when nothing came back.
nameslist- Just the card names, for a message or a check that does not need the whole record.
total_matchednumber- How many cards the API matched, from the 'nhits' it reports. The API has no paging, so this is the whole match rather than one page of it, and it differs from 'count' only when a limit here cut the list short.
Example output
{
"cards": [
{
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
}
],
"count": 22,
"expected_count": 22,
"first": {
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
},
"is_complete": true,
"last": {
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
},
"names": [
"The Fool",
"The Magician",
"The High Priestess"
],
"total_matched": 22
}Search tarot cards
Search the deck by text, suit, number or arcana. The text search runs over everything a card carries, its description and both its meanings included, so searching 'love' finds every card whose meaning speaks of it rather than only cards named for it. Leave everything blank to get the whole deck. No API key required.
Inputs
- Search text
querytext - Optional. Text to look for, matched without regard to case across the card's name, description and both meanings. To find one card by name, use 'Get a tarot card' instead.
- Suit
suittext - Optional. Only return cards of this suit. Coins, disks, staves, rods, batons, chalices and blades are accepted as other names for the same four suits.One of:
any(Any suit),wands(Wands (Fire)),cups(Cups (Water)),swords(Swords (Air)),pentacles(Pentacles (Earth)). Default:any. - Number
valuenumber - Optional. Only return cards carrying this number. A suit runs 1 (Ace) to 14 (King), with 11 to 14 being the Page, Knight, Queen and King; the trumps run 0 to 21.From 0 to 21.
- Arcana
arcanatext - Optional. Narrow to the 22 trumps or the 56 suit cards.One of:
any(Either arcana),major(Major arcana (the 22 trumps)),minor(Minor arcana (the 56 suit cards)). Default:any. - Limit
limitnumber - Optional. Return at most this many cards. Left blank, every card that matched comes back. The API sends its whole answer at once, so this shortens the result rather than saving a request, and 'total matched' still reports the full count.From 1 to 78.
Outputs
arcanatext- The arcana that was filtered on, or null.
cardslist- The cards that matched.
countnumber- How many cards came back in this result.
firstobject- The first matching card, lifted out of the list. Null when nothing matched.
has_cardstrue/false- True when anything matched. Branch on this rather than on the list being empty.
nameslist- Just the card names, for a message or a check that does not need the whole record.
querytext- The text that was searched for, or null.
suittext- The suit that was filtered on, after any other name for it was translated. Null when no suit was set.
total_matchednumber- How many cards the API matched, from the 'nhits' it reports. The API has no paging, so this is the whole match rather than one page of it, and it differs from 'count' only when a limit here cut the list short.
truncatedtrue/false- True when a limit cut the list short, so 'total matched' is larger than 'count'.
valuenumber- The number that was filtered on, or null.
Example output
{
"arcana": "major",
"cards": [
{
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
}
],
"count": 1,
"first": {
"arcana": "major",
"court_rank": null,
"desc": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"description": "With light step, as if earth and its trammels had little power to restrain him, a young man in gorgeous vestments pauses at the brink of a precipice among the great heights of the world.",
"is_court_card": false,
"is_major_arcana": true,
"meaning_rev": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_reversed": "Negligence, absence, distribution, carelessness, apathy, nullity, vanity.",
"meaning_up": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"meaning_upright": "Folly, mania, extravagance, intoxication, delirium, frenzy, bewrayment.",
"name": "The Fool",
"name_short": "ar00",
"reversed_keywords": [
"Negligence",
"absence",
"distribution",
"carelessness",
"apathy",
"nullity",
"vanity"
],
"suit": null,
"type": "major",
"upright_keywords": [
"Folly",
"mania",
"extravagance",
"intoxication",
"delirium",
"frenzy",
"bewrayment"
],
"value": "0",
"value_int": 0
},
"has_cards": true,
"names": [
"The Fool"
],
"query": "fool",
"suit": null,
"total_matched": 1,
"truncated": false,
"value": null
}