AstroWay/api v2.325.2 · nl
alle systemen normaal

Human Design API: bouw HD-apps op 12 endpoints

Alles wat een ontwikkelaar nodig heeft om via een API een Human Design-app te bouwen. 12 endpoints, berekening van de bodygraph, groepsdynamiek met Penta, codevoorbeelden.

🕓 Bericht van 2026-04-14, bijgewerkt op 2026-05-09. De TS / Python / PHP SDK’s staan nu op publieke registries: @astroway/sdk (npm), astroway (PyPI), astroway/sdk (Packagist). Details in de changelog.

Human Design is uitgegroeid van een esoterisch nichesysteem uit de jaren 90 tot een mainstream kader voor persoonlijke ontwikkeling. Apps met miljoenen gebruikers hebben het gewoon gemaakt, en ontwikkelaars vragen zich af: hoe bereken je een Human Design-kaart programmatisch?

Deze post gaat over de technische kant: wat HD-berekeningen zijn, welke API’s ze ondersteunen en hoe je een HD-feature in je app inbouwt.

Human Design is gebouwd op drie klassieke systemen:

  • Westerse astrologie: de planeetposities op het moment van geboorte
  • I Ching: 64 hexagrammen, gemapt op 64 “poorten”
  • Het chakrasysteem: negen “centra” (energetische knooppunten)

De berekening neemt geboortegegevens en levert een bodygraph op: een visuele kaart met:

  • Type (Manifestor, Generator, Manifesting Generator, Projector, Reflector): de energetische signatuur
  • Strategy: hoe je beslissingen neemt
  • Authority: welk centrum je vertrouwt bij beslissingen (Sacral, Emotional, Splenic enzovoort)
  • Profile: een combinatie van lijnen (1/3, 4/6 enzovoort)
  • Channels: verbindingen tussen centra die de persoonlijkheid vormen
  • Incarnation Cross: de levensbestemming, afgeleid van vier sleutelposities

Onder de motorkap komt elk van de 64 poorten overeen met een bereik van ecliptische lengte. De lengte van je planeten bij de geboorte wordt gemapt op specifieke poorten (en de lijnen daarbinnen). De “Design”-berekening gebruikt het moment waarop de Zon 88° vóór de geboortepositie stond, ongeveer 3 maanden eerder.

Human Design gebruikt twee geboortemomenten:

  1. Personality: het echte geboortemoment. Dit is de “bewuste” kant.
  2. Design: wanneer de Zon 88° vóór de geboortepositie stond. Dit is de “onbewuste” kant.

Elke activatie van een poort hoort bij een van de twee. Een volledige kaart heeft 13 + 13 = 26 activaties.

Precies dat maakt een HD-berekening zwaarder dan een standaard astrologische horoscoop: je rekent in feite twee kaarten uit.

API’s met ondersteuning voor Human Design

Section titled “API’s met ondersteuning voor Human Design”

De meeste astrologie-API’s ondersteunen HD helemaal niet, of alleen oppervlakkig (alleen type + strategy). Een volledige HD-implementatie vraagt:

  • Een mapping van 64 poorten (lookup table)
  • 6 lijnen per poort (384 cellen)
  • 9 centra met defined/open-logica
  • 36 kanalen (elk verbindt twee centra)
  • Berekening van de Incarnation Cross
  • Afleiding van het Profile uit de poortlijn van de Zon + de poortlijn van de Aarde (Personality en Design)

API’s die dat allemaal kunnen, zijn zeldzaam. De AstroWay API heeft 12 HD-endpoints: de diepste dekking die we in een commerciële API hebben gezien.

EndpointCreditsWat het teruggeeft
/v1/human-design50Volledige HD-kaart
/v1/human-design/transits50HD-transits op een gegeven datum
/v1/human-design/compatibility100Compatibiliteit van twee HD-kaarten
/v1/hd/incarnation-cross50Incarnation Cross
/v1/hd/dream-rave50Dream Rave-kaart
/v1/hd/hologenetic50Hologenetic Profile
/v1/hd/sensitivity50Analyse van de gevoeligheid voor de geboortetijd
/v1/hd/circuitry20Analyse van de circuits
/v1/hd/penta100Penta - groepsdynamiek van 3–5 personen
/v1/hd/group-overlay100Group overlay
/v1/hd/design-date10Berekening van de Design-datum
/v1/hd/rave-new-years10Data van Rave New Year

Stel dat je HD toevoegt aan een bestaande astrologie-app. Begin met het hoofdendpoint:

import { Astroway } from '@astroway/sdk';
const client = new Astroway({ apiKey: process.env.ASTROWAY_API_KEY! });
const hd = await client.humanDesign.compute({
date: '1990-07-14',
time: '14:30:00',
timezoneOffset: 3,
latitude: 50.4501,
longitude: 30.5234,
});
console.log(`Type: ${hd.type}`); // e.g. "Generator"
console.log(`Strategy: ${hd.strategy}`); // e.g. "To Respond"
console.log(`Authority: ${hd.authority}`); // e.g. "Sacral"
console.log(`Profile: ${hd.profile.profile}`); // e.g. "1/3"
console.log(`Defined channels: ${hd.channels.length}`);

De vorm van het antwoord:

