---
title: "Compare Famous People Chart Similarity"
method: POST
path: "/api/v2/western/chart-similarity/famous-people"
tags: ["Western v2"]
---

# Compare Famous People Chart Similarity

`POST /api/v2/western/chart-similarity/famous-people`

## 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/western/chart-similarity/famous-people`
- Auth: none declared

## Request body

- FamousPeopleChartSimilarityRequest
  - `natal` union, required
    - object
      - `name` string, nullable
      - `year` integer, required: Astronomical year (0-2399; 0 = 1 BCE)
      - `month` integer, required
      - `day` integer, required
      - `hour` integer, nullable
      - `minute` integer, nullable
      - `time_known` boolean
      - `city` string, nullable, required
      - `lat` number, nullable
      - `lng` number, nullable
      - `tz_str` string, nullable
      - `dst_policy` 'reject' | 'earlier' | 'later' | 'shift_forward', nullable: Optional DST fold/gap policy. Omit to preserve legacy behavior; use reject for strict integrations.
      - `renderer` 'default'
      - `theme` string, nullable
      - `format` string, nullable
      - `lang` string, nullable
      - `size` integer, nullable
      - `glyphs` boolean, nullable
      - `show_aspects` boolean, nullable
      - `show_houses` boolean, nullable
      - `show_positions_panel` boolean, nullable
      - `show_legend` boolean, nullable
      - `custom_css` string, nullable
      - `house_system` string, nullable
      - `orb_settings` AspectOrbSettings: Per-aspect detection orbs, expressed in degrees.
        - `conjunction` number, nullable
        - `opposition` number, nullable
        - `trine` number, nullable
        - `square` number, nullable
        - `sextile` number, nullable
        - `quincunx` number, nullable
        - `quintile` number, nullable
        - `semi_sextile` number, nullable
        - `semi_square` number, nullable
        - `sesquiquadrate` number, nullable
      - `include_speed` boolean, nullable
      - `lilith` boolean, nullable
      - `mean_lilith` boolean, nullable
      - `true_lilith` boolean, nullable
      - `chiron` boolean, nullable
      - `chiron_invisible_door` boolean, nullable
      - `chiron_visible_door` boolean, nullable
      - `true_node` boolean, nullable
      - `mean_node` boolean, nullable
      - `pholus` boolean, nullable
      - `ceres` boolean, nullable
      - `pallas` boolean, nullable
      - `juno` boolean, nullable
      - `vesta` boolean, nullable
      - `eris` boolean, nullable
      - `eros` boolean, nullable
      - `vertex` boolean, nullable
      - `include_minor_aspects` boolean, nullable
      - `include_declination_aspects` boolean, nullable
      - `declination_orb` number, nullable
      - `include_stelliums` boolean, nullable
      - `stellium_policy` 'legacy' | 'classified', nullable: Optional stellium classification policy. Natal insights defaults omission to 'classified'; other shared-request endpoints retain legacy omission behavior. 'legacy' preserves count-based sign/house groups; 'classified' requires a conjunction cluster and reports loose sign/house occupancy as concentrations.
      - `include_tables` boolean, nullable
      - `include_fixed_stars` boolean, nullable
      - `fixed_stars` string[], nullable
      - `fixed_star_packs` string[], nullable
      - `include_features` string[], nullable
      - `include_dominants` boolean, nullable
      - `dominants_method` 'traditional' | 'modern', nullable: Opt in to detailed planet dominance scores, weighted elements, and a signature sign. Omit this field to keep the default response unchanged.
      - `include_dignity` boolean, nullable
      - `include_rulers` boolean, nullable
      - `include_configurations` boolean, nullable
      - `zodiac_type` string, nullable
      - `sidereal_ayanamsa` string, nullable
      - `view` 'all' | 'grouped-top' | 'grouped-all' | 'grouped-canonical', nullable
      - `separate_signatures_from_facts` boolean, nullable
      - `response_format` 'full' | 'flat', nullable: Use 'flat' to return a shallow no-code-friendly response with a single text field.
      - `interpretation` InterpretationSettings
        - `enable` boolean
        - `template_id` string, nullable
        - `language` string, nullable
        - `style` string, nullable
      - `psychological_report` PsychologicalReportSettings
        - `enabled` boolean
        - `mode` 'async' | 'sync'
        - `style` 'standard' | 'jungian_parental', nullable
        - `tone` string, nullable
        - `depth` string, nullable
        - `audience` string, nullable
        - `focus_areas` string[], nullable
        - `excluded_topics` string[], nullable
        - `custom_instructions` string, nullable
        - `report_structure` object, nullable
        - `markdown` boolean
        - `output_format` 'json' | 'pdf', nullable
        - `include_chart_in_pdf` boolean
        - `include_svg_chart_in_pdf` boolean
        - `include_natal_chart_in_response` boolean
        - `pdf_matrix_position` 'end' | 'after_chart', nullable
        - `chart_config` object, nullable
        - `pdf_footer_label` string, nullable
        - `include_profile_branding_logo` boolean
        - `callback_url` string, nullable
        - `callback_signing_secret` string, nullable
    - object
      - `name` string, nullable
      - `year` integer, required: Astronomical year (0-2399; 0 = 1 BCE)
      - `month` integer, required
      - `day` integer, required
      - `hour` integer, nullable
      - `minute` integer, nullable
      - `time_known` boolean
      - `city` string, nullable
      - `lat` number, nullable, required
      - `lng` number, nullable, required
      - `tz_str` string, nullable
      - `dst_policy` 'reject' | 'earlier' | 'later' | 'shift_forward', nullable: Optional DST fold/gap policy. Omit to preserve legacy behavior; use reject for strict integrations.
      - `renderer` 'default'
      - `theme` string, nullable
      - `format` string, nullable
      - `lang` string, nullable
      - `size` integer, nullable
      - `glyphs` boolean, nullable
      - `show_aspects` boolean, nullable
      - `show_houses` boolean, nullable
      - `show_positions_panel` boolean, nullable
      - `show_legend` boolean, nullable
      - `custom_css` string, nullable
      - `house_system` string, nullable
      - `orb_settings` AspectOrbSettings: Per-aspect detection orbs, expressed in degrees.
        - `conjunction` number, nullable
        - `opposition` number, nullable
        - `trine` number, nullable
        - `square` number, nullable
        - `sextile` number, nullable
        - `quincunx` number, nullable
        - `quintile` number, nullable
        - `semi_sextile` number, nullable
        - `semi_square` number, nullable
        - `sesquiquadrate` number, nullable
      - `include_speed` boolean, nullable
      - `lilith` boolean, nullable
      - `mean_lilith` boolean, nullable
      - `true_lilith` boolean, nullable
      - `chiron` boolean, nullable
      - `chiron_invisible_door` boolean, nullable
      - `chiron_visible_door` boolean, nullable
      - `true_node` boolean, nullable
      - `mean_node` boolean, nullable
      - `pholus` boolean, nullable
      - `ceres` boolean, nullable
      - `pallas` boolean, nullable
      - `juno` boolean, nullable
      - `vesta` boolean, nullable
      - `eris` boolean, nullable
      - `eros` boolean, nullable
      - `vertex` boolean, nullable
      - `include_minor_aspects` boolean, nullable
      - `include_declination_aspects` boolean, nullable
      - `declination_orb` number, nullable
      - `include_stelliums` boolean, nullable
      - `stellium_policy` 'legacy' | 'classified', nullable: Optional stellium classification policy. Natal insights defaults omission to 'classified'; other shared-request endpoints retain legacy omission behavior. 'legacy' preserves count-based sign/house groups; 'classified' requires a conjunction cluster and reports loose sign/house occupancy as concentrations.
      - `include_tables` boolean, nullable
      - `include_fixed_stars` boolean, nullable
      - `fixed_stars` string[], nullable
      - `fixed_star_packs` string[], nullable
      - `include_features` string[], nullable
      - `include_dominants` boolean, nullable
      - `dominants_method` 'traditional' | 'modern', nullable: Opt in to detailed planet dominance scores, weighted elements, and a signature sign. Omit this field to keep the default response unchanged.
      - `include_dignity` boolean, nullable
      - `include_rulers` boolean, nullable
      - `include_configurations` boolean, nullable
      - `zodiac_type` string, nullable
      - `sidereal_ayanamsa` string, nullable
      - `view` 'all' | 'grouped-top' | 'grouped-all' | 'grouped-canonical', nullable
      - `separate_signatures_from_facts` boolean, nullable
      - `response_format` 'full' | 'flat', nullable: Use 'flat' to return a shallow no-code-friendly response with a single text field.
      - `interpretation` InterpretationSettings
        - `enable` boolean
        - `template_id` string, nullable
        - `language` string, nullable
        - `style` string, nullable
      - `psychological_report` PsychologicalReportSettings
        - `enabled` boolean
        - `mode` 'async' | 'sync'
        - `style` 'standard' | 'jungian_parental', nullable
        - `tone` string, nullable
        - `depth` string, nullable
        - `audience` string, nullable
        - `focus_areas` string[], nullable
        - `excluded_topics` string[], nullable
        - `custom_instructions` string, nullable
        - `report_structure` object, nullable
        - `markdown` boolean
        - `output_format` 'json' | 'pdf', nullable
        - `include_chart_in_pdf` boolean
        - `include_svg_chart_in_pdf` boolean
        - `include_natal_chart_in_response` boolean
        - `pdf_matrix_position` 'end' | 'after_chart', nullable
        - `chart_config` object, nullable
        - `pdf_footer_label` string, nullable
        - `include_profile_branding_logo` boolean
        - `callback_url` string, nullable
        - `callback_signing_secret` string, nullable
  - `settings` ChartSimilaritySettings
    - `top_n` integer
    - `bodies` string[]
    - `aspect_set` 'major' | 'major_plus' | 'extended'
    - `include_angles` boolean
    - `close_position_orb_deg` number
    - `close_angle_orb_deg` number
    - `close_aspect_orb_deg` number
    - `max_detail_items` integer

