# Τάρο

Τρεις κολόδες: Rider-Waite-Smith (78 κάρτες), Μαρσελίτικο Τάρο (78) και Lenormand (36). Κάθε κάρτα σε κάθε απάντηση ταρό έχει εικόνα, και το `POST /v1/interpret/tarot` μετατρέπει τον διάagrama σε ερμηνεία: η κάθε θέση στο πλαίσιο, το σύνολο του διαγράμματος και μία σύσταση.

## Ορίστε το στυλ των καρτών

`GET /v1/tarot/decks` επιστρέφει κάθε κολόδο, τα διαγράμματα της και τα σύνολα στυλ που μπορούν να δοθούν ως `art` σε οποιοδήποτε δromo ταρό (στο σώμα POST ή ως `?art=` σε GET). Όλα τα σύνολα είναι δημόσια κτήνη και παρέχονται από το CDN μας.

| Κολόδα | `art` | Κάρτες |
|---|---|---|
| Rider-Waite-Smith | `rws-1909` (προεπιλογή), `rws-restored`, `rws-vector` | 78 |
| Μαρσεльське Таρο | `arnoult-1748` | 78 |
| Ленорман | `dondorf` | 35 από 36, χωρίς Μήνα |

Κάθε κάρτα λαμβάνει ένα `image` με `urlSmall` (300 πξ πλατύς, για κάρτες έως περίπου 150 πξ στη σελίδα), `url` (600 πξ), `url2x` (1200 πξ), `width`, `height` και `art`. Ο διάγραμμα επιστρέφει επίσης το `back`, το πίσω μέρος της κάρτας, ώστε η σελίδα να μπορεί πρώτα να εμφανίσει τις κάρτες με το πρόσωπο κάτω. Το `art` άλλης κολόδας επιστρέφει `400 INVALID_ART` με λίστα των επιτρεπτών. Η κάρτα για την οποία δεν υπάρχει εικόνα στο σύνολο (Ο Μήνας στο Lenormand) είναι καθορισμένη στο `missing` αυτού του συνόλου και έρχεται χωρίς `image`, άρα εμφανίστε για αυτή κείμενο κάρτα.

<Tabs>
  <TabItem label="cURL">
    ```bash frame="terminal"
    curl -X POST https://api.astroway.info/v1/tarot/rider-waite/draw/three-card \
      -H "X-Api-Key: aw_live_your_key_here" \
      -H "Content-Type: application/json" \
      -d '{ "seed": 12345, "art": "rws-restored" }'
    ```
  </TabItem>
</Tabs>

```json
{
  "drawn": [
    {
      "position": { "index": 0, "name": "Past", "meaning": "Forces from the past shaping the situation." },
      "card": {
        "slug": "8-of-pentacles",
        "name": "Eight of Pentacles",
        "image": {
          "url": "https://cdn.astroway.info/tarot/rws-restored/8-of-pentacles.webp",
          "url2x": "https://cdn.astroway.info/tarot/rws-restored/8-of-pentacles@2x.webp",
          "urlSmall": "https://cdn.astroway.info/tarot/rws-restored/8-of-pentacles-300.webp",
          "width": 600,
          "height": 1028,
          "art": "rws-restored"
        }
      },
      "reversed": false
    }
  ],
  "back": { "url": "https://cdn.astroway.info/tarot/rws-1909/back.webp", "url2x": "https://cdn.astroway.info/tarot/rws-1909/back@2x.webp", "urlSmall": "https://cdn.astroway.info/tarot/rws-1909/back-300.webp", "width": 600, "height": 1039, "art": "rws-1909" }
}
```

Ο διάγραμμα `POST /v1/tarot/rider-waite/draw/three-card` κοστίζει **10 πιστωτικά**.

## Κείμενα καρτών χωρίς μοντέλο

`GET /v1/public/tarot/texts?cards=the-fool,9-of-swords&lang=uk` λειτουργεί χωρίς κλειδί και επιστρέφει για κάθε κάρτα μια `description` με τρία παραγράφους (εικόνα, ευθεία σημασία, ανεστραμμένη σημασία) και κείμενο για `love`, `career`, `finance`, `health` και `spirit` για `upright` και `reversed`, μαζί με την τοπικοποιημένη ονομασία `name` και έως πέντε `keywords` για κάθε πλευρά. Χωρίς `cards` λαμβάνουμε όλες τις 78. Τα κείμενα δεν αλλάζουν, οπότε κατεβάζε τις κάρτες που εμφανίζει η σελίδα και κεσού τα.

```bash
curl 'https://api.astroway.info/v1/public/tarot/texts?cards=the-fool,9-of-swords&lang=uk'
```

## Ερμηνεία ολόκληρου του διαγράμματος

`POST /v1/interpret/tarot` δέχεται μια κολόδα, ένα διάγραμμα, τις κάρτες και μια προαιρετική ερώτηση και γράφει ερμηνεία στη γλώσσα του `language` (21 γλώσσες). Οι κάρτες μπορούν να δοθούν ως όρισματα, ως αντικείμενα `{ "slug", "reversed" }` ή ως μαсив `drawn` από οποιαδήποτε απάντηση διαγράμματος χωρίς αλλαγές.

<Tabs>
  <TabItem label="Node.js">
    ```js
    const headers = { 'Content-Type': 'application/json', 'X-Api-Key': process.env.ASTROWAY_API_KEY };
    const api = (path, body) =>
      fetch(`https://api.astroway.info/v1${path}`, { method: 'POST', headers, body: JSON.stringify(body) }).then((r) => r.json());
    
    const { data: spread } = await api('/tarot/rider-waite/draw/three-card', { art: 'rws-1909' });
    const { data: reading } = await api('/interpret/tarot', {
      spread: 'three-card',
      question: 'What should I focus on at work?',
      cards: spread.drawn,
      language: 'en',
    });
    
    for (const p of reading.positions) {
      console.log(p.position, p.card.name, p.reversed ? '(reversed)' : '', p.card.image.url);
      console.log(' ', p.reading);
    }
    console.log('Summary:', reading.synthesis);
    ```
  </TabItem>
</Tabs>

Στην απάντηση `positions[]` (θέση, κάρτα με `image`, `reversed`, `reading`), `synthesis`, `advice` και `disclaimer`. Οι κάρτες Rider-Waite-Smith έχουν επίσης `nameLocalized` και `positionLocalized` στη γλώσσα της ερμηνείας. Η ερμηνεία κοστίζει **100 πιστωτικά** (Tier 4) και είναι διαθέσιμη στο δωρεάν ταρίφ; με το δικό σας κλειδί μοντέλου είναι πιο φτηνή, βλ. [Το δικό σας κλειδί μοντέλου](/agent-setup/).

<Aside type="note">
Η ερμηνεία είναι γεννημένος κείμενο που βασίζεται στο παραδοσιακό νόημα κάθε κάρτας στην θέση της. Το API συνδέει τις κάρτες, τη θέση τους και την θέση στο αίτημα σας και απορρίπτει την ερμηνεία που αγνοεί μια κάρτα, αλλά λάβε το κείμενο ως έμπνευση για σκέψεις, όχι ως πρόβλεψη.
</Aside>
