# Astrology Apps

Building an astrology app like Co-Star, Sanctuary, The Pattern, Chani, or Costar Compat? AstroWay API replaces the need to license Solar Fire ($495) or build your own ephemeris: {siteMeta.endpoints} endpoints (natal charts, synastry, transits, Human Design, AI interpretations), OpenAPI 3.1 for typed-client codegen (TS / Python SDKs in roadmap), Swiss Ephemeris accuracy — the same engine that powers Astrodienst and Kepler.

## Typical architecture

```
User (browser / mobile)
     ↓
Your backend (Node.js / Python / PHP)
     ↓ HTTPS + X-Api-Key
api.astroway.info/v1/*
     ↓
JSON response → render in your UI
```

<Aside type="caution">
Never put the API key in frontend code. AstroWay API calls must go through your backend or serverless functions (Next.js API routes, Vercel functions, AWS Lambda).
</Aside>

## Key endpoints for an astrology app

### MVP (minimum viable product)

| Endpoint | Credits | Purpose |
|---|---|---|
| `/v1/chart` | 20 | Natal chart calculation |
| `/v1/synastry` | 50 | Compatibility between two people |
| `/v1/horoscope/daily` | 20 | Daily horoscope |

Three endpoints and you have a working product with natal charts, compatibility, and daily content.

### Expanded product

| Endpoint | Credits | Purpose |
|---|---|---|
| `/v1/transits` | 50 | Current transits on natal chart |
| `/v1/solar-return` | 50 | Solar return (annual chart) |
| `/v1/progressions` | 50 | Secondary progressions |
| `/v1/interpret/natal` | 50 | AI-interpreted natal chart |
| `/v1/transit-calendar` | 100 | Transit event calendar |
| `/v1/human-design` | 50 | HD chart |

### Premium features

| Endpoint | Credits | Purpose |
|---|---|---|
| `/v1/rectification` | 500 | Birth time correction |
| `/v1/acg` | 50 | Astrocartography (where to live) |
| `/v1/forecast-calendar` | 100 | Annual forecast heatmap |
| `/v1/group-synastry` | 100 | Group compatibility |

## Budget estimation

### Scenario: 100 DAU (daily active users)

Assuming an average user performs 3 actions per day:

| Action | Endpoint | Credits | Requests/day | Credits/day |
|---|---|---|---|---|
| View chart | `/v1/chart` | 20 | 100 | 2,000 |
| Daily horoscope | `/v1/horoscope/daily` | 20 | 100 | 2,000 |
| Compatibility | `/v1/synastry` | 50 | 30 | 1,500 |
| **Total** | | | **230** | **5,500/day** |

**~165,000 credits/month** (5,500 × 30) → **Starter ($19/mo, 200,000 credits)** with 21% headroom, or **Indie ($5/mo, 50,000)** with ~$5 overage for the extra 110K credits.

### Scenario: MVP with 20 DAU

| Action | Credits/day |
|---|---|
| 20 charts | 400 |
| 20 horoscopes | 400 |
| 5 synastries | 250 |
| **Total** | **1,050/day** |

**~31,500 credits/month** → **Indie ($5/mo, 50,000 credits)**.

## Tips

- **Cache natal charts** — input is immutable (birth date doesn't change), so you can cache results forever in your DB
- **Cache horoscopes daily** — daily horoscope is the same for everyone with the same sun sign, generate once and serve
- **Sandbox keys** (`aw_test_*`) — for development, don't consume credits
- **OpenAPI 3.1 codegen for types** — TS and Python SDKs are roadmap; until released, generate types via `openapi-typescript` or `openapi-python-client` from our spec

<CardGrid>
  <LinkCard title="Quick start →" href="/en/getting-started/" description="First request in 5 minutes" />
  <LinkCard title="Birth Chart API" href="/en/products/birth-chart-api/" description="Details on natal chart endpoints" />
  <LinkCard title="Pricing" href="/en/pricing/" description="From Free to Enterprise" />
</CardGrid>
