Timeline (SVG)
POST
/render/timeline
curl -X POST https://api.astroway.info/v1/render/timeline \ -H "X-Api-Key: aw_live_..." \ -H "Content-Type: application/json" \ -d '{ "rangeStart": "2026-01-01", "rangeEnd": "2026-12-31", "events": [ { "label": "Saturn ☐ Sun", "start": "2026-03-15", "end": "2026-04-20", "exact": "2026-04-02", "category": "Square" } ], "options": { "theme": "light", "width": 1000 } }'const res = await fetch('https://api.astroway.info/v1/render/timeline', { method: 'POST', headers: { 'X-Api-Key': process.env.ASTROWAY_API_KEY, 'Content-Type': 'application/json', }, body: JSON.stringify({ "rangeStart": "2026-01-01", "rangeEnd": "2026-12-31", "events": [ { "label": "Saturn ☐ Sun", "start": "2026-03-15", "end": "2026-04-20", "exact": "2026-04-02", "category": "Square" } ], "options": { "theme": "light", "width": 1000 } }),});const { ok, data, error } = await res.json();if (!ok) throw new Error(error.message);console.log(data);import os, requests
r = requests.post( 'https://api.astroway.info/v1/render/timeline', headers={'X-Api-Key': os.environ['ASTROWAY_API_KEY'], 'Content-Type': 'application/json'}, json={ 'rangeStart': "2026-01-01", 'rangeEnd': "2026-12-31", 'events': [ { 'label': "Saturn ☐ Sun", 'start': "2026-03-15", 'end': "2026-04-20", 'exact': "2026-04-02", 'category': "Square" } ], 'options': { 'theme': "light", 'width': 1000 } },)result = r.json()if not result['ok']: raise RuntimeError(result['error']['message'])print(result['data'])<?phpuse GuzzleHttp\Client;
$client = new Client(['base_uri' => 'https://api.astroway.info/v1/']);$r = $client->post('render/timeline', [ 'headers' => ['X-Api-Key' => getenv('ASTROWAY_API_KEY')], 'json' => [ 'rangeStart' => '2026-01-01', 'rangeEnd' => '2026-12-31', 'events' => [[ 'label' => 'Saturn ☐ Sun', 'start' => '2026-03-15', 'end' => '2026-04-20', 'exact' => '2026-04-02', 'category' => 'Square', ]], 'options' => [ 'theme' => 'light', 'width' => 1000, ], ],]);$result = json_decode($r->getBody(), true);if (!$result['ok']) throw new \RuntimeException($result['error']['message']);print_r($result['data']);Gantt-style horizontal timeline of transit/aspect events over a date window. Caller supplies events array.
Authorizations
Section titled “Authorizations ”Request Body required
Section titled “Request Body required ” Media type application/json
object
rangeStart required
string
rangeEnd required
string
events required
Array<object>
object
label required
string
start required
string
end required
string
exact
string
category
string
color
string
options
object
size
integer
theme
string
showAspects
boolean
showRetrograde
boolean
title
string
format
string
width
integer
rowHeight
integer
Example
{ "rangeStart": "2026-01-01", "rangeEnd": "2026-12-31", "events": [ { "label": "Saturn ☐ Sun", "start": "2026-03-15", "end": "2026-04-20", "exact": "2026-04-02", "category": "Square" } ], "options": { "theme": "light", "width": 1000 }}Responses
Section titled “ Responses ”Successful calculation
Media type application/json
object
ok
boolean
data
object
svg
string
format
string
byteLength
number
Example
{ "ok": true, "data": { "svg": "<svg ...>", "format": "svg", "byteLength": 4000 }}Validation error
Media type application/json
Example
{ "ok": false, "error": { "code": "INVALID_INPUT", "message": "Validation failed: date: Date must be YYYY-MM-DD", "details": [ { "path": "date", "message": "Date must be YYYY-MM-DD" } ] }}Missing or invalid API key
Media type application/json
Example
{ "ok": false, "error": { "code": "INVALID_API_KEY", "message": "Invalid API key" }} Корисно?
Дякуємо за фідбек.