AstroWay/api v2.202.7 · blog
all systems operational

Natal Chart API in PHP: SDK + Laravel Example

Compute a natal chart in PHP with the AstroWay SDK - plain PHP and a Laravel facade - without compiling a Swiss Ephemeris extension.

PHP has historically been the hardest language to do astrology in - no maintained Swiss Ephemeris extension, so people shell out to a binary or port the math. The AstroWay PHP SDK skips that: a PSR-18 HTTP client that returns the calculation over the wire.

Terminal window
composer require astroway/sdk
# bring your own PSR-18 client + PSR-17 factory, e.g.:
composer require guzzlehttp/guzzle nyholm/psr7

Get a key on the dashboard - 10,000 credits/month free, no card.

<?php
use Astroway\Astroway;
$aw = new Astroway(['apiKey' => getenv('ASTROWAY_API_KEY')]);
$chart = $aw->chart()->compute([
'date' => '1990-07-14',
'time' => '14:30:00',
'timezoneOffset' => 3,
'latitude' => 50.45,
'longitude' => 30.52,
]);
foreach ($chart['planets'] as $p) {
printf("%-10s %.2f° %s\n", $p['name'], $p['longitude'], $p['sign']);
}

The { ok, data, error } envelope is unwrapped - $chart is the data. Other namespaces follow the same shape: $aw->synastry()->compute([...]), $aw->transits()->compute([...]), $aw->humanDesign()->compute([...]).

There’s a first-party Laravel wrapper with a facade and config. It is an early alpha, so the constraint is part of the command:

Terminal window
composer require astroway/sdk-laravel:^0.1.0-alpha
use Astroway\Laravel\Facades\Astroway;
$chart = Astroway::chart()->compute([
'date' => '1990-07-14', 'time' => '14:30:00',
'timezoneOffset' => 3, 'latitude' => 50.45, 'longitude' => 30.52,
]);

Set ASTROWAY_API_KEY in .env and the facade is ready - no manual client wiring. There’s a Symfony bundle too, astroway/sdk-symfony, at the same alpha stage.

use Astroway\Errors\RateLimitError;
use Astroway\Errors\BadRequestError;
try {
$aw->chart()->compute($input);
} catch (RateLimitError $e) {
// back off and retry
} catch (BadRequestError $e) {
// which field failed validation
}

There’s no well-maintained PECL Swiss Ephemeris extension, so the alternatives are shelling out to the swetest binary (deployment headache) or porting the algorithms (error-prone). The SDK turns it into one Composer package and an HTTPS call, with the same engine professional software uses, plus 761 endpoints beyond the natal chart.

MakSeong · AstroWay

I build the AstroWay API: Swiss Ephemeris on a clean REST surface, and I write about the dull parts that turn out to matter.

// build with this

Same Swiss Ephemeris as Solar Fire - but in 4 lines of code.

Free key, no card. 5,000 calls/month before you pay anything.

More from the blog view all posts →

Ephemeris 2026-06-05

How Accurate Is the Swiss Ephemeris? Verified Benchmarks

Swiss Ephemeris accuracy in numbers - planetary positions under 0.1 arcsecond, exact house cusps, eclipses within a minute - and how AstroWay verifies it.

Ephemeris 2026-06-05

Swiss Ephemeris: REST API vs pyswisseph (When to Use Which)

pyswisseph vs a REST API for Swiss Ephemeris calculations - C dependencies, data files, licensing and deployment compared, with a decision guide.

Engineering 2026-05-21

Vedic Astrology API: Dashas, Vargas, Panchang & Lal Kitab

AstroWay ships the deepest Vedic coverage among commercial APIs: 10 dasha systems, 16 vargas, Panchang, Lal Kitab, KP, Jaimini. 10K free credits/month.