@roxyapi/sdk 1.2.27 → 1.2.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/types.gen.ts CHANGED
@@ -146,6 +146,57 @@ export type NatalChartResponse = {
146
146
  */
147
147
  interpretation: string;
148
148
  }>;
149
+ /**
150
+ * Detected multi-planet aspect configurations (Grand Trine, Kite, T-Square, Grand Cross, Yod, Mystic Rectangle, Stellium). Grand Cross suppresses contained T-Squares, Kite suppresses underlying Grand Trine.
151
+ */
152
+ patterns?: Array<{
153
+ /**
154
+ * Pattern kind identifier. GRAND_TRINE (3 trines, harmonious flow), KITE (Grand Trine with a focal outlet planet), T_SQUARE (opposition with squared apex, growth engine), GRAND_CROSS (4 planets in 2 oppositions and 4 squares, peak tension), YOD (Finger of Fate, fated adjustment), MYSTIC_RECTANGLE (oppositions softened by trines and sextiles), STELLIUM (3+ planets clustered in a sign or 10-degree arc).
155
+ */
156
+ kind: 'GRAND_TRINE' | 'KITE' | 'T_SQUARE' | 'GRAND_CROSS' | 'YOD' | 'MYSTIC_RECTANGLE' | 'STELLIUM';
157
+ /**
158
+ * Human-readable name of the configuration as used in astrological literature.
159
+ */
160
+ name: string;
161
+ /**
162
+ * Participating bodies in canonical order. For Kite, T-Square, and Yod the apex planet appears first.
163
+ */
164
+ planets: Array<string>;
165
+ /**
166
+ * Focal planet for Kite, T-Square, and Yod patterns. Receives the released energy of the configuration and is the recommended integration point.
167
+ */
168
+ apex?: string;
169
+ /**
170
+ * Dominant element when the pattern is element-coherent (Grand Trine, Kite). Reported lowercase. Absent for patterns whose meaning does not pivot on element.
171
+ */
172
+ element?: 'fire' | 'earth' | 'air' | 'water';
173
+ /**
174
+ * Dominant modality for tension-based patterns (T-Square, Grand Cross). Cardinal initiates, Fixed sustains, Mutable adapts.
175
+ */
176
+ modality?: 'cardinal' | 'fixed' | 'mutable';
177
+ /**
178
+ * True if the pattern is out-of-sign (one or more planets in a neighboring element or modality). Dissociate patterns are still valid but operate with weakened thematic coherence.
179
+ */
180
+ dissociate?: boolean;
181
+ /**
182
+ * Tightness score (0-100) derived from the average orb tightness across all defining aspects. Higher means closer to exact and stronger thematic expression.
183
+ */
184
+ tightness: number;
185
+ /**
186
+ * Concise one-line interpretation naming the participating planets and theme. Localized to the requested language via the lang query parameter (defaults to English).
187
+ */
188
+ interpretation: string;
189
+ /**
190
+ * Stable template identifier used to render the interpretation. Useful for clients that wish to swap in a custom narrative template while preserving the structured variables.
191
+ */
192
+ interpretationKey: string;
193
+ /**
194
+ * Variables that were interpolated into the interpretation template. Names already resolved to the requested language where appropriate.
195
+ */
196
+ interpretationVars: {
197
+ [key: string]: string;
198
+ };
199
+ }>;
149
200
  /**
150
201
  * Aspect pattern analysis showing the balance of harmonious vs challenging energies in the chart.
151
202
  */
@@ -480,6 +531,57 @@ export type AspectsResponse = {
480
531
  nature: string;
481
532
  };
482
533
  }>;
534
+ /**
535
+ * Detected multi-planet aspect configurations (Grand Trine, Kite, T-Square, Grand Cross, Yod, Mystic Rectangle, Stellium).
536
+ */
537
+ patterns?: Array<{
538
+ /**
539
+ * Pattern kind identifier. GRAND_TRINE (3 trines, harmonious flow), KITE (Grand Trine with a focal outlet planet), T_SQUARE (opposition with squared apex, growth engine), GRAND_CROSS (4 planets in 2 oppositions and 4 squares, peak tension), YOD (Finger of Fate, fated adjustment), MYSTIC_RECTANGLE (oppositions softened by trines and sextiles), STELLIUM (3+ planets clustered in a sign or 10-degree arc).
540
+ */
541
+ kind: 'GRAND_TRINE' | 'KITE' | 'T_SQUARE' | 'GRAND_CROSS' | 'YOD' | 'MYSTIC_RECTANGLE' | 'STELLIUM';
542
+ /**
543
+ * Human-readable name of the configuration as used in astrological literature.
544
+ */
545
+ name: string;
546
+ /**
547
+ * Participating bodies in canonical order. For Kite, T-Square, and Yod the apex planet appears first.
548
+ */
549
+ planets: Array<string>;
550
+ /**
551
+ * Focal planet for Kite, T-Square, and Yod patterns. Receives the released energy of the configuration and is the recommended integration point.
552
+ */
553
+ apex?: string;
554
+ /**
555
+ * Dominant element when the pattern is element-coherent (Grand Trine, Kite). Reported lowercase. Absent for patterns whose meaning does not pivot on element.
556
+ */
557
+ element?: 'fire' | 'earth' | 'air' | 'water';
558
+ /**
559
+ * Dominant modality for tension-based patterns (T-Square, Grand Cross). Cardinal initiates, Fixed sustains, Mutable adapts.
560
+ */
561
+ modality?: 'cardinal' | 'fixed' | 'mutable';
562
+ /**
563
+ * True if the pattern is out-of-sign (one or more planets in a neighboring element or modality). Dissociate patterns are still valid but operate with weakened thematic coherence.
564
+ */
565
+ dissociate?: boolean;
566
+ /**
567
+ * Tightness score (0-100) derived from the average orb tightness across all defining aspects. Higher means closer to exact and stronger thematic expression.
568
+ */
569
+ tightness: number;
570
+ /**
571
+ * Concise one-line interpretation naming the participating planets and theme. Localized to the requested language via the lang query parameter (defaults to English).
572
+ */
573
+ interpretation: string;
574
+ /**
575
+ * Stable template identifier used to render the interpretation. Useful for clients that wish to swap in a custom narrative template while preserving the structured variables.
576
+ */
577
+ interpretationKey: string;
578
+ /**
579
+ * Variables that were interpolated into the interpretation template. Names already resolved to the requested language where appropriate.
580
+ */
581
+ interpretationVars: {
582
+ [key: string]: string;
583
+ };
584
+ }>;
483
585
  /**
484
586
  * Aspect summary with counts by nature and type.
485
587
  */