{
"type": "Generator",
"strategy": "To Respond",
"notSelfTheme": "Frustration",
"authority": "Sacral",
"profile": "1/3",
"definition": "single",
"cross": {
"name": "Right Angle Cross of the Sphinx",
"quarter": "Civilization",
"gates": [1, 2, 7, 13]
},
"centers": [
{ "name": "Sacral", "defined": true },
...
],
"channels": [
{ "gate1": 34, "gate2": 20, "name": "Channel of Charisma", "type": "Generated" }
],
"personalityActivations": [...],
"designActivations": [...]
}

Penta is een techniek om de dynamiek van een team in groepen van 3–5 personen te begrijpen. Die is zeldzaam: de meeste HD-calculators bieden haar niet. Maar voor HR-tech, coachingplatforms en teambuilding-apps is het goud.

const penta = await client.hd.penta({
inputs: [
{ date: '1990-07-14', time: '14:30:00', timezoneOffset: 3, latitude: 50.45, longitude: 30.52 },
{ date: '1988-03-10', time: '08:15:00', timezoneOffset: 2, latitude: 48.85, longitude: 2.35 },
{ date: '1985-11-22', time: '18:00:00', timezoneOffset: -5, latitude: 40.71, longitude: -74.00 },
],
});
console.log(`Members: ${penta.memberCount}`);
console.log(`Channels in the group: ${penta.channels.length}`);

HD-kaarten zijn gevoelig voor de geboortetijd. Een fout van 10 minuten kan het Profile veranderen (bijvoorbeeld 1/3 → 1/4). Voor gebruikers die hun exacte tijd niet kennen, draai je een sensitivity-analyse:

const sensitivity = await client.hd.sensitivity({
date: '1990-07-14',
time: '14:30:00',
timezoneOffset: 3,
latitude: 50.4501,
longitude: 30.5234,
});
// sensitivity tells you which fields change if time shifts ±5/15/30 min

Gebruik dit om de gebruiker te waarschuwen: “Met deze nauwkeurigheid kan je profile verschuiven. Overweeg een rectificatie.”

Als je een app bouwt die om HD draait:

  • Basisgebruiker: 1 HD-kaart bij registratie, voor altijd gecachet = eenmalig 50 credits
  • Actieve gebruiker: periodieke transits + compatibility = ~200 credits/maand
  • 100 DAU met gematigd HD-gebruik: ~110.000 credits/maand → Starter ($19/maand) dekt dat ruim
  • 1.000 DAU: ~150.000 credits/maand → Pro ($59/maand)

Compatibility-verzoeken zijn het zwaarst (100 credits). Cache de resultaten voor elk paar gebruikers voor altijd (ze veranderen niet).

Een bodygraph wordt traditioneel met SVG gerenderd. De API levert de data over centra en kanalen; jij rendert het beeld. Een voorbeeld:

function Bodygraph({ hd }: { hd: HDChart }) {
return (
<svg viewBox="0 0 400 600">
{hd.centers.map(c => (
<polygon
key={c.name}
points={CENTER_COORDS[c.name]}
fill={c.defined ? CENTER_COLORS[c.name] : 'white'}
stroke="black"
/>
))}
{hd.channels.map(ch => (
<line
key={`${ch.gate1}-${ch.gate2}`}
x1={GATE_COORDS[ch.gate1].x}
y1={GATE_COORDS[ch.gate1].y}
x2={GATE_COORDS[ch.gate2].x}
y2={GATE_COORDS[ch.gate2].y}
stroke="#d4a84c"
strokeWidth="3"
/>
))}
</svg>
);
}

De coördinaten zijn een vaste template (elke bodygraph heeft dezelfde 9 centra en 64 poorten op dezelfde posities).

MakSeong · AstroWay

I build the AstroWay API: arc-second astrology math on a clean REST surface, and I write about the dull parts that turn out to matter.

// bouw hierop

Posities tot op de boogseconde in 4 regels code.

Gratis sleutel zonder kaart. 5.000 calls per maand tot de eerste betaling.

Meer uit de blog alle berichten →

Ephemeris 2026-07-19

Zo houden we de nauwkeurigheid onder controle: CI tegen swetest en NASA

Nauwkeurigheid in een astrologie-API gaat makkelijk achteruit door één refactor van de efemeriden. We laten zien hoe we ons beschermen: één Swiss Ephemeris-kern voor app en API, honderden bevroren snapshots op referentiehoroscopen en triangulatie van elke PR tegen swetest CGI, Kerykeion, Prokerala en de eclipscatalogus van NASA.

Engineering 2026-07-15

Drie officiële SDK's: TypeScript, Python en PHP in plaats van kale curl

Kale HTTP werkt, maar een getypeerde client scheelt uren: autocompletion van paden, request- en responsetypes, ingebouwde retry bij 408/409/429/5xx en een foutenhiërarchie in Stainless-stijl. We bespreken de drie officiële SDK's, @astroway/sdk (npm), astroway (PyPI) en astroway/sdk (Packagist), en hoe ze uit één OpenAPI-contract worden gegenereerd.

Industry 2026-06-05

Free Astrology API: Which One Has the Best Free Tier in 2026?

A side-by-side of free tiers across the major astrology APIs - credits, request caps, card requirements - and how much you can actually build for free.