Numerology Compatibility API
Love match scoring API
Included with every plan (at no extra cost)
Calculate numerology compatibility between two people from their Life Path, Expression and Soul Urge numbers. Send each person as a full birth name with a birth date, or as precomputed numbers, and mix the two modes freely across the pair. The response returns an overall score from 50 to 100 with its rating, a score and description for each number pair, and the strengths, challenges and advice for the relationship, in the language set by lang. Built for dating apps, matchmaking, relationship coaching and AI companions.
Request
POST /api/v2/numerology/compatibility
Parameters
| Parameter | Type | Description |
|---|---|---|
| langquery | string enum | Response language (BCP 47). Supported: en, tr, de, es, hi, pt, fr, ru, zh-Hans, zh-Hant. Defaults to en. Coverage varies by domain, and a field with no translation in the requested language returns English. Default en. |
Request body
| Field | Type | Description |
|---|---|---|
| person1* | object | |
| person1.fullName | string | Full birth name to calculate Expression and Soul Urge numbers automatically. Use instead of passing expression and soulUrge directly. |
| person1.year | integer | Birth year to calculate Life Path automatically. Use with month and day instead of passing lifePath directly. |
| person1.month | integer | Birth month (1-12). Required with year and day for automatic Life Path calculation. |
| person1.day | integer | Birth day (1-31). Required with year and month for automatic Life Path calculation. |
| person1.lifePath | integer | Person 1 Life Path number (1-9, 11, 22, 33). Optional if year, month, day are provided. |
| person1.expression | integer | Person 1 Expression number (1-9, 11, 22, 33). Optional if fullName is provided. |
| person1.soulUrge | integer | Person 1 Soul Urge number (1-9, 11, 22, 33). Optional if fullName is provided. |
| person2* | object | |
| person2.fullName | string | Full birth name to calculate Expression and Soul Urge numbers automatically. Use instead of passing expression and soulUrge directly. |
| person2.year | integer | Birth year to calculate Life Path automatically. Use with month and day instead of passing lifePath directly. |
| person2.month | integer | Birth month (1-12). Required with year and day for automatic Life Path calculation. |
| person2.day | integer | Birth day (1-31). Required with year and month for automatic Life Path calculation. |
| person2.lifePath | integer | Person 2 Life Path number (1-9, 11, 22, 33). Optional if year, month, day are provided. |
Show all fieldsShow fewer fields
| Field | Type | Description |
|---|---|---|
| person2.expression | integer | Person 2 Expression number (1-9, 11, 22, 33). Optional if fullName is provided. |
| person2.soulUrge | integer | Person 2 Soul Urge number (1-9, 11, 22, 33). Optional if fullName is provided. |
Example request
{
"person1": {
"fullName": "John William Smith",
"year": 1990,
"month": 7,
"day": 15,
"lifePath": 5,
"expression": 7,
"soulUrge": 6
},
"person2": {
"fullName": "Jane Marie Doe",
"year": 1992,
"month": 3,
"day": 22,
"lifePath": 3,
"expression": 9,
"soulUrge": 2
}
}Response
Structured JSON with documented fields, covered by 13,405 automated tests per deploy, 3,620 of them gold-standard tests verified against NASA JPL Horizons. Not hallucinated text.
{
"overallScore": 91,
"rating": "Highly Compatible",
"lifePath": {
"person1": 5,
"person2": 3,
"compatibility": 95,
"description": "Life Path 5 and 3 are in natural alignment. The foundational frequencies share enough common ground that mutual understanding is available without sustained effort, and complementary strengths reinforce rather than compete with each other."
},
"expression": {
"person1": 7,
"person2": 9,
"compatibility": 85,
"description": "Expression 7 and 9 form a strong working relationship. Core values are compatible, and the differences that do exist tend to create productive tension rather than fundamental conflict. This combination supports genuine long-term development."
},
"soulUrge": {
"person1": 6,
"person2": 2,
"compatibility": 90,
"description": "Soul Urge 6 and 2 are in natural alignment. The foundational frequencies share enough common ground that mutual understanding is available without sustained effort, and complementary strengths reinforce rather than compete with each other."
},
"strengths": [
"Natural mutual understanding across most situations",
"Complementary areas of strength that reinforce rather than compete",
"Aligned core values and fundamental priorities",
"Ease of communication under most conditions",
"Sustained capacity for mutual support across time"
],
"challenges": [
"Risk of losing individual distinction within the ease of the harmony",
"Complacency that can arise from the low friction of this pairing"
],
"advice": "Continue investing in this connection. Maintain individual pursuits alongside shared ones to preserve the personal distinction that makes the harmony meaningful. The ease of this pairing can itself become a kind of complacency; resist it by continuing to develop individually."
}Response fields
| Field | Type | Description |
|---|---|---|
| overallScore* | number | Overall compatibility score: 50% Life Path, 30% Expression and 20% Soul Urge pair scores, rounded. Every pair score runs 50 to 100, so the overall score does too. |
| rating* | string | Compatibility rating from overallScore: Highly Compatible (90 and up), Very Compatible (75 to 89), Compatible (60 to 74) or Moderately Compatible (50 to 59). The scale also names Challenging below 45, which no pair of core numbers reaches. |
| lifePath* | object | |
| lifePath.person1* | number | Person 1 Life Path number |
| lifePath.person2* | number | Person 2 Life Path number |
| lifePath.compatibility* | number | Life Path compatibility score (50-100) |
| lifePath.description* | string | Detailed Life Path compatibility analysis |
| expression* | object | |
| expression.person1* | number | Person 1 Expression number |
| expression.person2* | number | Person 2 Expression number |
| expression.compatibility* | number | Expression compatibility score (50-100) |
| expression.description* | string | Detailed Expression compatibility analysis |
| soulUrge* | object | |
| soulUrge.person1* | number | Person 1 Soul Urge number |
Show all fieldsShow fewer fields
| Field | Type | Description |
|---|---|---|
| soulUrge.person2* | number | Person 2 Soul Urge number |
| soulUrge.compatibility* | number | Soul Urge compatibility score (50-100) |
| soulUrge.description* | string | Detailed Soul Urge compatibility analysis |
| strengths* | array of string | Key relationship strengths |
| challenges* | array of string | Potential relationship challenges |
| advice* | string | Practical relationship advice |
Supported options
lang
Call it in your language.
Every snippet is generated from the live OpenAPI spec, so method names, parameters, and fields always match production.
import { createRoxy } from '@roxyapi/sdk'
const roxy = createRoxy(process.env.ROXY_API_KEY!)
const { data } = await roxy.numerology.calculateNumCompatibility({ body: { person1: { fullName: 'John William Smith', year: 1990, month: 7, day: 15, lifePath: 5, expression: 7, soulUrge: 6 }, person2: { fullName: 'Jane Marie Doe', year: 1992, month: 3, day: 22, lifePath: 3, expression: 9, soulUrge: 2 } } })Install: npm install @roxyapi/sdk
from roxy_sdk import create_roxy
roxy = create_roxy("YOUR_API_KEY")
result = roxy.numerology.calculate_num_compatibility(person1={'fullName': 'John William Smith', 'year': 1990, 'month': 7, 'day': 15, 'lifePath': 5, 'expression': 7, 'soulUrge': 6}, person2={'fullName': 'Jane Marie Doe', 'year': 1992, 'month': 3, 'day': 22, 'lifePath': 3, 'expression': 9, 'soulUrge': 2})Install: pip install roxy-sdk
use function RoxyAPI\Sdk\createRoxy;
$roxy = createRoxy(getenv('ROXY_API_KEY'));
$result = $roxy->numerology->calculateNumCompatibility(person1: ['fullName' => 'John William Smith', 'year' => 1990, 'month' => 7, 'day' => 15, 'lifePath' => 5, 'expression' => 7, 'soulUrge' => 6], person2: ['fullName' => 'Jane Marie Doe', 'year' => 1992, 'month' => 3, 'day' => 22, 'lifePath' => 3, 'expression' => 9, 'soulUrge' => 2]);Install: composer require roxyapi/sdk
using RoxyApi;
var roxy = new RoxyClient(Environment.GetEnvironmentVariable("ROXY_API_KEY")!);
var result = await roxy.Numerology.Compatibility.PostAsync(new() { /* request fields above */ });Install: dotnet add package RoxyApi.Sdk
import roxyapi "github.com/RoxyAPI/sdk-go"
roxy, _ := roxyapi.NewRoxy(os.Getenv("ROXY_API_KEY"))
resp, _ := roxy.Numerology.CalculateNumCompatibility(ctx, nil, roxyapi.CalculateNumCompatibilityJSONRequestBody{ /* request fields above */ })Install: go get github.com/RoxyAPI/sdk-go
curl -X POST "https://roxyapi.com/api/v2/numerology/compatibility" \
-H "X-API-Key: YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"person1":{"fullName":"John William Smith","year":1990,"month":7,"day":15,"lifePath":5,"expression":7,"soulUrge":6},"person2":{"fullName":"Jane Marie Doe","year":1992,"month":3,"day":22,"lifePath":3,"expression":9,"soulUrge":2}}'Prefer to try before you write code? Run this Numerology endpoint live in the API playground and inspect a real production response.
Remote MCP for AI agents
Every Numerology endpoint is a callable tool on the Remote MCP server over Streamable HTTP. No local setup, no Docker. Claude, ChatGPT, Cursor, and any MCP client auto-discover the tools and ground their answers in verified data.
claude mcp add --transport http \
roxy-numerology https://roxyapi.com/mcp/numerology \
--header "X-API-Key: YOUR_KEY"Tool name for POST /numerology/compatibility: post_numerology_compatibility. Full MCP setup guide
What you can build
Numerology apps and calculators: Life Path pages, full chart readings and name analysis from one integration
Dating and relationship apps: compatibility scores on profiles, Life Path matching and partnership advice from names and birth dates
AI chatbots and agents: structured numerology readings an assistant can quote, with every calculation step to show its work
Wellness and self-discovery platforms: personalized reports, Personal Year planning and daily Personal Day guidance
Editorial and content teams: yearly, monthly and daily numerology columns and personalized email campaigns
Business and brand naming tools: vet company and product names with Chaldean numerology and compare options before launch
Drop-in UI components and no-code widgets.
Render Numerology Compatibility API responses without building charts yourself. Install the npm package and drop these into Next.js, React, Vue, Svelte, Angular, or plain HTML, or embed the very same component on Squarespace, Wix, or WordPress by pasting one snippet, with no backend and no build step. They belong to one library that covers the entire spiritual stack rather than astrology alone, MIT licensed and included in every plan at no extra cost, never a separate product and never an upsell. The Numerology Compatibility API calculations, the interface that renders them, and the Remote MCP your agent calls, all behind one key, end to end.
Show all Numerology Compatibility UI componentsShow fewer Numerology Compatibility UI components
| Element | Renders |
|---|---|
| <roxy-compatibility-card> | Score card with category breakdown |
Related capabilities
Numerology Compatibility API FAQ
What does the Numerology Compatibility API return?
Calculate numerology compatibility between two people from their Life Path, Expression and Soul Urge numbers. Every response is structured JSON with documented fields, not free text, so you map it straight into your product.
How do I authenticate with the Numerology Compatibility API?
Pass your key in the X-API-Key header on every request. Keys are delivered instantly at checkout with no approval queue. Use a secret sk key server side, or mint a publishable pk key locked to your origins for browser and no-code use.
Does the Numerology Compatibility API support multiple languages?
Yes. Append the lang query parameter to any endpoint for responses in English, German, Spanish, French, Hindi, Portuguese, Russian and Turkish. The translated payload includes the full interpretation text, not just field labels.
Is the Numerology Compatibility API available over Remote MCP for AI agents?
Yes. Every endpoint is exposed as a callable tool on the Remote MCP server at https://roxyapi.com/mcp/numerology over Streamable HTTP, so Claude, ChatGPT, Cursor, and any MCP client auto-discover it with no local setup or Docker.
How is the Numerology Compatibility API billed?
Flat pricing: 1 request equals 1 quota unit, REST and MCP identical, with no credit weighting or per-token markup. Every plan includes all 18 domains, so the Numerology Compatibility API is included at no extra cost.
Start using Numerology Compatibility API today.
Life Path, Destiny and Chaldean numerology that shows every step, checked against the authors who defined it.
All 18 domains included with every plan. Every endpoint, MCP server, SDK, and templates.
Plans from $39/mo, starting at $1.80 per domain on annual billing. No credit card required for testing.
View Pricing & Get API Key