@@ -532,6 +634,100 @@ export type AspectsRequest = {
532
634
  aspectTypes?: Array<string>;
533
635
  };
534
636
 
637
+ export type AspectPatternsResponse = {
638
+ /**
639
+ * All aspect patterns detected in the chart, in detection order: Grand Cross first, then Kite, Grand Trine, T-Square, Yod, Mystic Rectangle, Stellium. Patterns absorbed by a higher-priority detection (T-Squares inside a Grand Cross, Grand Trines absorbed by a Kite) are not reported separately.
640
+ */
641
+ patterns: Array<{
642
+ /**
643
+ * Pattern kind identifier. GRAND_TRINE (3 trines, harmonious flow), KITE (Grand Trine with a focal outlet planet), T_SQUARE (opposition with squared apex, growth engine), GRAND_CROSS (4 planets in 2 oppositions and 4 squares, peak tension), YOD (Finger of Fate, fated adjustment), MYSTIC_RECTANGLE (oppositions softened by trines and sextiles), STELLIUM (3+ planets clustered in a sign or 10-degree arc).
644
+ */
645
+ kind: 'GRAND_TRINE' | 'KITE' | 'T_SQUARE' | 'GRAND_CROSS' | 'YOD' | 'MYSTIC_RECTANGLE' | 'STELLIUM';
646
+ /**
647
+ * Human-readable name of the configuration as used in astrological literature.
648
+ */
649
+ name: string;
650
+ /**
651
+ * Participating bodies in canonical order. For Kite, T-Square, and Yod the apex planet appears first.
652
+ */
653
+ planets: Array<string>;
654
+ /**
655
+ * Focal planet for Kite, T-Square, and Yod patterns. Receives the released energy of the configuration and is the recommended integration point.
656
+ */
657
+ apex?: string;
658
+ /**
659
+ * Dominant element when the pattern is element-coherent (Grand Trine, Kite). Reported lowercase. Absent for patterns whose meaning does not pivot on element.
660
+ */
661
+ element?: 'fire' | 'earth' | 'air' | 'water';
662
+ /**
663
+ * Dominant modality for tension-based patterns (T-Square, Grand Cross). Cardinal initiates, Fixed sustains, Mutable adapts.
664
+ */
665
+ modality?: 'cardinal' | 'fixed' | 'mutable';
666
+ /**
667
+ * True if the pattern is out-of-sign (one or more planets in a neighboring element or modality). Dissociate patterns are still valid but operate with weakened thematic coherence.
668
+ */
669
+ dissociate?: boolean;
670
+ /**
671
+ * Tightness score (0-100) derived from the average orb tightness across all defining aspects. Higher means closer to exact and stronger thematic expression.
672
+ */
673
+ tightness: number;
674
+ /**
675
+ * Concise one-line interpretation naming the participating planets and theme. Localized to the requested language via the lang query parameter (defaults to English).
676
+ */
677
+ interpretation: string;
678
+ /**
679
+ * Stable template identifier used to render the interpretation. Useful for clients that wish to swap in a custom narrative template while preserving the structured variables.
680
+ */
681
+ interpretationKey: string;
682
+ /**
683
+ * Variables that were interpolated into the interpretation template. Names already resolved to the requested language where appropriate.
684
+ */
685
+ interpretationVars: {
686
+ [key: string]: string;
687
+ };
688
+ }>;
689
+ /**
690
+ * Total number of detected aspect patterns in this chart.
691
+ */
692
+ total: number;
693
+ /**
694
+ * Echo of the options used for this detection run. Useful for reproducibility and for downstream UI display.
695
+ */
696
+ options: {
697
+ /**
698
+ * Whether the strict (Pontopia-style) orb budget was used. False uses industry-standard orbs (8 for major aspects, 9 for square, 6 for sextile, 3 for quincunx).
699
+ */
700
+ strictOrbs: boolean;
701
+ /**
702
+ * Optional bodies included beyond the default Sun-Pluto set. Empty means classical 10-planet detection only.
703
+ */
704
+ include: Array<'chiron' | 'northNode'>;
705
+ };
706
+ };
707
+
708
+ export type AspectPatternsRequest = {
709
+ /**
710
+ * Birth date in YYYY-MM-DD format. Determines planetary positions for the specific calendar day.
711
+ */
712
+ date: string;
713
+ /**
714
+ * Birth time in 24-hour HH:MM:SS format. Determines the Ascendant (rising sign) and house cusps. Use 12:00:00 if unknown.
715
+ */
716
+ time: string;
717
+ /**
718
+ * Birth location latitude in decimal degrees (-90 to 90). Positive = North, negative = South.
719
+ */
720
+ latitude: number;
721
+ /**
722
+ * Birth location longitude in decimal degrees (-180 to 180). Positive = East, negative = West.
723
+ */
724
+ longitude: number;
725
+ /**
726
+ * Timezone: decimal hours from UTC (e.g. -5 for EST, 5.5 for IST) OR IANA name (e.g. "America/New_York", "Asia/Kolkata"). IANA strings are resolved to the DST-correct offset for the given date, so you can pass `cities[0].timezone` from /location/search directly.
727
+ */
728
+ timezone: number | string;
729
+ };
730
+
535
731
  export type TransitsResponse = {
536
732
  /**
537
733
  * Date of the transit calculation (YYYY-MM-DD).
@@ -741,6 +937,39 @@ export type BirthChartResponse = {
741
937
  awastha?: 'Bala' | 'Kumara' | 'Yuva' | 'Vriddha' | 'Mrita';
742
938
  }>;
743
939
  };
940
+ /**
941
+ * Twelve classical yogas detected against this chart: Gajakesari (three-rule parashara definition), Sunapha, Anapha, Dhurdhura, Kemadruma, Chandra Mangala, Budha-Aditya, and the five Pancha Mahapurusha (Ruchaka, Bhadra, Hamsa, Malavya, Sasa). Each entry carries an `id` (matches `GET /yoga/{id}` for full glossary lookup), a `present` boolean, and classical-text `evidence` for the rule that triggered or failed.
942
+ */
943
+ yogas?: Array<{
944
+ /**
945
+ * Glossary id (lowercase, kebab-case) matching an entry in the 300-entry planetary-yoga catalog. Use with GET /yoga/{id} to retrieve the full glossary text.
946
+ */
947
+ id: string;
948
+ /**
949
+ * Classical Sanskrit name of the yoga as referenced in BPHS (Brihat Parashara Hora Shastra), Phaladeepika, and B.V. Raman *Three Hundred Important Combinations*.
950
+ */
951
+ name: string;
952
+ /**
953
+ * Brief classical formation rule. Identifies the planetary placement, lordship, dignity, or aspect pattern required for the yoga to form.
954
+ */
955
+ description: string;
956
+ /**
957
+ * Classical phala (life-effect) description of the yoga when present, sourced from the parashari and phaladeepika tradition.
958
+ */
959
+ result: string;
960
+ /**
961
+ * Overall nature. Auspicious yogas (Pancha Mahapurusha, Gajakesari) bestow benefits; inauspicious yogas (Kemadruma) indicate challenges; Both denotes context-dependent effects.
962
+ */
963
+ quality: 'Positive' | 'Negative' | 'Both';
964
+ /**
965
+ * True if every classical condition for the yoga is satisfied by the given chart. False if any rule fails, including "almost-present" cases where dignity is met but kendra/aspect is not.
966
+ */
967
+ present: boolean;
968
+ /**
969
+ * Human-readable rationale naming the specific rule that triggered or failed the detection, including planetary positions, dignity, kendrādhipati status, lordship, or malefic drishti.
970
+ */
971
+ evidence?: string;
972
+ }>;
744
973
  /**
745
974
  * Quick lookup of all planet positions keyed by planet name. Contains Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn, Rahu, Ketu, and Lagna (Ascendant).
746
975
  */
@@ -1552,6 +1781,79 @@ export type SadhesatiRequest = {
1552
1781
  timezone?: number | string;
1553
1782
  };
1554
1783
 
1784
+ export type YogaDetectResponse = {
1785
+ /**
1786
+ * Array of 12 detected yogas. Every entry carries a present boolean; filter on present === true for active yogas. Evidence text names the rule that triggered or failed.
1787
+ */
1788
+ yogas: Array<{
1789
+ /**
1790
+ * Glossary id (lowercase, kebab-case) matching an entry in the 300-entry planetary-yoga catalog. Use with GET /yoga/{id} to retrieve the full glossary text.
1791
+ */
1792
+ id: string;
1793
+ /**
1794
+ * Classical Sanskrit name of the yoga as referenced in BPHS (Brihat Parashara Hora Shastra), Phaladeepika, and B.V. Raman *Three Hundred Important Combinations*.
1795
+ */
1796
+ name: string;
1797
+ /**
1798
+ * Brief classical formation rule. Identifies the planetary placement, lordship, dignity, or aspect pattern required for the yoga to form.
1799
+ */
1800
+ description: string;
1801
+ /**
1802
+ * Classical phala (life-effect) description of the yoga when present, sourced from the parashari and phaladeepika tradition.
1803
+ */
1804
+ result: string;
1805
+ /**
1806
+ * Overall nature. Auspicious yogas (Pancha Mahapurusha, Gajakesari) bestow benefits; inauspicious yogas (Kemadruma) indicate challenges; Both denotes context-dependent effects.
1807
+ */
1808
+ quality: 'Positive' | 'Negative' | 'Both';
1809
+ /**
1810
+ * True if every classical condition for the yoga is satisfied by the given chart. False if any rule fails, including "almost-present" cases where dignity is met but kendra/aspect is not.
1811
+ */
1812
+ present: boolean;
1813
+ /**
1814
+ * Human-readable rationale naming the specific rule that triggered or failed the detection, including planetary positions, dignity, kendrādhipati status, lordship, or malefic drishti.
1815
+ */
1816
+ evidence?: string;
1817
+ }>;
1818
+ /**
1819
+ * Count of yogas where present === true in this chart. Range 0-12.
1820
+ */
1821
+ total: number;
1822
+ /**
1823
+ * Echo of the resolved birth data used for detection. Timezone is the numeric offset that the chart engine consumed (IANA names are resolved upstream).
1824
+ */
1825
+ birthDetails: {
1826
+ date: string;
1827
+ time: string;
1828
+ latitude: number;
1829
+ longitude: number;
1830
+ timezone: number;
1831
+ };
1832
+ };
1833
+
1834
+ export type YogaDetectRequest = {
1835
+ /**
1836
+ * Birth date in YYYY-MM-DD format. Date determines planetary positions and nakshatra calculations for Vedic kundli (janam patri). Accurate birth date is essential for dashas, yoga calculations, and divisional charts (vargas).
1837
+ */
1838
+ date: string;
1839
+ /**
1840
+ * Birth time in 24-hour HH:MM:SS format. Time is CRITICAL for Lagna (Ascendant) calculation and house divisions - changes every ~2 hours. Even minutes matter for accurate nakshatra pada and divisional chart (D9, D10) calculations. Without exact time, Lagna and house-based predictions will be incorrect.
1841
+ */
1842
+ time: string;
1843
+ /**
1844
+ * Birth location latitude in decimal degrees. Location determines local sidereal time for Lagna calculation and affects bhava (house) cusps. Example: Delhi 28.6139, Mumbai 19.0760, Kathmandu 27.7172.
1845
+ */
1846
+ latitude: number;
1847
+ /**
1848
+ * Birth location longitude in decimal degrees. Affects local time calculations and ayanamsha adjustments. Example: Delhi 77.2090, Mumbai 72.8777, Kathmandu 85.3240.
1849
+ */
1850
+ longitude: number;
1851
+ /**
1852
+ * Timezone: decimal hours from UTC (e.g. 5.5 for IST, -5 for EST) OR IANA name (e.g. "Asia/Kolkata", "America/New_York"). IANA strings are resolved to the DST-correct offset for the given date, so you can pass `cities[0].timezone` from /location/search directly. Defaults to 5.5 (IST).
1853
+ */
1854
+ timezone?: number | string;
1855
+ };
1856
+
1555
1857
  export type KpAyanamsaResponse = {
1556
1858
  /**
1557
1859
  * Date for which ayanamsa was calculated
@@ -3247,11 +3549,11 @@ export type Card = {
3247
3549
 
3248
3550
  export type DrawnCard = {
3249
3551
  /**
3250
- * Unique card identifier in kebab-case (e.g. the-fool, ace-of-cups, queen-of-swords).
3552
+ * Unique card identifier in kebab-case (e.g. the-fool, ace-of-cups).
3251
3553
  */
3252
3554
  id: string;
3253
3555
  /**
3254
- * Display name of the tarot card as it appears in the Rider-Waite-Smith tradition.
3556
+ * Display name of the tarot card.
3255
3557
  */
3256
3558
  name: string;
3257
3559
  /**
@@ -3282,6 +3584,26 @@ export type DrawnCard = {
3282
3584
  * Full interpretation of this card in its current orientation, providing detailed divination guidance.
3283
3585
  */
3284
3586
  meaning: string;
3587
+ /**
3588
+ * Love and relationship interpretation for the drawn orientation. Covers romantic partnerships, dating, emotional connections, and matters of the heart.
3589
+ */
3590
+ love?: string;
3591
+ /**
3592
+ * Career and professional interpretation for the drawn orientation. Covers workplace dynamics, job transitions, ambition, and vocational purpose.
3593
+ */
3594
+ career?: string;
3595
+ /**
3596
+ * Financial interpretation for the drawn orientation. Covers money management, investments, material prosperity, and abundance mindset.
3597
+ */
3598
+ finances?: string;
3599
+ /**
3600
+ * Health and wellbeing interpretation for the drawn orientation. Covers physical vitality, mental health, energy levels, and self-care guidance.
3601
+ */
3602
+ health?: string;
3603
+ /**
3604
+ * Spiritual interpretation for the drawn orientation. Covers personal growth, inner wisdom, soul purpose, and metaphysical development.
3605
+ */
3606
+ spirituality?: string;
3285
3607
  /**
3286
3608
  * URL to the tarot card artwork image.
3287
3609
  */
@@ -5631,30 +5953,163 @@ export type PostAstrologyHousesErrors = {
5631
5953
  };
5632
5954
  };
5633
5955
 
5634
- export type PostAstrologyHousesError = PostAstrologyHousesErrors[keyof PostAstrologyHousesErrors];
5956
+ export type PostAstrologyHousesError = PostAstrologyHousesErrors[keyof PostAstrologyHousesErrors];
5957
+
5958
+ export type PostAstrologyHousesResponses = {
5959
+ /**
5960
+ * House cusps calculated successfully
5961
+ */
5962
+ 200: HousesResponse;
5963
+ };
5964
+
5965
+ export type PostAstrologyHousesResponse = PostAstrologyHousesResponses[keyof PostAstrologyHousesResponses];
5966
+
5967
+ export type PostAstrologyAspectsData = {
5968
+ body?: AspectsRequest;
5969
+ path?: never;
5970
+ query?: {
5971
+ /**
5972
+ * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
5973
+ */
5974
+ lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
5975
+ };
5976
+ url: '/astrology/aspects';
5977
+ };
5978
+
5979
+ export type PostAstrologyAspectsErrors = {
5980
+ /**
5981
+ * Validation error. `issues[]` lists every failed field.
5982
+ */
5983
+ 400: {
5984
+ /**
5985
+ * First issue summary.
5986
+ */
5987
+ error: string;
5988
+ code: 'validation_error';
5989
+ /**
5990
+ * Every validation failure. Use this to rebuild a valid request.
5991
+ */
5992
+ issues: Array<{
5993
+ /**
5994
+ * Dot-separated field path, or "(root)" for top-level.
5995
+ */
5996
+ path: string;
5997
+ message: string;
5998
+ /**
5999
+ * Zod issue code (invalid_type, too_small, too_big, invalid_string, ...).
6000
+ */
6001
+ code?: string;
6002
+ /**
6003
+ * Expected type for invalid_type.
6004
+ */
6005
+ expected?: string;
6006
+ /**
6007
+ * Minimum bound for too_small issues.
6008
+ */
6009
+ minimum?: number | string;
6010
+ /**
6011
+ * Maximum bound for too_big issues.
6012
+ */
6013
+ maximum?: number | string;
6014
+ inclusive?: boolean;
6015
+ /**
6016
+ * Format name for string issues (regex, email, url, uuid).
6017
+ */
6018
+ format?: string;
6019
+ /**
6020
+ * Regex pattern when format is regex.
6021
+ */
6022
+ pattern?: string;
6023
+ }>;
6024
+ };
6025
+ /**
6026
+ * Invalid or missing API key
6027
+ */
6028
+ 401: {
6029
+ /**
6030
+ * Human-readable error message. May change wording.
6031
+ */
6032
+ error: string;
6033
+ /**
6034
+ * Machine-readable error code. Stable identifier.
6035
+ */
6036
+ code: string;
6037
+ };
6038
+ /**
6039
+ * Method not allowed. The path exists but only responds to the methods listed in `allow[]` and the `Allow` response header.
6040
+ */
6041
+ 405: {
6042
+ error: string;
6043
+ code: 'method_not_allowed';
6044
+ /**
6045
+ * Allowed HTTP methods for this path. Mirrors the Allow response header.
6046
+ */
6047
+ allow: Array<string>;
6048
+ /**
6049
+ * Link to the product page for this domain.
6050
+ */
6051
+ docs?: string;
6052
+ };
6053
+ /**
6054
+ * Monthly rate limit exceeded
6055
+ */
6056
+ 429: {
6057
+ /**
6058
+ * Human-readable error message. May change wording.
6059
+ */
6060
+ error: string;
6061
+ /**
6062
+ * Machine-readable error code. Stable identifier.
6063
+ */
6064
+ code: string;
6065
+ };
6066
+ /**
6067
+ * Internal server error
6068
+ */
6069
+ 500: {
6070
+ /**
6071
+ * Human-readable error message. May change wording.
6072
+ */
6073
+ error: string;
6074
+ /**
6075
+ * Machine-readable error code. Stable identifier.
6076
+ */
6077
+ code: string;
6078
+ };
6079
+ };
6080
+
6081
+ export type PostAstrologyAspectsError = PostAstrologyAspectsErrors[keyof PostAstrologyAspectsErrors];
5635
6082
 
5636
- export type PostAstrologyHousesResponses = {
6083
+ export type PostAstrologyAspectsResponses = {
5637
6084
  /**
5638
- * House cusps calculated successfully
6085
+ * Aspects calculated successfully
5639
6086
  */
5640
- 200: HousesResponse;
6087
+ 200: AspectsResponse;
5641
6088
  };
5642
6089
 
5643
- export type PostAstrologyHousesResponse = PostAstrologyHousesResponses[keyof PostAstrologyHousesResponses];
6090
+ export type PostAstrologyAspectsResponse = PostAstrologyAspectsResponses[keyof PostAstrologyAspectsResponses];
5644
6091
 
5645
- export type PostAstrologyAspectsData = {
5646
- body?: AspectsRequest;
6092
+ export type PostAstrologyAspectPatternsData = {
6093
+ body?: AspectPatternsRequest;
5647
6094
  path?: never;
5648
6095
  query?: {
5649
6096
  /**
5650
6097
  * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
5651
6098
  */
5652
6099
  lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
6100
+ /**
6101
+ * Use tighter orbs (Pontopia "optimal" recommendations). Truthy values (true, 1, yes, on; case-insensitive) narrow trine to 5, square to 5, sextile to 4, quincunx to 2. Defaults to false (industry-standard orbs).
6102
+ */
6103
+ strictOrbs?: string;
6104
+ /**
6105
+ * Comma-separated list of optional bodies to include beyond the classical 10 planets. Valid tokens (case-insensitive): chiron, northNode (also accepts north_node, north-node, northnode). Empty by default.
6106
+ */
6107
+ include?: string;
5653
6108
  };
5654
- url: '/astrology/aspects';
6109
+ url: '/astrology/aspect-patterns';
5655
6110
  };
5656
6111
 
5657
- export type PostAstrologyAspectsErrors = {
6112
+ export type PostAstrologyAspectPatternsErrors = {
5658
6113
  /**
5659
6114
  * Validation error. `issues[]` lists every failed field.
5660
6115
  */
@@ -5756,16 +6211,16 @@ export type PostAstrologyAspectsErrors = {
5756
6211
  };
5757
6212
  };
5758
6213
 
5759
- export type PostAstrologyAspectsError = PostAstrologyAspectsErrors[keyof PostAstrologyAspectsErrors];
6214
+ export type PostAstrologyAspectPatternsError = PostAstrologyAspectPatternsErrors[keyof PostAstrologyAspectPatternsErrors];
5760
6215
 
5761
- export type PostAstrologyAspectsResponses = {
6216
+ export type PostAstrologyAspectPatternsResponses = {
5762
6217
  /**
5763
- * Aspects calculated successfully
6218
+ * Aspect patterns detected successfully
5764
6219
  */
5765
- 200: AspectsResponse;
6220
+ 200: AspectPatternsResponse;
5766
6221
  };
5767
6222
 
5768
- export type PostAstrologyAspectsResponse = PostAstrologyAspectsResponses[keyof PostAstrologyAspectsResponses];
6223
+ export type PostAstrologyAspectPatternsResponse = PostAstrologyAspectPatternsResponses[keyof PostAstrologyAspectPatternsResponses];
5769
6224
 
5770
6225
  export type PostAstrologyTransitsData = {
5771
6226
  body?: TransitsRequest;
@@ -12411,6 +12866,131 @@ export type GetVedicAstrologyYogaByIdResponses = {
12411
12866
 
12412
12867
  export type GetVedicAstrologyYogaByIdResponse = GetVedicAstrologyYogaByIdResponses[keyof GetVedicAstrologyYogaByIdResponses];
12413
12868
 
12869
+ export type PostVedicAstrologyYogaDetectData = {
12870
+ body?: YogaDetectRequest;
12871
+ path?: never;
12872
+ query?: {
12873
+ /**
12874
+ * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
12875
+ */
12876
+ lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
12877
+ };
12878
+ url: '/vedic-astrology/yoga/detect';
12879
+ };
12880
+
12881
+ export type PostVedicAstrologyYogaDetectErrors = {
12882
+ /**
12883
+ * Validation error. `issues[]` lists every failed field.
12884
+ */
12885
+ 400: {
12886
+ /**
12887
+ * First issue summary.
12888
+ */
12889
+ error: string;
12890
+ code: 'validation_error';
12891
+ /**
12892
+ * Every validation failure. Use this to rebuild a valid request.
12893
+ */
12894
+ issues: Array<{
12895
+ /**
12896
+ * Dot-separated field path, or "(root)" for top-level.
12897
+ */
12898
+ path: string;
12899
+ message: string;
12900
+ /**
12901
+ * Zod issue code (invalid_type, too_small, too_big, invalid_string, ...).
12902
+ */
12903
+ code?: string;
12904
+ /**
12905
+ * Expected type for invalid_type.
12906
+ */
12907
+ expected?: string;
12908
+ /**
12909
+ * Minimum bound for too_small issues.
12910
+ */
12911
+ minimum?: number | string;
12912
+ /**
12913
+ * Maximum bound for too_big issues.
12914
+ */
12915
+ maximum?: number | string;
12916
+ inclusive?: boolean;
12917
+ /**
12918
+ * Format name for string issues (regex, email, url, uuid).
12919
+ */
12920
+ format?: string;
12921
+ /**
12922
+ * Regex pattern when format is regex.
12923
+ */
12924
+ pattern?: string;
12925
+ }>;
12926
+ };
12927
+ /**
12928
+ * Invalid or missing API key
12929
+ */
12930
+ 401: {
12931
+ /**
12932
+ * Human-readable error message. May change wording.
12933
+ */
12934
+ error: string;
12935
+ /**
12936
+ * Machine-readable error code. Stable identifier.
12937
+ */
12938
+ code: string;
12939
+ };
12940
+ /**
12941
+ * Method not allowed. The path exists but only responds to the methods listed in `allow[]` and the `Allow` response header.
12942
+ */
12943
+ 405: {
12944
+ error: string;
12945
+ code: 'method_not_allowed';
12946
+ /**
12947
+ * Allowed HTTP methods for this path. Mirrors the Allow response header.
12948
+ */
12949
+ allow: Array<string>;
12950
+ /**
12951
+ * Link to the product page for this domain.
12952
+ */
12953
+ docs?: string;
12954
+ };
12955
+ /**
12956
+ * Monthly rate limit exceeded
12957
+ */
12958
+ 429: {
12959
+ /**
12960
+ * Human-readable error message. May change wording.
12961
+ */
12962
+ error: string;
12963
+ /**
12964
+ * Machine-readable error code. Stable identifier.
12965
+ */
12966
+ code: string;
12967
+ };
12968
+ /**
12969
+ * Internal server error
12970
+ */
12971
+ 500: {
12972
+ /**
12973
+ * Human-readable error message. May change wording.
12974
+ */
12975
+ error: string;
12976
+ /**
12977
+ * Machine-readable error code. Stable identifier.
12978
+ */
12979
+ code: string;
12980
+ };
12981
+ };
12982
+
12983
+ export type PostVedicAstrologyYogaDetectError = PostVedicAstrologyYogaDetectErrors[keyof PostVedicAstrologyYogaDetectErrors];
12984
+
12985
+ export type PostVedicAstrologyYogaDetectResponses = {
12986
+ /**
12987
+ * List of 12 classical yogas with present/absent verdicts and classical-text evidence.
12988
+ */
12989
+ 200: YogaDetectResponse;
12990
+ };
12991
+
12992
+ export type PostVedicAstrologyYogaDetectResponse = PostVedicAstrologyYogaDetectResponses[keyof PostVedicAstrologyYogaDetectResponses];
12993
+
12414
12994
  export type GetVedicAstrologyKpAyanamsaData = {
12415
12995
  body?: never;
12416
12996
  path?: never;
@@ -20511,40 +21091,7 @@ export type PostTarotDailyResponses = {
20511
21091
  * Seed used for this daily reading. Same seed on the same date always produces the identical card for reproducible daily divination.
20512
21092
  */
20513
21093
  seed: string;
20514
- card: {
20515
- /**
20516
- * Unique card identifier in kebab-case (e.g. the-fool, ace-of-cups).
20517
- */
20518
- id: string;
20519
- /**
20520
- * Display name of the tarot card.
20521
- */
20522
- name: string;
20523
- /**
20524
- * Whether this card belongs to the Major Arcana (22 trump cards, major life themes) or Minor Arcana (56 suit cards, daily situations).
20525
- */
20526
- arcana: 'major' | 'minor';
20527
- /**
20528
- * Position index of the card in the draw sequence (1-based).
20529
- */
20530
- position: number;
20531
- /**
20532
- * True if the card was drawn reversed (upside down). Reversed cards carry modified or blocked energy compared to upright position.
20533
- */
20534
- reversed: boolean;
20535
- /**
20536
- * Key themes and concepts associated with this card in its current orientation (upright or reversed).
20537
- */
20538
- keywords: Array<string>;
20539
- /**
20540
- * Full interpretation of this card in its current orientation, providing daily guidance and reflection.
20541
- */
20542
- meaning: string;
20543
- /**
20544
- * URL to the tarot card artwork image.
20545
- */
20546
- imageUrl: string;
20547
- };
21094
+ card: DrawnCard;
20548
21095
  /**
20549
21096
  * Concise daily tarot message summarizing the card, its orientation, key themes, and brief guidance for the day.
20550
21097
  */
@@ -20889,36 +21436,7 @@ export type PostTarotSpreadsThreeCardResponses = {
20889
21436
  * Position-specific interpretation of the drawn card, explaining how this card meaning applies to this particular spread position.
20890
21437
  */
20891
21438
  interpretation: string;
20892
- card: {
20893
- /**
20894
- * Unique card identifier in kebab-case (e.g. the-fool, ace-of-cups).
20895
- */
20896
- id: string;
20897
- /**
20898
- * Display name of the tarot card.
20899
- */
20900
- name: string;
20901
- /**
20902
- * Whether this card belongs to the Major Arcana (22 trump cards, major life themes) or Minor Arcana (56 suit cards, daily situations).
20903
- */
20904
- arcana: 'major' | 'minor';
20905
- /**
20906
- * True if the card was drawn reversed (upside down). Reversed cards carry modified or blocked energy compared to upright position.
20907
- */
20908
- reversed: boolean;
20909
- /**
20910
- * Key themes and concepts associated with this card in its current orientation (upright or reversed).
20911
- */
20912
- keywords: Array<string>;
20913
- /**
20914
- * Full interpretation of this card in its current orientation.
20915
- */
20916
- meaning: string;
20917
- /**
20918
- * URL to the tarot card artwork image.
20919
- */
20920
- imageUrl: string;
20921
- };
21439
+ card: DrawnCard;
20922
21440
  }>;
20923
21441
  /**
20924
21442
  * AI-generated narrative connecting all cards in the spread into a cohesive reading.
@@ -21081,36 +21599,7 @@ export type PostTarotSpreadsCelticCrossResponses = {
21081
21599
  * Position-specific interpretation of the drawn card, explaining how this card meaning applies to this particular spread position.
21082
21600
  */
21083
21601
  interpretation: string;
21084
- card: {
21085
- /**
21086
- * Unique card identifier in kebab-case (e.g. the-fool, ace-of-cups).
21087
- */
21088
- id: string;
21089
- /**
21090
- * Display name of the tarot card.
21091
- */
21092
- name: string;
21093
- /**
21094
- * Whether this card belongs to the Major Arcana (22 trump cards, major life themes) or Minor Arcana (56 suit cards, daily situations).
21095
- */
21096
- arcana: 'major' | 'minor';
21097
- /**
21098
- * True if the card was drawn reversed (upside down). Reversed cards carry modified or blocked energy compared to upright position.
21099
- */
21100
- reversed: boolean;
21101
- /**
21102
- * Key themes and concepts associated with this card in its current orientation (upright or reversed).
21103
- */
21104
- keywords: Array<string>;
21105
- /**
21106
- * Full interpretation of this card in its current orientation.
21107
- */
21108
- meaning: string;
21109
- /**
21110
- * URL to the tarot card artwork image.
21111
- */
21112
- imageUrl: string;
21113
- };
21602
+ card: DrawnCard;
21114
21603
  }>;
21115
21604
  /**
21116
21605
  * AI-generated narrative connecting all cards in the spread into a cohesive reading.
@@ -21273,36 +21762,7 @@ export type PostTarotSpreadsLoveResponses = {
21273
21762
  * Position-specific interpretation of the drawn card, explaining how this card meaning applies to this particular spread position.
21274
21763
  */
21275
21764
  interpretation: string;
21276
- card: {
21277
- /**
21278
- * Unique card identifier in kebab-case (e.g. the-fool, ace-of-cups).
21279
- */
21280
- id: string;
21281
- /**
21282
- * Display name of the tarot card.
21283
- */
21284
- name: string;
21285
- /**
21286
- * Whether this card belongs to the Major Arcana (22 trump cards, major life themes) or Minor Arcana (56 suit cards, daily situations).
21287
- */
21288
- arcana: 'major' | 'minor';
21289
- /**
21290
- * True if the card was drawn reversed (upside down). Reversed cards carry modified or blocked energy compared to upright position.
21291
- */
21292
- reversed: boolean;
21293
- /**
21294
- * Key themes and concepts associated with this card in its current orientation (upright or reversed).
21295
- */
21296
- keywords: Array<string>;
21297
- /**
21298
- * Full interpretation of this card in its current orientation.
21299
- */
21300
- meaning: string;
21301
- /**
21302
- * URL to the tarot card artwork image.
21303
- */
21304
- imageUrl: string;
21305
- };
21765
+ card: DrawnCard;
21306
21766
  }>;
21307
21767
  /**
21308
21768
  * AI-generated narrative connecting all cards in the spread into a cohesive reading.
@@ -21465,36 +21925,7 @@ export type PostTarotSpreadsCareerResponses = {
21465
21925
  * Position-specific interpretation of the drawn card, explaining how this card meaning applies to this particular spread position.
21466
21926
  */
21467
21927
  interpretation: string;
21468
- card: {
21469
- /**
21470
- * Unique card identifier in kebab-case (e.g. the-fool, ace-of-cups).
21471
- */
21472
- id: string;
21473
- /**
21474
- * Display name of the tarot card.
21475
- */
21476
- name: string;
21477
- /**
21478
- * Whether this card belongs to the Major Arcana (22 trump cards, major life themes) or Minor Arcana (56 suit cards, daily situations).
21479
- */
21480
- arcana: 'major' | 'minor';
21481
- /**
21482
- * True if the card was drawn reversed (upside down). Reversed cards carry modified or blocked energy compared to upright position.
21483
- */
21484
- reversed: boolean;
21485
- /**
21486
- * Key themes and concepts associated with this card in its current orientation (upright or reversed).
21487
- */
21488
- keywords: Array<string>;
21489
- /**
21490
- * Full interpretation of this card in its current orientation.
21491
- */
21492
- meaning: string;
21493
- /**
21494
- * URL to the tarot card artwork image.
21495
- */
21496
- imageUrl: string;
21497
- };
21928
+ card: DrawnCard;
21498
21929
  }>;
21499
21930
  /**
21500
21931
  * AI-generated narrative connecting all cards in the spread into a cohesive reading.
@@ -21680,36 +22111,7 @@ export type PostTarotSpreadsCustomResponses = {
21680
22111
  * Position-specific interpretation of the drawn card, explaining how this card meaning applies to this particular spread position.
21681
22112
  */
21682
22113
  interpretation: string;
21683
- card: {
21684
- /**
21685
- * Unique card identifier in kebab-case (e.g. the-fool, ace-of-cups).
21686
- */
21687
- id: string;
21688
- /**
21689
- * Display name of the tarot card.
21690
- */
21691
- name: string;
21692
- /**
21693
- * Whether this card belongs to the Major Arcana (22 trump cards, major life themes) or Minor Arcana (56 suit cards, daily situations).
21694
- */
21695
- arcana: 'major' | 'minor';
21696
- /**
21697
- * True if the card was drawn reversed (upside down). Reversed cards carry modified or blocked energy compared to upright position.
21698
- */
21699
- reversed: boolean;
21700
- /**
21701
- * Key themes and concepts associated with this card in its current orientation (upright or reversed).
21702
- */
21703
- keywords: Array<string>;
21704
- /**
21705
- * Full interpretation of this card in its current orientation.
21706
- */
21707
- meaning: string;
21708
- /**
21709
- * URL to the tarot card artwork image.
21710
- */
21711
- imageUrl: string;
21712
- };
22114
+ card: DrawnCard;
21713
22115
  }>;
21714
22116
  /**
21715
22117
  * AI-generated narrative connecting all cards in the spread into a cohesive reading.