# Datingové aplikace

Astrologická kompatibilita je klíčovým faktorem pro udržení uživatelů v datingových aplikacích jako Bumble, Hinge, Tinder, Tantan a v aplikacích postavených na astrologii, například NUiT, Struck. API AstroWay poskytuje hotový synastrický skóre 0–100 s jediným voláním – bez vlastního ephemeridového enginu a bez licence Solar Fire ($495).

## Jak to funguje

1. Uživatel zadá datum, čas a místo narození při registraci
2. Při matchování váš backend zavolá `/v1/synastry` s daty obou uživatelů
3. API vrátí `compatibility.score` (0–100) a `label` (harmonický/vyvážený/smíšený/konfliktní)
4. Skóre se používá jako jeden z faktorů pro řazení

```
Algoritmus matchování
  ├── Vzdálenost polohy         (40%)
  ├── Společné zájmy            (30%)
  ├── Astrologická kompatibilita (20%)  ← AstroWay API
  └── Další signály             (10%)
```

## Klíčové endpointy

| Endpoint | Kredity | Co vrací |
|---|---|---|
| `/v1/synastry` | 50 | Křížové aspekty + skóre 0–100 |
| `/v1/human-design/compatibility` | 100 | HD-kompatibilita (typ + strategie) |
| `/v1/horoscope/compatibility` | 50 | Textová analýza kompatibility |

## Integrační vzor

```ts
// Při matchování – zavolej synastry
async function getCompatibility(userA: UserProfile, userB: UserProfile) {
  const result = await astrowayClient.synastry({
    chart1: {
      date: userA.birthDate,
      time: userA.birthTime || '12:00:00', // default na poledne, pokud neznámý
      timezoneOffset: userA.tzOffset,
      latitude: userA.birthLat,
      longitude: userA.birthLng,
    },
    chart2: {
      date: userB.birthDate,
      time: userB.birthTime || '12:00:00',
      timezoneOffset: userB.tzOffset,
      latitude: userB.birthLat,
      longitude: userB.birthLng,
    },
  });

  return {
    score: result.compatibility.score,      // 0-100
    label: result.compatibility.label,      // "harmonický"
    harmony: result.compatibility.harmony,  // vážený součet
    tension: result.compatibility.tension,
  };
}
```

<Aside type="tip">
Výsledek synastrie je neměnný (závisí pouze na datech narození). Uložte pár `(userA_id, userB_id) → skóre` do své databáze. Jeden API dotaz – a už nemusíš přepočítávat.
</Aside>

## Odhad rozpočtu

### Scénář: 1 000 nových matchů denně

| Metrika | Hodnota |
|---|---|
| Matchů/den | 1 000 |
| Kreditů/match | 50 (synastry) |
| Kreditů/den | 50 000 |
| Kreditů/měsíc | ~1 500 000 |
| Tarif | **Business ($199/měs, 3 500 000 kreditů)** |

### Scénář: 50 matchů denně (startup)

| Metrika | Hodnota |
|---|---|
| Matchů/den | 50 |
| Kreditů/den | 2 500 |
| Kreditů/měsíc | ~75 000 |
| Tarif | **Starter ($19/měs, 200 000 kreditů)** |

### Optimalizace

- **Ukládání do cache** – ukládej skóre do databáze, nepřepočítávej
- **Líné vyhodnocování** – počítej synastry až když uživatel otevře match, ne pro všechny potenciální páry
- **Hromadný výpočet při registraci** – spočítej kompatibilitu s top 20 potenciálními matchi hned

## Bez času narození

Pokud uživatel nezná čas – pošli `"time": "12:00:00"` (poledne). Domácnosti budou méně přesné, ale planetární pozice a křížové aspekty budou správné. Skóre kompatibility zůstává informativní.

Pro HD-kompatibilitu je čas důležitější – zvaž `hd/sensitivity` pro odhad vlivu nepřesného času.

<CardGrid>
  <LinkCard title="Synastry API →" href="/products/synastry-api/" description="Podrobnosti o endpointu kompatibility" />
  <LinkCard title="Rychlý start" href="/getting-started/" description="První dotaz za 5 minut" />
  <LinkCard title="Ceník" href="/pricing/" description="Od zdarma až po Enterprise" />
</CardGrid>
