AstroWay/api v2.200.0 · nl
alle systemen normaal

Human Design API: bouw HD-apps met 12 endpoints

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

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

Human Design is uitgegroeid van een niche-esoterisch systeem uit de jaren 1990 tot een mainstream raamwerk voor persoonlijke ontwikkeling. Apps met miljoenen gebruikers hebben het genormaliseerd - en ontwikkelaars stellen zich de vraag: hoe bereken je een Human Design-kaart programmatisch?

In deze post draait het om de technische kant: wat is HD-berekening, welke API’s ondersteunen deze functies en hoe integreer je een HD-functie in jouw app.

Human Design is gebaseerd op drie klassieke systemen:

  • Westerse astrologie - posities van planeten op het moment van geboorte
  • I Ching - 64 hexagrammen, in kaart gebracht op 64 ‘poorten’
  • Chakra-systeem - negen ‘centra’ (energieknooppunten)

De berekening gebruikt geboortedata en levert een bodygraph op - een visuele kaart met:

  • Type (Manifestor, Generator, Manifesting Generator, Projector, Reflector) - de energiesignatuur
  • Strategy - hoe je beslissingen neemt
  • Authority - welk centrum je moet vertrouwen bij beslissingen (Sacral, Emotional, Splenic, etc.)
  • Profile - een combinatie van lijnen (bijv. 1/3, 4/6)
  • Channels - verbindingen tussen centra die de persoonlijkheid vormen
  • Incarnation Cross - levensmissie, afgeleid van vier sleutelposities

Onder de motorkap komt elk van de 64 poorten overeen met een bereik van ecliptische lengte. De lengte van jouw planeten bij geboorte wordt in kaart gebracht op specifieke poorten (en rijen daarbinnen). De ‘Design’-berekening verschuift de zon 88° vóór de geboorte - ongeveer 3 maanden eerder.

Human Design gebruikt twee geboortetijden:

  1. Personality - de echte geboortetijd. Dit is de ‘bewuste’ kant.
  2. Design - wanneer de zon 88° vóór de geboortepositie stond. Dit is de ‘onbewuste’ kant.

Elke activering van een poort hoort bij één van deze twee. Een volledige kaart heeft 13 + 13 = 26 activeringen.

Dit maakt HD-berekeningen complexer dan standaard astrologische kaarten - je berekent eigenlijk twee kaarten.

De meeste astrologie-API’s ondersteunen HD helemaal niet of bieden alleen oppervlakkige ondersteuning (alleen type + strategy). Een volledige HD-implementatie vereist:

  • Een lookup-tabel voor 64 poorten
  • 6 lijnen per poort (384 cellen)
  • 9 centra met logica voor ‘defined/open’
  • 36 kanalen (elk verbindt twee centra)
  • Berekening van de Incarnation Cross
  • Weergave van het Profile op basis van de poortlijnen van de zon + aarde (Personality en Design)

API’s die dit allemaal aankunnen, zijn zeldzaam. De AstroWay API biedt 12 HD-endpoints - de diepste dekking die we in een commerciële API hebben gezien.

EndpointCreditsRetourneert
/v1/human-design50Volledige HD-kaart
/v1/human-design/transits50HD-transits op een opgegeven datum
/v1/human-design/compatibility100Compatibiliteit tussen twee HD-kaarten
/v1/hd/incarnation-cross50Incarnation Cross
/v1/hd/dream-rave50Dream Rave-kaart
/v1/hd/hologenetic50Hologenetic Profile
/v1/hd/sensitivity50Analyse van gevoeligheid voor tijd
/v1/hd/circuitry20Analyse van circuits
/v1/hd/penta100Penta - groepsdynamiek voor 3–5 personen
/v1/hd/group-overlay100Groepsoverlay
/v1/hd/design-date10Berekening van de Design-datum
/v1/hd/rave-new-years10Datums van Rave New Year

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

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}`); // наприклад, "Generator"
console.log(`Strategy: ${hd.strategy}`); // наприклад, "To Respond"
console.log(`Authority: ${hd.authority}`); // наприклад, "Sacral"
console.log(`Profile: ${hd.profile.profile}`); // наприклад, "1/3"
console.log(`Defined channels: ${hd.channels.length}`);

Voorbeeldantwoord:

{
"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 van 3–5 personen te begrijpen. Het is zeldzaam - de meeste HD-calculators bieden het niet. Maar het is goud voor HR-tech, coachingplatforms en team-building-apps.

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}`);

Sensitivity - cruciaal voor nauwkeurigheid

Section titled “Sensitivity - cruciaal voor nauwkeurigheid”

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

const sensitivity = await client.hd.sensitivity({
date: '1990-07-14',
time: '14:30:00',
timezoneOffset: 3,
latitude: 50.4501,
longitude: 30.5234,
});
// sensitivity покаже, які поля зміняться при зсуві часу на ±5/15/30 хв

Gebruik dit om gebruikers te waarschuwen: “Bij deze nauwkeurigheid kan je profile verschuiven. Overweeg rectificatie.”

Als je een HD-gerichte app bouwt:

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

Compatibility-verzoeken zijn het zwaarst (100 credits). Cache de resultaten voor elke gebruikerspaar voor altijd (ze veranderen niet).

Het renderen van een bodygraph gebeurt traditioneel via SVG. De API levert data over centra en kanalen; jij render je de visual. 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 vast sjabloon (elke bodygraph heeft dezelfde 9 centra en 64 poorten op dezelfde posities).

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.

// bouw hierop

Dezelfde Swiss Ephemeris als in Solar Fire - 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

Hoe we de nauwkeurigheid onder controle houden: CI versus swetest en NASA

De nauwkeurigheid van onze astro-API kan gemakkelijk afnemen door één refactor van de ephemerides. We analyseren de beveiliging: één Swiss Ephemeris-kern op de browser en server, honderden gefreezeerde snapshot's op referenties en triangulatie van elk PR tegen swetest CGI, Kerykeion, Prokerala en het catalogus van NASA-sterren.

Engineering 2026-07-15

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

Rauwe HTTP werkt, maar een getypeerde client bespaart uren: autocompletion voor paden, request- en responstypes, ingebouwde retry voor 408/409/429/5xx en Stainless-style foutenhiërarchie. We bespreken de drie officiële SDK's - @astroway/sdk (npm), astroway (PyPI), astroway/sdk (Packagist) - en hoe ze zijn gegenereerd uit één OpenAPI-contract.

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.