Trânsitos
Dois endpoints para trabalhar com trânsitos:
| Endpoint | Créditos | O que faz |
|---|---|---|
POST /v1/transits | 50 | Mapa de trânsito para uma data específica, sobreposto à localização natal |
POST /v1/transit-calendar | 100 | Calendário de eventos de trânsito para um intervalo de datas |
Se precisares de ver primeiro como é o resultado final: os trânsitos na aplicação AstroWay calculam o mesmo e desenham um overlay na roda.
POST /v1/transits: overlay
Seção intitulada “POST /v1/transits: overlay”Calcula as posições dos planetas para uma dada data de trânsito nas coordenadas da localização natal.
Parâmetros
Seção intitulada “Parâmetros”Todos os parâmetros do mapa natal (date, time, timezoneOffset, latitude, longitude, houseSystem) mais:
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
transitDate | string | Sim | Data do trânsito YYYY-MM-DD |
transitTime | string | Não (12:00:00) | Hora do trânsito HH:mm:ss |
transitTzOffset | number | Não (0) | Desvio do fuso horário do trânsito |
Exemplo
Seção intitulada “Exemplo”curl -X POST https://api.astroway.info/v1/transits \ -H "X-Api-Key: aw_live_your_key_here" \ -H "Content-Type: application/json" \ -d '{ "date": "1990-07-14", "time": "14:30:00", "timezoneOffset": 3, "latitude": 50.4501, "longitude": 30.5234, "transitDate": "2026-04-14", "transitTime": "12:00:00", "transitTzOffset": 3 }'const res = await fetch('https://api.astroway.info/v1/transits', { 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, transitDate: '2026-04-14', transitTime: '12:00:00', transitTzOffset: 3, }),});const { data: transits } = await res.json();console.log(transits.planets); // Transit planet positionsimport os, requests
r = requests.post( 'https://api.astroway.info/v1/transits', 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, 'transitDate': '2026-04-14', 'transitTime': '12:00:00', 'transitTzOffset': 3, },)transits = r.json()['data']print(transits['planets'])<?phpuse GuzzleHttp\Client;
$client = new Client(['base_uri' => 'https://api.astroway.info/v1/']);$r = $client->post('transits', [ '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, 'transitDate' => '2026-04-14', 'transitTime' => '12:00:00', 'transitTzOffset' => 3, ],]);
$transits = json_decode($r->getBody(), true)['data'];print_r($transits['planets']);Resposta
Seção intitulada “Resposta”A mesma estrutura que /v1/chart - um mapa completo com planetas, casas, aspetos, mas calculado para a data do trânsito.
POST /v1/transit-calendar: calendário de eventos
Seção intitulada “POST /v1/transit-calendar: calendário de eventos”Verifica um intervalo de datas e retorna uma lista de eventos de trânsito: aspetos exatos de planetas em trânsito para os natais, ingressos, retrogradações.
Parâmetros adicionais
Seção intitulada “Parâmetros adicionais”| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
startDate | string | Sim | Início do intervalo YYYY-MM-DD |
endDate | string | Sim | Fim do intervalo YYYY-MM-DD |
Exemplo
Seção intitulada “Exemplo”curl -X POST https://api.astroway.info/v1/transit-calendar \ -H "X-Api-Key: aw_live_your_key_here" \ -H "Content-Type: application/json" \ -d '{ "natal": { "date": "1990-07-14", "time": "14:30:00", "timezoneOffset": 3, "latitude": 50.4501, "longitude": 30.5234 }, "startDate": "2026-04-01", "endDate": "2026-04-30" }'const r = await fetch('https://api.astroway.info/v1/transit-calendar', { method: 'POST', headers: { 'X-Api-Key': apiKey, 'Content-Type': 'application/json' }, body: JSON.stringify({ natal: { date: '1990-07-14', time: '14:30:00', timezoneOffset: 3, latitude: 50.4501, longitude: 30.5234, }, startDate: '2026-04-01', endDate: '2026-04-30', }),});const { data: calendar } = await r.json();
for (const event of calendar.events) { console.log(`${event.date}: #${event.transitPlanetId} ${event.aspect.name} #${event.natalPlanetId}`);}r = requests.post( 'https://api.astroway.info/v1/transit-calendar', headers={'X-Api-Key': apiKey}, json={ 'natal': { 'date': "1990-07-14", 'time': "14:30:00", 'timezoneOffset': 3, 'latitude': 50.4501, 'longitude': 30.5234, }, 'startDate': "2026-04-01", 'endDate': "2026-04-30" },)calendar = r.json()['data']
for event in calendar["events"]: print(f"{event['date']}: #{event['transitPlanetId']} {event['aspect']['name']} #{event['natalPlanetId']}")<?phpuse GuzzleHttp\Client;
$client = new Client(['base_uri' => 'https://api.astroway.info/v1/']);$r = $client->post('transit-calendar', [ 'headers' => ['X-Api-Key' => getenv('ASTROWAY_API_KEY')], 'json' => [ 'natal' => [ 'date' => '1990-07-14', 'time' => '14:30:00', 'timezoneOffset' => 3, 'latitude' => 50.4501, 'longitude' => 30.5234, ], 'startDate' => '2026-04-01', 'endDate' => '2026-04-30', ],]);
$calendar = json_decode($r->getBody(), true)['data'];foreach ($calendar['events'] as $e) { echo "{$e['date']}: #{$e['transitPlanetId']} {$e['aspect']['name']} #{$e['natalPlanetId']}\n";}Exemplo de resposta
Seção intitulada “Exemplo de resposta”{ "startDate": "2026-04-01", "endDate": "2026-04-30", "maxOrb": 1, "count": 42, "events": [ { "jd": 2461132.97998, "date": "2026-04-02T11:31:10.000Z", "transitPlanetId": 2, "natalPlanetId": 9, "aspect": { "name": "Trine", "i18nKey": "aspect_trine", "angle": 120, "orb": 12, "symbol": "△", "isMajor": true, "color": "#3366cc" }, "transitLongitude": 345.005969, "natalLongitude": 225.005747, "isRetrograde": false } ]}Endpoints relacionados
Seção intitulada “Endpoints relacionados”| Endpoint | Créditos | O que adiciona |
|---|---|---|
/v1/forecast-calendar | 100 | Previsão anual - heatmap para 365 dias |
/v1/progressions | 50 | Progressões secundárias |
/v1/solar-return | 50 | Retorno solar (mapa anual) |
/v1/aspect-timeline | 100 | Linha do tempo de aspetos para um intervalo |
A seguir
Seção intitulada “A seguir”- Mapa Natal: pedido básico
- Sinastria: compatibilidade de dois mapas
- Human Design: mapa HD completo
- Referência da API: todos os 771 endpoints
Útil?
Obrigado pelo feedback.