## Response `200`

Successful Response

- ChartSimilarityResponse
  - `meta` ChartSimilarityDatasetMeta, required
    - `dataset` string, required
    - `dataset_version` string, required
    - `dataset_size` integer, required
    - `generated_at` string, nullable
    - `rules_version` string, required
    - `zodiac` string
    - `house_system` string, nullable
    - `notes` string[]
  - `run` ChartSimilarityRunMeta, required
    - `settings` ChartSimilaritySettings, required
      - `top_n` integer
      - `bodies` string[]
      - `aspect_set` 'major' | 'major_plus' | 'extended'
      - `include_angles` boolean
      - `close_position_orb_deg` number
      - `close_angle_orb_deg` number
      - `close_aspect_orb_deg` number
      - `max_detail_items` integer
    - `compared_count` integer, required
    - `skipped_count` integer
  - `matches` ChartSimilarityMatch[], required
    - `person` FamousPersonSummary, required
      - `id` string, required
      - `name` string, required
      - `occupations` string[]
      - `country` string, nullable
      - `country_code` string, nullable
      - `gender` string, nullable
      - `birth_time` string, required
      - `location` string, required
    - `score` integer, required
    - `summary` ChartSimilaritySummary, required
      - `headline` string, required
      - `match_strength` 'exceptional' | 'strong' | 'moderate' | 'light' | 'weak', required
      - `explanation` string[]
      - `why_this_match` string[]
      - `same_sign_positions` string[]
      - `close_positions` string[]
      - `personal_planet_matches` string[]
      - `social_planet_matches` string[]
      - `generational_matches` string[]
      - `shared_aspects` string[]
      - `shared_angles` string[]
    - `breakdown` ChartSimilarityBreakdown, required
      - `placement_score` integer, required
      - `aspect_score` integer, required
      - `angle_score` integer, nullable
      - `personal_placement_score` integer, nullable
      - `social_placement_score` integer, nullable
      - `generational_placement_score` integer, nullable
      - `personal_aspect_score` integer, nullable
      - `social_aspect_score` integer, nullable
      - `generational_aspect_score` integer, nullable
      - `placement_weight` number, required
      - `aspect_weight` number, required
      - `angle_weight` number
    - `counts` ChartSimilarityCounts, required
      - `compared_positions` integer, required
      - `same_sign_positions` integer, required
      - `close_positions` integer, required
      - `shared_major_aspects` integer, required
      - `shared_close_aspects` integer, required
      - `compared_angles` integer, nullable
      - `same_sign_angles` integer, nullable
      - `close_angles` integer, nullable
    - `shared_positions` SharedPosition[]
      - `point` string, required
      - `user_sign` string, required
      - `match_sign` string, required
      - `user_degree` number, required
      - `match_degree` number, required
      - `degree_distance` number, required
      - `same_sign` boolean, required
      - `close` boolean, required
    - `shared_angles` SharedPosition[]
      - `point` string, required
      - `user_sign` string, required
      - `match_sign` string, required
      - `user_degree` number, required
      - `match_degree` number, required
      - `degree_distance` number, required
      - `same_sign` boolean, required
      - `close` boolean, required
    - `shared_aspects` SharedAspect[]
      - `points` string[], required
      - `aspect` string, required
      - `user_orb` number, required
      - `match_orb` number, required
      - `orb_delta` number, required
    - `confidence` ChartSimilarityConfidence, required
      - `birth_time` 'known' | 'unknown'
      - `location_resolved` boolean, nullable
      - `houses_and_angles_used` boolean

## 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)
