LifeAstroAPILifeAstroAPI

API Reference / Tarot / Tarot

GET
10 credits

/v1/tarot/daily

Deterministic daily card — same card for all readers on the same date.

Request

All requests require an Authorization header with your dv_live_* API key.

example request
curl "https://api.lifeastroapi.com/v1/tarot/daily?date=2027-01-15" \
  -H "Authorization: Bearer YOUR_API_KEY"

Query parameters

Checked against the API: a parameter is marked required when the request fails without it.

NameRequiredExampleDescription
dateno2027-01-15Date (YYYY-MM-DD).

Response (200 OK)

The real response to the example request above, generated from the API itself. Long arrays are trimmed to their first two items. Field names are stable across versions.

200 response
{
  "date": "2027-01-15",
  "card": {
    "id": 14,
    "name": "Temperance",
    "number": "XIV",
    "suit": "Major Arcana",
    "element": "Fire",
    "archetype": "Patient alchemy — the mixing of opposites into something neither could be alone",
    "keywords": [
      "balance",
      "moderation"
    ],
    "keywords_reversed": [
      "imbalance",
      "excess"
    ],
    "meaning": "The angel Temperance pours water between two cups — one gold, one silver, one the past, one the future — with one foot on solid earth and one in the flowing river. The process here is slow and deliberate: the mixing of apparent opposites into something that could not exist wit…",
    "meaning_reversed": "Temperance reversed marks excess, imbalance, or the impatience that interrupts a process before it can complete. Something is being pushed beyond its natural rate of development, or two things that need to find their correct proportion are being kept separate or forced into a …",
    "yes_no": "yes"
  },
  "reversed": false,
  "message": "Today's card is Temperance (Major Arcana), upright. The angel Temperance pours water between two cups — one gold, one silver, one the past, one the future — with one foot on solid earth and one in the flowing river. The process here is slow and deliberate: the mixing of appare…"
}

Errors

Every error follows the same envelope. Use the error.code field (not the message) for conditional logic in your integration.

401 Unauthorized

{
  "error": {
    "code": "unauthorized",
    "message": "missing or invalid API key",
    "request_id": "req_01hqy7k8c3e7m1n"
  }
}

402 Payment Required

{
  "error": {
    "code": "trial_exhausted",
    "message": "your free trial credits are exhausted — pick a plan to continue",
    "top_up_url": "https://lifeastroapi.com/pricing",
    "request_id": "req_01hqy7k8c3e7m1n"
  }
}

429 Too Many Requests

{
  "error": {
    "code": "rate_limited",
    "message": "rate limit exceeded; retry after 12 seconds",
    "request_id": "req_01hqy7k8c3e7m1n"
  }
}

Try it

Get a dv_live_* key from your dashboard and paste into the cURL snippet above. New accounts get 1,500 free credits. Sign up.