API reference › Transits

Declination Parallels API

Exact parallels and contra-parallels of declination over a range

POST/v1/transits/parallels

2 credits · Secret key (test or live) · getParallels

The moment two planets share a geocentric declination, or the same one on opposite sides of the equator, in UTC to the minute. At most 366 days, or 31 with the Moon.

Request body

  • from string (date) required

    e.g. "1990-08-13"

  • to string (date) required

    Inclusive. At most 366 days after from, or 31 with the Moon.

    e.g. "1990-08-13"

  • include_moon boolean

    default false

No other fields are accepted.

Response

JSON { data, meta, warnings }, where data is:

  • from string (date) required

    e.g. "1990-08-13"

  • to string (date) required

    e.g. "1990-08-13"

  • frame string required
  • count integer required
  • events array of object required
    • at string (date-time) required
    • a string required
    • b string required
    • kind string required

      one of parallel, contra_parallel

    • declination_a number required
    • declination_b number required

Errors: 400, 401, 403, 404, 422, 429, 500. See error codes.

Example request

curl -X POST 'https://api.astrologics.in/v1/transits/parallels' \
  -H 'Authorization: Bearer al_test_YOUR_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"from":"2026-11-01","to":"2026-11-30"}'
Node.js
const res = await fetch("https://api.astrologics.in/v1/transits/parallels", {
  method: "POST",
  headers: { Authorization: "Bearer al_test_YOUR_KEY", "Content-Type": "application/json" },
  body: JSON.stringify({
    "from": "2026-11-01",
    "to": "2026-11-30"
  }),
});
console.log(JSON.stringify(await res.json(), null, 2));
Python
import json
import urllib.error
import urllib.request

body = {
    "from": "2026-11-01",
    "to": "2026-11-30",
}

req = urllib.request.Request(
    "https://api.astrologics.in/v1/transits/parallels",
    method="POST",
    headers={"Authorization": "Bearer al_test_YOUR_KEY", "Content-Type": "application/json"},
    data=json.dumps(body).encode(),
)
try:
    with urllib.request.urlopen(req) as res:
        print(json.dumps(json.load(res), indent=2, ensure_ascii=False))
except urllib.error.HTTPError as err:
    print(err.code, err.read().decode())
PHP
<?php
$ch = curl_init('https://api.astrologics.in/v1/transits/parallels');
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_HTTPHEADER => ['Authorization: Bearer al_test_YOUR_KEY', 'Content-Type: application/json'],
    CURLOPT_POSTFIELDS => '{"from":"2026-11-01","to":"2026-11-30"}',
    CURLOPT_RETURNTRANSFER => true,
]);
echo curl_exec($ch), PHP_EOL;

Example response

200 OK · 2,167 characters
{
  "data": {
    "from": "2026-11-01",
    "to": "2026-11-30",
    "frame": "geocentric_declination_of_date",
    "count": 9,
    "events": [
      {
        "at": "2026-11-01T09:58:00.000Z",
        "a": "sun",
        "b": "venus",
        "kind": "parallel",
        "declination_a": -14.4936,
        "declination_b": -14.4934
      },
      {
        "at": "2026-11-02T15:26:00.000Z",
        "a": "venus",
        "b": "jupiter",
        "kind": "contra_parallel",
        "declination_a": -14.0034,
        "declination_b": 14.0037
      },
      {
        "at": "2026-11-03T21:05:00.000Z",
        "a": "mercury",
        "b": "mars",
        "kind": "contra_parallel",
        "declination_a": -16.3705,
        "declination_b": 16.3707
      },
      {
        "at": "2026-11-04T22:40:00.000Z",
        "a": "sun",
        "b": "mercury",
        "kind": "parallel",
        "declination_a": -15.5959,
        "declination_b": -15.5952
      },
      {
        "at": "2026-11-06T09:09:00.000Z",
        "a": "sun",
        "b": "mars",
        "kind": "contra_parallel",
        "declination_a": -16.0297,
        "declination_b": 16.0295
      },
      {
        "at": "2026-11-07T10:28:00.000Z",
        "a": "mercury",
        "b": "jupiter",
        "kind": "contra_parallel",
        "declination_a": -13.8397,
        "declination_b": 13.84
      },
      {
        "at": "2026-11-23T20:18:00.000Z",
        "a": "mercury",
        "b": "jupiter",
        "kind": "contra_parallel",
        "declination_a": -13.4323,
        "declination_b": 13.4323
      },
      {
        "at": "2026-11-24T10:41:00.000Z",
        "a": "mercury",
        "b": "mars",
        "kind": "contra_parallel",
        "declination_a": -13.6935,
        "declination_b": 13.6934
      },
      {
        "at": "2026-11-27T02:11:00.000Z",
        "a": "mars",
        "b": "jupiter",
        "kind": "parallel",
        "declination_a": 13.3826,
        "declination_b": 13.3826
      }
    ]
  },
  "meta": {
    "request_id": "req_example",
    "api_version": "v1",
    "engine_version": "2026.10.10",
    "mode": "live",
    "credits_charged": 2
  },
  "warnings": []
}
Try it

Leave empty to use the shared demo key (limited). Test keys only: never charged. Kept in this browser tab and sent through this site to the API. Create one

More in Transits

Get a free API key Transits product page