# Carta natal

El endpoint `POST /v1/chart` es la base de la mayoría de las solicitudes. Devuelve un mapa natal completo: posiciones planetarias, cúspides de casas, aspectos entre planetas y la secta del mapa. **Costo: 20 créditos** (Nivel 2).

## Parámetros de la solicitud

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `date` | string | Sí | Fecha de nacimiento `YYYY-MM-DD` |
| `time` | string | Sí | Hora de nacimiento `HH:mm:ss` |
| `timezoneOffset` | number | Sí | Desfase de UTC en horas (ej. `2` para Kiev en verano) |
| `latitude` | number | No (0) | Latitud en grados decimales |
| `longitude` | number | No (0) | Longitud en grados decimales |
| `houseSystem` | string | No (`P`) | Sistema de casas: `P` Placidus, `K` Koch, `W` Whole Sign, `E` Equal y [otros](/docs/api/) |
| `name` | string | No | Nombre (se devuelve en la respuesta) |
| `city` | string | No | Ciudad (se devuelve en la respuesta) |
| `zodiacType` | string | No | `tropical` (por defecto) o `sidereal` |
| `cosmogram` | boolean | No | `true` — sin casas (cuando la ubicación es desconocida) |

## Ejemplo de solicitud

Mapa natal para Kiev, 14 de julio de 1990, 14:30:

<Tabs syncKey="lang">
  <TabItem label="cURL">
    ```bash frame="terminal"
    curl -X POST https://api.astroway.info/v1/chart \
      -H "X-Api-Key: aw_live_tu_clave_aqui" \
      -H "Content-Type: application/json" \
      -d '{
        "date": "1990-07-14",
        "time": "14:30:00",
        "timezoneOffset": 3,
        "latitude": 50.4501,
        "longitude": 30.5234,
        "houseSystem": "P"
      }'
    ```
  </TabItem>
  <TabItem label="Node.js">
    ```ts
    const res = await fetch('https://api.astroway.info/v1/chart', {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
        'X-Api-Key': process.env.ASTROWAY_API_KEY!,
      },
      body: JSON.stringify({
        date: '1990-07-14',
        time: '14:30:00',
        timezoneOffset: 3,
        latitude: 50.4501,
        longitude: 30.5234,
        houseSystem: 'P',
      }),
    });
    const chart = await res.json();
    console.log(chart.planets[0]); // Posición del Sol
    ```
  </TabItem>
  <TabItem label="Python">
    ```python

    r = requests.post(
        'https://api.astroway.info/v1/chart',
        headers={'X-Api-Key': os.environ['ASTROWAY_API_KEY'], 'Content-Type': 'application/json'},
        json={
            'date': '1990-07-14',
            'time': '14:30:00',
            'timezoneOffset': 3,
            'latitude': 50.4501,
            'longitude': 30.5234,
            'houseSystem': 'P',
        },
    )
    chart = r.json()
    print(chart['planets'][0])  # Posición del Sol
    ```
  </TabItem>
  <TabItem label="PHP">
    ```php
    <?php
    use GuzzleHttp\Client;

    $client = new Client(['base_uri' => 'https://api.astroway.info/v1/']);
    $r = $client->post('chart', [
        'headers' => ['X-Api-Key' => getenv('ASTROWAY_API_KEY')],
        'json' => [
            'date' => '1990-07-14',
            'time' => '14:30:00',
            'timezoneOffset' => 3,
            'latitude' => 50.4501,
            'longitude' => 30.5234,
            'houseSystem' => 'P',
        ],
    ]);

    $chart = json_decode($r->getBody(), true);
    print_r($chart['planets'][0]); // Posición del Sol
    ```
  </TabItem>
</Tabs>

## Ejemplo de respuesta

```json
{
  "input": {
    "date": "1990-07-14",
    "time": "14:30:00",
    "timezoneOffset": 3,
    "latitude": 50.4501,
    "longitude": 30.5234,
    "houseSystem": "P"
  },
  "julianDay": 2448087.979166,
  "siderealTime": 8.234,
  "planets": [
    {
      "name": "Sun",
      "longitude": 111.87,
      "latitude": 0.0,
      "speed": 0.955,
      "sign": "cancer",
      "signIndex": 3,
      "house": 10,
      "retrograde": false
    },
    {
      "name": "Moon",
      "longitude": 87.23,
      "latitude": -4.2,
      "speed": 13.3,
      "sign": "gemini",
      "signIndex": 2,
      "house": 8,
      "retrograde": false
    }
  ],
  "houses": {
    "system": "P",
    "cusps": [12.34, 43.21, 72.56, 100.12, 130.45, 162.78, 192.34, 223.21, 252.56, 280.12, 310.45, 342.78],
    "ascendant": 12.34,
    "mc": 280.12
  },
  "aspects": [
    {
      "planet1": "Sun",
      "planet2": "Moon",
      "type": "sextile",
      "orb": 1.36,
      "applying": true
    }
  ],
  "chartSect": "diurnal"
}
```

<Aside type="note">
La respuesta está acortada para mayor claridad. La respuesta completa incluye las 12 planetas (Sol, Luna, Mercurio, Venus, Marte, Júpiter, Saturno, Urano, Neptuno, Plutón + Nodo Norte, Quirón), 12 cúspides de casas y todos los aspectos entre ellos.
</Aside>

## Sistemas de casas

| Código | Sistema | Nota |
|---|---|---|
| `P` | Placidus | Por defecto, el más popular |
| `K` | Koch | Popular en Alemania |
| `W` | Whole Sign | Clásico helenístico |
| `E` | Equal | Casas iguales desde el ASC |
| `R` | Regiomontanus | Astrología horaria |
| `C` | Campanus | Sistema espacial |
| `T` | Topocéntrico | Polich-Page |
| `B` | Alcabitius | Tradición medieval |

La lista completa con 15 sistemas está en la [referencia de API](/docs/api/).

## Cosmograma (sin lugar de nacimiento)

Si conoces la hora de nacimiento pero no la ubicación, envía `"cosmogram": true`. No se calculan las casas ni el ASC/MC, pero el costo es el mismo (20 créditos).

## Cabeceras de respuesta

```
X-Credits-Used: 20
X-Credits-Remaining: 4980
X-Credits-Reset: 2026-05-01T00:00:00Z
X-Request-Id: 01HXY2A7ZM...
```

## Siguientes pasos

- [Sinastria](/examples/synastry/) — compatibilidad entre dos mapas
- [Tránsitos](/examples/transits/) — superposición de tránsitos y calendario de eventos
- [Human Design](/examples/human-design/) — mapa completo de HD
- [Referencia completa de la API](/docs/api/) — todos los endpoints de {siteMeta.endpoints}
