---
title: "Get Vedic Match by Birth Details (v2)"
method: POST
path: "/api/v2/vedic/match"
tags: ["Vedic v2"]
---

# Get Vedic Match by Birth Details (v2)

`POST /api/v2/vedic/match`

## Request

- Base URL: `https://api.freeastroapi.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.freeastroapi.com/api/v2/vedic/match`
- Auth: none declared

Return the calibrated V2 compatibility payload from two birth charts.

This is the birth-data-only equivalent of `/api/v2/vedic/compatibility`.

## Request body

- MatchV2Request
  - `person1` RoutersV2VedicBaseChartRequest, required
    - `year` integer, required: Astronomical year of birth (0-2399; 0 = 1 BCE)
    - `month` integer, required: Month of birth (1-12)
    - `day` integer, required: Day of birth (1-31)
    - `hour` integer, required: Hour of birth (0-23)
    - `minute` integer, required: Minute of birth (0-59)
    - `second` integer: Second of birth (0-59)
    - `city` string: City name (optional)
    - `lat` number, nullable: Latitude
    - `lng` number, nullable: Longitude
    - `tz_str` string: Timezone: AUTO, LMT, or standard (e.g. Europe/Berlin)
    - `ayanamsha` string: Ayanamsha
    - `house_system` string: House system
    - `node_type` string: Node type (mean/true)
    - `reference_date` string, date, nullable: Reference date for transit-sensitive chart context, including Sade Sati. Defaults to today in timezone_used.
  - `person2` RoutersV2VedicBaseChartRequest, required
    - `year` integer, required: Astronomical year of birth (0-2399; 0 = 1 BCE)
    - `month` integer, required: Month of birth (1-12)
    - `day` integer, required: Day of birth (1-31)
    - `hour` integer, required: Hour of birth (0-23)
    - `minute` integer, required: Minute of birth (0-59)
    - `second` integer: Second of birth (0-59)
    - `city` string: City name (optional)
    - `lat` number, nullable: Latitude
    - `lng` number, nullable: Longitude
    - `tz_str` string: Timezone: AUTO, LMT, or standard (e.g. Europe/Berlin)
    - `ayanamsha` string: Ayanamsha
    - `house_system` string: House system
    - `node_type` string: Node type (mean/true)
    - `reference_date` string, date, nullable: Reference date for transit-sensitive chart context, including Sade Sati. Defaults to today in timezone_used.

## Response `200`

Successful Response

- CompatibilityV2Response
  - `persons` CompatibilityPerson[], required
    - `label` string, required
    - `label_display` string, nullable
    - `input_mode` string, required
    - `input_mode_label` string, nullable
    - `moon_sign` CompatibilityMoonSign, required
      - `id` integer, required
      - `name` string, required
      - `degree` number, nullable
    - `moon_nakshatra` CompatibilityPersonNakshatra, required
      - `id` integer, required
      - `name` string, required
      - `pada` integer, nullable
      - `lord` string, required
  - `ashtakoota` CompatibilityAshtakoota, required
    - `score` number, required
    - `max_score` integer, required
    - `percentage` number, required
    - `recommendation` string, required
    - `recommendation_label` string, nullable
    - `kootas` CompatibilityKoota[], required
      - `id` string, required
      - `name` string, required
      - `score` number, required
      - `max_score` integer, required
      - `status` string, required
      - `status_label` string, nullable
      - `evidence` CompatibilityEvidence[], required
        - `kind` string, required
        - `kind_label` string, nullable
        - `message` string, required
  - `doshas` CompatibilityDoshas, required
    - `manglik` CompatibilityManglik, required
      - `person1` CompatibilityManglikSubject, required
        - `available` boolean, required
        - `active` boolean, nullable
        - `severity` string, nullable
        - `severity_label` string, nullable
        - `severity_score` integer, nullable
        - `reference_frames` object[], required
        - `cancellations` object[]
        - `message` string, required
      - `person2` CompatibilityManglikSubject, required
        - `available` boolean, required
        - `active` boolean, nullable
        - `severity` string, nullable
        - `severity_label` string, nullable
        - `severity_score` integer, nullable
        - `reference_frames` object[], required
        - `cancellations` object[]
        - `message` string, required
      - `compatibility` object, required
    - `nadi` CompatibilityDosha, required
      - `active` boolean, required
      - `score` number, required
      - `max_score` integer, required
      - `message` string, required
    - `bhakoot` CompatibilityDosha, required
      - `active` boolean, required
      - `score` number, required
      - `max_score` integer, required
      - `message` string, required
  - `summary` CompatibilitySummary, required
    - `total_score` number, required
    - `max_score` integer, required
    - `minimum_traditional_threshold` integer, required
    - `passes_minimum_threshold` boolean, required
    - `risk_flags` string[], required
    - `risk_flag_labels` string[], nullable
    - `threshold_label` string, nullable
  - `metadata` CompatibilityMetadata, required
    - `endpoint_version` string, required
    - `ruleset_version` string, required
    - `calculation_basis` string, required
    - `person1_input_mode` string, required
    - `person2_input_mode` string, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/freeastroapi/apis/astroservice-api.md) · [All operations](https://skmtc.dev/freeastroapi/apis/astroservice-api/llms.txt) · [OpenAPI document](https://skmtc.dev/freeastroapi/apis/astroservice-api/revisions/0c9b4a759522?raw)
