@roxyapi/sdk 1.2.55 → 1.2.57

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.
Files changed (43) hide show
  1. package/dist/{chunk-HCC4GID6.js → chunk-25Y6CPVU.js} +19 -11
  2. package/dist/client/index.cjs +19 -11
  3. package/dist/client/index.d.ts +2 -0
  4. package/dist/client/index.d.ts.map +1 -1
  5. package/dist/client/index.js +1 -1
  6. package/dist/client/utils.gen.d.ts +1 -1
  7. package/dist/client/utils.gen.d.ts.map +1 -1
  8. package/dist/client.gen.d.ts +2 -2
  9. package/dist/client.gen.d.ts.map +1 -1
  10. package/dist/core/auth.gen.d.ts +7 -0
  11. package/dist/core/auth.gen.d.ts.map +1 -1
  12. package/dist/core/params.gen.d.ts +2 -2
  13. package/dist/core/params.gen.d.ts.map +1 -1
  14. package/dist/core/pathSerializer.gen.d.ts.map +1 -1
  15. package/dist/core/queryKeySerializer.gen.d.ts +1 -1
  16. package/dist/core/queryKeySerializer.gen.d.ts.map +1 -1
  17. package/dist/core/types.gen.d.ts +5 -0
  18. package/dist/core/types.gen.d.ts.map +1 -1
  19. package/dist/core/utils.gen.d.ts.map +1 -1
  20. package/dist/factory.cjs +66 -2
  21. package/dist/factory.js +67 -3
  22. package/dist/index.d.ts +1 -1
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/sdk.gen.d.ts +199 -175
  25. package/dist/sdk.gen.d.ts.map +1 -1
  26. package/dist/types.gen.d.ts +2335 -608
  27. package/dist/types.gen.d.ts.map +1 -1
  28. package/dist/version.d.ts +1 -1
  29. package/docs/llms-full.txt +92 -7
  30. package/package.json +4 -4
  31. package/src/client/index.ts +2 -0
  32. package/src/client/utils.gen.ts +2 -2
  33. package/src/client.gen.ts +2 -2
  34. package/src/core/auth.gen.ts +7 -0
  35. package/src/core/params.gen.ts +21 -12
  36. package/src/core/pathSerializer.gen.ts +6 -6
  37. package/src/core/queryKeySerializer.gen.ts +1 -1
  38. package/src/core/types.gen.ts +6 -0
  39. package/src/core/utils.gen.ts +4 -4
  40. package/src/index.ts +1 -1
  41. package/src/sdk.gen.ts +244 -176
  42. package/src/types.gen.ts +2921 -1166
  43. package/src/version.ts +1 -1
@@ -432,10 +432,25 @@ export type HousesResponse = {
432
432
  */
433
433
  comparison?: {
434
434
  [key: string]: {
435
+ /**
436
+ * All 12 house cusps as this system computes them. Compare the same house number across the four keys to see how far the systems disagree, which is largest at high latitudes and for the intermediate cusps.
437
+ */
435
438
  houses: Array<{
439
+ /**
440
+ * House number (1-12). Each house governs specific life areas.
441
+ */
436
442
  number: number;
443
+ /**
444
+ * Ecliptic longitude of this house cusp in degrees (0-360), as this house system places it.
445
+ */
437
446
  longitude: number;
447
+ /**
448
+ * Zodiac sign on this house cusp in this house system.
449
+ */
438
450
  sign: string;
451
+ /**
452
+ * Degree within the zodiac sign on this cusp (0-29.999).
453
+ */
439
454
  degree: number;
440
455
  }>;
441
456
  };
@@ -809,7 +824,7 @@ export type TransitsResponse = {
809
824
  */
810
825
  summary: string;
811
826
  /**
812
- * How long this transit influence lasts based on the transiting planet speed.
827
+ * How long this transit influence lasts, localized. The bucket follows the speed of the transiting body: a few hours for the Moon, a few days for the Sun, Mercury, Venus and Mars, one to two weeks for Jupiter, several weeks for Saturn, and an extended period for Uranus, Neptune and Pluto.
813
828
  */
814
829
  timing: string;
815
830
  /**
@@ -873,7 +888,13 @@ export type TransitsRequest = {
873
888
  * Time in 24-hour format. Seconds are optional and default to 00 (14:30 becomes 14:30:00); a single-digit hour is zero-padded. Out-of-range values are rejected.
874
889
  */
875
890
  time: string;
891
+ /**
892
+ * Natal birth latitude in decimal degrees, positive north. Sets the local sidereal time behind the natal Ascendant and house cusps that the transits are measured against.
893
+ */
876
894
  latitude: number;
895
+ /**
896
+ * Natal birth longitude in decimal degrees, positive east and negative west. Example: New York -74.0060, London -0.1276, Sydney 151.2093.
897
+ */
877
898
  longitude: number;
878
899
  /**
879
900
  * Natal timezone: decimal hours OR IANA name (e.g. "America/New_York"). IANA resolved to the DST-correct offset for the natal date.
@@ -973,7 +994,7 @@ export type AstrocartographyResponse = {
973
994
  /**
974
995
  * Absolute latitude in degrees beyond which the body never crosses the horizon, so the line has no points past it. Null when the line spans the full sampled range.
975
996
  */
976
- circumpolarBeyond: number;
997
+ circumpolarBeyond: number | null;
977
998
  /**
978
999
  * Plain language meaning of this rising or setting planetary line for relocation, suitable for chart reports and AI agents.
979
1000
  */
@@ -999,7 +1020,7 @@ export type AstrocartographyResponse = {
999
1020
  /**
1000
1021
  * Absolute latitude in degrees beyond which the body never crosses the horizon, so the line has no points past it. Null when the line spans the full sampled range.
1001
1022
  */
1002
- circumpolarBeyond: number;
1023
+ circumpolarBeyond: number | null;
1003
1024
  /**
1004
1025
  * Plain language meaning of this rising or setting planetary line for relocation, suitable for chart reports and AI agents.
1005
1026
  */
@@ -2092,7 +2113,7 @@ export type ProfectionsRequest = {
2092
2113
  export type BirthChartResponse = {
2093
2114
  aries: {
2094
2115
  /**
2095
- * Zodiac sign name in lowercase.
2116
+ * Zodiac sign name in lowercase. Always equals the key of the block it sits in, so the aries block carries "aries" and the pisces block carries "pisces".
2096
2117
  */
2097
2118
  rashi: string;
2098
2119
  /**
@@ -2149,7 +2170,7 @@ export type BirthChartResponse = {
2149
2170
  };
2150
2171
  taurus: {
2151
2172
  /**
2152
- * Zodiac sign name in lowercase.
2173
+ * Zodiac sign name in lowercase. Always equals the key of the block it sits in, so the aries block carries "aries" and the pisces block carries "pisces".
2153
2174
  */
2154
2175
  rashi: string;
2155
2176
  /**
@@ -2206,7 +2227,7 @@ export type BirthChartResponse = {
2206
2227
  };
2207
2228
  gemini: {
2208
2229
  /**
2209
- * Zodiac sign name in lowercase.
2230
+ * Zodiac sign name in lowercase. Always equals the key of the block it sits in, so the aries block carries "aries" and the pisces block carries "pisces".
2210
2231
  */
2211
2232
  rashi: string;
2212
2233
  /**
@@ -2263,7 +2284,7 @@ export type BirthChartResponse = {
2263
2284
  };
2264
2285
  cancer: {
2265
2286
  /**
2266
- * Zodiac sign name in lowercase.
2287
+ * Zodiac sign name in lowercase. Always equals the key of the block it sits in, so the aries block carries "aries" and the pisces block carries "pisces".
2267
2288
  */
2268
2289
  rashi: string;
2269
2290
  /**
@@ -2320,7 +2341,7 @@ export type BirthChartResponse = {
2320
2341
  };
2321
2342
  leo: {
2322
2343
  /**
2323
- * Zodiac sign name in lowercase.
2344
+ * Zodiac sign name in lowercase. Always equals the key of the block it sits in, so the aries block carries "aries" and the pisces block carries "pisces".
2324
2345
  */
2325
2346
  rashi: string;
2326
2347
  /**
@@ -2377,7 +2398,7 @@ export type BirthChartResponse = {
2377
2398
  };
2378
2399
  virgo: {
2379
2400
  /**
2380
- * Zodiac sign name in lowercase.
2401
+ * Zodiac sign name in lowercase. Always equals the key of the block it sits in, so the aries block carries "aries" and the pisces block carries "pisces".
2381
2402
  */
2382
2403
  rashi: string;
2383
2404
  /**
@@ -2434,7 +2455,7 @@ export type BirthChartResponse = {
2434
2455
  };
2435
2456
  libra: {
2436
2457
  /**
2437
- * Zodiac sign name in lowercase.
2458
+ * Zodiac sign name in lowercase. Always equals the key of the block it sits in, so the aries block carries "aries" and the pisces block carries "pisces".
2438
2459
  */
2439
2460
  rashi: string;
2440
2461
  /**
@@ -2491,7 +2512,7 @@ export type BirthChartResponse = {
2491
2512
  };
2492
2513
  scorpio: {
2493
2514
  /**
2494
- * Zodiac sign name in lowercase.
2515
+ * Zodiac sign name in lowercase. Always equals the key of the block it sits in, so the aries block carries "aries" and the pisces block carries "pisces".
2495
2516
  */
2496
2517
  rashi: string;
2497
2518
  /**
@@ -2548,7 +2569,7 @@ export type BirthChartResponse = {
2548
2569
  };
2549
2570
  sagittarius: {
2550
2571
  /**
2551
- * Zodiac sign name in lowercase.
2572
+ * Zodiac sign name in lowercase. Always equals the key of the block it sits in, so the aries block carries "aries" and the pisces block carries "pisces".
2552
2573
  */
2553
2574
  rashi: string;
2554
2575
  /**
@@ -2605,7 +2626,7 @@ export type BirthChartResponse = {
2605
2626
  };
2606
2627
  capricorn: {
2607
2628
  /**
2608
- * Zodiac sign name in lowercase.
2629
+ * Zodiac sign name in lowercase. Always equals the key of the block it sits in, so the aries block carries "aries" and the pisces block carries "pisces".
2609
2630
  */
2610
2631
  rashi: string;
2611
2632
  /**
@@ -2662,7 +2683,7 @@ export type BirthChartResponse = {
2662
2683
  };
2663
2684
  aquarius: {
2664
2685
  /**
2665
- * Zodiac sign name in lowercase.
2686
+ * Zodiac sign name in lowercase. Always equals the key of the block it sits in, so the aries block carries "aries" and the pisces block carries "pisces".
2666
2687
  */
2667
2688
  rashi: string;
2668
2689
  /**
@@ -2719,7 +2740,7 @@ export type BirthChartResponse = {
2719
2740
  };
2720
2741
  pisces: {
2721
2742
  /**
2722
- * Zodiac sign name in lowercase.
2743
+ * Zodiac sign name in lowercase. Always equals the key of the block it sits in, so the aries block carries "aries" and the pisces block carries "pisces".
2723
2744
  */
2724
2745
  rashi: string;
2725
2746
  /**
@@ -2774,6 +2795,69 @@ export type BirthChartResponse = {
2774
2795
  deeptadi?: 'Dipta' | 'Svastha' | 'Pramudita' | 'Shanta' | 'Dina' | 'Duhkhita' | 'Vikala' | 'Khala' | 'Kopa';
2775
2796
  }>;
2776
2797
  };
2798
+ /**
2799
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
2800
+ */
2801
+ frame: {
2802
+ /**
2803
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
2804
+ */
2805
+ ayanamsa: string;
2806
+ /**
2807
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
2808
+ */
2809
+ ayanamsaDegrees: number;
2810
+ };
2811
+ /**
2812
+ * Uranus, Neptune and Pluto, present only when modernPlanets true was sent. Deliberately separate from meta and deliberately without dignity, avastha, combustion or aspect fields: those are constructs of the nine-graha system and the modern planets rule no sign, so no classical value exists for them. Order is always Uranus, Neptune, Pluto.
2813
+ */
2814
+ modernPlanets?: Array<{
2815
+ /**
2816
+ * Modern planet name. These three are outside the classical Navagraha and are returned only when modernPlanets true is sent.
2817
+ */
2818
+ planet: 'Uranus' | 'Neptune' | 'Pluto';
2819
+ /**
2820
+ * Sanskrit name Indian software prints for this body: Arun for Uranus, Varun for Neptune, Yam for Pluto. Transliterated rather than translated, the same treatment as rashi and nakshatra lord names, so it is identical in every locale.
2821
+ */
2822
+ sanskritName: 'Arun' | 'Varun' | 'Yam';
2823
+ /**
2824
+ * Sidereal longitude in degrees (0-360), in the same ayanamsa frame as every other position in this response.
2825
+ */
2826
+ longitude: number;
2827
+ /**
2828
+ * Zodiac sign (rashi) the body occupies.
2829
+ */
2830
+ rashi: string;
2831
+ /**
2832
+ * Degrees advanced into the sign, 0 to 30. This is the figure a chart displays beside the sign.
2833
+ */
2834
+ degreeInRashi: number;
2835
+ /**
2836
+ * Nakshatra placement. Reported because it is purely positional; it does not imply the body participates in Vimshottari dasha, which is built on the Moon alone.
2837
+ */
2838
+ nakshatra: {
2839
+ /**
2840
+ * Nakshatra (lunar mansion, 1 of 27) the body occupies.
2841
+ */
2842
+ name: string;
2843
+ /**
2844
+ * Nakshatra pada (quarter, 1-4).
2845
+ */
2846
+ pada: number;
2847
+ /**
2848
+ * Nakshatra index (1-27) starting from Ashwini.
2849
+ */
2850
+ key: number;
2851
+ /**
2852
+ * Vimshottari ruling planet of this nakshatra.
2853
+ */
2854
+ lord: 'Ketu' | 'Venus' | 'Sun' | 'Moon' | 'Mars' | 'Rahu' | 'Jupiter' | 'Saturn' | 'Mercury';
2855
+ };
2856
+ /**
2857
+ * True when the body appears to move backward. All three are retrograde for roughly 40 percent of each year, so this is the normal case rather than the exception.
2858
+ */
2859
+ isRetrograde: boolean;
2860
+ }>;
2777
2861
  /**
2778
2862
  * The twelve bhavas (houses) in order, each with its classical name and significations. Houses are counted whole-sign from the Lagna.
2779
2863
  */
@@ -3006,10 +3090,22 @@ export type BirthChartRequest = {
3006
3090
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
3007
3091
  */
3008
3092
  timezone?: number | string;
3093
+ /**
3094
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
3095
+ */
3096
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
3097
+ /**
3098
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
3099
+ */
3100
+ ayanamsaValue?: number;
3009
3101
  /**
3010
3102
  * Set true to include a localized meaning and one-sentence classical interpretation beside each graha avastha state, under avasthaInfo on that graha in meta. Defaults to false, so an existing integration is byte-identical until it opts in. Saves a second call to GET /avasthas and the client-side join that would otherwise be needed to turn Yuva or Swapna into readable text.
3011
3103
  */
3012
3104
  avasthaInfo?: boolean;
3105
+ /**
3106
+ * Set true to also return Uranus, Neptune and Pluto, under the Sanskrit names Arun, Varun and Yam that Indian software prints for them. They arrive in a separate modernPlanets array, NOT inside meta, because classical Jyotish is defined over nine grahas: the moderns rule no sign, so they have no dignity, avastha, combustion or aspect strength and it would be fabrication to report one. Each carries longitude, rashi, degree in sign, nakshatra with pada and lord, and retrograde status. Defaults to false, so an existing integration is byte-identical until it opts in.
3107
+ */
3108
+ modernPlanets?: boolean;
3013
3109
  };
3014
3110
  export type NavamsaResponse = {
3015
3111
  /**
@@ -3069,7 +3165,7 @@ export type NavamsaResponse = {
3069
3165
  */
3070
3166
  aries: {
3071
3167
  /**
3072
- * Zodiac sign name in lowercase.
3168
+ * Zodiac sign name in lowercase. Always equals the key of the navamsa rashi-house block it sits in.
3073
3169
  */
3074
3170
  rashi: string;
3075
3171
  /**
@@ -3117,6 +3213,19 @@ export type NavamsaResponse = {
3117
3213
  };
3118
3214
  [key: string]: unknown;
3119
3215
  };
3216
+ /**
3217
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
3218
+ */
3219
+ frame: {
3220
+ /**
3221
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
3222
+ */
3223
+ ayanamsa: string;
3224
+ /**
3225
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
3226
+ */
3227
+ ayanamsaDegrees: number;
3228
+ };
3120
3229
  /**
3121
3230
  * Planets that are Vargottama (same sign in D1 and D9)
3122
3231
  */
@@ -3147,6 +3256,14 @@ export type NavamsaRequest = {
3147
3256
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
3148
3257
  */
3149
3258
  timezone?: number | string;
3259
+ /**
3260
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
3261
+ */
3262
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
3263
+ /**
3264
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
3265
+ */
3266
+ ayanamsaValue?: number;
3150
3267
  };
3151
3268
  export type DivisionalChartResponse = {
3152
3269
  /**
@@ -3174,6 +3291,19 @@ export type DivisionalChartResponse = {
3174
3291
  */
3175
3292
  significance: string;
3176
3293
  };
3294
+ /**
3295
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
3296
+ */
3297
+ frame: {
3298
+ /**
3299
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
3300
+ */
3301
+ ayanamsa: string;
3302
+ /**
3303
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
3304
+ */
3305
+ ayanamsaDegrees: number;
3306
+ };
3177
3307
  /**
3178
3308
  * Divisional chart showing planetary positions across 12 rashi houses plus a meta lookup. Same structure as birth chart and navamsa responses.
3179
3309
  */
@@ -3231,7 +3361,7 @@ export type DivisionalChartResponse = {
3231
3361
  */
3232
3362
  aries: {
3233
3363
  /**
3234
- * Zodiac sign name in lowercase.
3364
+ * Zodiac sign name in lowercase. Always equals the key of the divisional rashi-house block it sits in.
3235
3365
  */
3236
3366
  rashi: string;
3237
3367
  /**
@@ -3305,12 +3435,33 @@ export type DivisionalChartRequest = {
3305
3435
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
3306
3436
  */
3307
3437
  timezone?: number | string;
3438
+ /**
3439
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
3440
+ */
3441
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
3442
+ /**
3443
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
3444
+ */
3445
+ ayanamsaValue?: number;
3308
3446
  /**
3309
3447
  * Divisional chart number. Each division reveals a specific life area. Supported: 2 (Hora, wealth), 3 (Drekkana, siblings), 4 (Chaturthamsa, property), 7 (Saptamsa, children), 9 (Navamsa, marriage), 10 (Dasamsa, career), 12 (Dwadasamsa, parents), 16 (Shodasamsa, vehicles), 20 (Vimsamsa, spirituality), 24 (Chaturvimsamsa, education), 27 (Bhamsa, strength), 30 (Trimsamsa, misfortunes), 40 (Khavedamsa, merit), 45 (Akshavedamsa, character), 60 (Shashtiamsa, past life karma).
3310
3448
  */
3311
3449
  division: number;
3312
3450
  };
3313
3451
  export type CompatibilityResponse = {
3452
+ /**
3453
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
3454
+ */
3455
+ frame: {
3456
+ /**
3457
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
3458
+ */
3459
+ ayanamsa: string;
3460
+ /**
3461
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
3462
+ */
3463
+ ayanamsaDegrees: number;
3464
+ };
3314
3465
  /**
3315
3466
  * Total Ashtakoot Gun Milan score out of 36. Scores above 18 are considered compatible for marriage. Higher scores indicate stronger marital harmony.
3316
3467
  */
@@ -3429,6 +3580,14 @@ export type CompatibilityRequest = {
3429
3580
  */
3430
3581
  timezone?: number | string;
3431
3582
  };
3583
+ /**
3584
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
3585
+ */
3586
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
3587
+ /**
3588
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
3589
+ */
3590
+ ayanamsaValue?: number;
3432
3591
  };
3433
3592
  export type PlanetaryPositionsResponse = {
3434
3593
  [key: string]: {
@@ -3507,7 +3666,7 @@ export type PlanetaryPositionsResponse = {
3507
3666
  */
3508
3667
  isRetrograde: boolean;
3509
3668
  /**
3510
- * Whether the planet is combust (asta, moudhya). A planet is combust when too close to the Sun, weakening its significations. Combustion orbs vary by planet: Moon 12 deg, Mars 17 deg, Mercury 14 deg (12 deg if retrograde), Jupiter 11 deg, Venus 10 deg (8 deg if retrograde), Saturn 15 deg. Sun, Rahu, Ketu, and Lagna are never combust. Based on Surya Siddhanta combustion orbs.
3669
+ * Whether the planet is combust (asta, moudhya). A planet is combust when too close to the Sun, weakening its significations. Limits per Surya Siddhanta: Moon 12 deg, Mars 17 deg, Mercury 14 deg (12 deg if retrograde), Jupiter 11 deg, Venus 10 deg (8 deg if retrograde), Saturn 15 deg. Compared against the difference in ecliptic longitude, which is the standard interpretive convention and matches what other Vedic software reports. It is a chart judgement and not a statement about naked-eye visibility, which additionally depends on the observer latitude: for that use the heliacal endpoint, which applies the same limits in the classical degrees of time. The field is omitted entirely for Sun, Rahu, Ketu and Lagna, since the question does not apply to them rather than the answer being no.
3511
3670
  */
3512
3671
  isCombust?: boolean;
3513
3672
  /**
@@ -3541,8 +3700,29 @@ export type PlanetaryPositionsRequest = {
3541
3700
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
3542
3701
  */
3543
3702
  timezone?: number | string;
3703
+ /**
3704
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
3705
+ */
3706
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
3707
+ /**
3708
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
3709
+ */
3710
+ ayanamsaValue?: number;
3544
3711
  };
3545
3712
  export type ManglikResponse = {
3713
+ /**
3714
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
3715
+ */
3716
+ frame: {
3717
+ /**
3718
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
3719
+ */
3720
+ ayanamsa: string;
3721
+ /**
3722
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
3723
+ */
3724
+ ayanamsaDegrees: number;
3725
+ };
3546
3726
  /**
3547
3727
  * Whether Manglik dosha (Kuja dosha) is present based on Mars placement from Lagna
3548
3728
  */
@@ -3606,8 +3786,29 @@ export type ManglikRequest = {
3606
3786
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
3607
3787
  */
3608
3788
  timezone?: number | string;
3789
+ /**
3790
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
3791
+ */
3792
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
3793
+ /**
3794
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
3795
+ */
3796
+ ayanamsaValue?: number;
3609
3797
  };
3610
3798
  export type KalsarpaResponse = {
3799
+ /**
3800
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
3801
+ */
3802
+ frame: {
3803
+ /**
3804
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
3805
+ */
3806
+ ayanamsa: string;
3807
+ /**
3808
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
3809
+ */
3810
+ ayanamsaDegrees: number;
3811
+ };
3611
3812
  /**
3612
3813
  * Whether Kalsarpa dosha (Kalsarpa yoga) is present, all planets hemmed between Rahu-Ketu axis
3613
3814
  */
@@ -3679,8 +3880,29 @@ export type KalsarpaRequest = {
3679
3880
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
3680
3881
  */
3681
3882
  timezone?: number | string;
3883
+ /**
3884
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
3885
+ */
3886
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
3887
+ /**
3888
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
3889
+ */
3890
+ ayanamsaValue?: number;
3682
3891
  };
3683
3892
  export type SadhesatiResponse = {
3893
+ /**
3894
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
3895
+ */
3896
+ frame: {
3897
+ /**
3898
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
3899
+ */
3900
+ ayanamsa: string;
3901
+ /**
3902
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
3903
+ */
3904
+ ayanamsaDegrees: number;
3905
+ };
3684
3906
  /**
3685
3907
  * Whether Sade Sati is currently active, Saturn transiting 12th, 1st, or 2nd house from natal Moon
3686
3908
  */
@@ -3738,6 +3960,14 @@ export type SadhesatiRequest = {
3738
3960
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
3739
3961
  */
3740
3962
  timezone?: number | string;
3963
+ /**
3964
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
3965
+ */
3966
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
3967
+ /**
3968
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
3969
+ */
3970
+ ayanamsaValue?: number;
3741
3971
  };
3742
3972
  export type YogaDetail = {
3743
3973
  /**
@@ -3807,6 +4037,19 @@ export type YogaDetectResponse = {
3807
4037
  */
3808
4038
  evidence?: string;
3809
4039
  }>;
4040
+ /**
4041
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
4042
+ */
4043
+ frame: {
4044
+ /**
4045
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
4046
+ */
4047
+ ayanamsa: string;
4048
+ /**
4049
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
4050
+ */
4051
+ ayanamsaDegrees: number;
4052
+ };
3810
4053
  /**
3811
4054
  * Count of yogas where present === true in this chart. Range 0-44, though real charts sit in the low single digits: the Nabhasa families are mutually constrained by the precedence norms, and most shape yogas are rare.
3812
4055
  */
@@ -3815,10 +4058,25 @@ export type YogaDetectResponse = {
3815
4058
  * Echo of the resolved birth data used for detection. Timezone is the numeric offset that the chart engine consumed (IANA names are resolved upstream).
3816
4059
  */
3817
4060
  birthDetails: {
4061
+ /**
4062
+ * Birth date the kundli was cast for, YYYY-MM-DD, echoed back from the request.
4063
+ */
3818
4064
  date: string;
4065
+ /**
4066
+ * Birth time the kundli was cast for, 24-hour HH:MM:SS, echoed back from the request. Lagna moves roughly one rashi every two hours, so this is what pins the bhava-dependent yogas.
4067
+ */
3819
4068
  time: string;
4069
+ /**
4070
+ * Birth latitude in decimal degrees, echoed back from the request. Feeds the local sidereal time behind the Lagna.
4071
+ */
3820
4072
  latitude: number;
4073
+ /**
4074
+ * Birth longitude in decimal degrees, echoed back from the request. East is positive, west is negative.
4075
+ */
3821
4076
  longitude: number;
4077
+ /**
4078
+ * Numeric UTC offset in decimal hours that the chart engine actually consumed. An IANA name sent on the request is resolved to its DST-correct offset upstream, so this is always a number.
4079
+ */
3822
4080
  timezone: number;
3823
4081
  };
3824
4082
  };
@@ -3843,6 +4101,14 @@ export type YogaDetectRequest = {
3843
4101
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
3844
4102
  */
3845
4103
  timezone?: number | string;
4104
+ /**
4105
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
4106
+ */
4107
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
4108
+ /**
4109
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
4110
+ */
4111
+ ayanamsaValue?: number;
3846
4112
  };
3847
4113
  export type KpAyanamsaResponse = {
3848
4114
  /**
@@ -3952,9 +4218,9 @@ export type KpPlanetsRequest = {
3952
4218
  */
3953
4219
  timezone?: number | string;
3954
4220
  /**
3955
- * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula (most common for KP). "kp-old" uses the Krishnamurti original table. "lahiri" uses Lahiri/Chitrapaksha ayanamsa matching most traditional Vedic software. "custom" allows providing your own value via ayanamsaValue. Defaults to "kp-newcomb".
4221
+ * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula (most common for KP). "kp-old" uses the Krishnamurti original table. "lahiri" uses Lahiri/Chitrapaksha ayanamsa matching most traditional Vedic software. "raman" uses the B.V. Raman ayanamsa, about 1.45 degrees below Lahiri. "custom" allows providing your own value via ayanamsaValue. Defaults to "kp-newcomb".
3956
4222
  */
3957
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
4223
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
3958
4224
  /**
3959
4225
  * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
3960
4226
  */
@@ -4052,9 +4318,9 @@ export type KpCuspsRequest = {
4052
4318
  */
4053
4319
  timezone?: number | string;
4054
4320
  /**
4055
- * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula (most common for KP). "kp-old" uses the Krishnamurti original table. "lahiri" uses Lahiri/Chitrapaksha ayanamsa matching most traditional Vedic software. "custom" allows providing your own value via ayanamsaValue. Defaults to "kp-newcomb".
4321
+ * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula (most common for KP). "kp-old" uses the Krishnamurti original table. "lahiri" uses Lahiri/Chitrapaksha ayanamsa matching most traditional Vedic software. "raman" uses the B.V. Raman ayanamsa, about 1.45 degrees below Lahiri. "custom" allows providing your own value via ayanamsaValue. Defaults to "kp-newcomb".
4056
4322
  */
4057
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
4323
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
4058
4324
  /**
4059
4325
  * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
4060
4326
  */
@@ -4090,7 +4356,7 @@ export type KpChartResponse = {
4090
4356
  */
4091
4357
  ayanamsa: number;
4092
4358
  /**
4093
- * Ayanamsa system used (KP Newcomb).
4359
+ * Ayanamsa system used, echoing the ayanamsa field of the request: "kp-newcomb", "kp-old", "lahiri", "raman" or "custom".
4094
4360
  */
4095
4361
  ayanamsaType: string;
4096
4362
  /**
@@ -4406,9 +4672,9 @@ export type KpChartRequest = {
4406
4672
  */
4407
4673
  timezone?: number | string;
4408
4674
  /**
4409
- * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula (most common for KP). "kp-old" uses the Krishnamurti original table. "lahiri" uses Lahiri/Chitrapaksha ayanamsa matching most traditional Vedic software. "custom" allows providing your own value via ayanamsaValue. Defaults to "kp-newcomb".
4675
+ * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula (most common for KP). "kp-old" uses the Krishnamurti original table. "lahiri" uses Lahiri/Chitrapaksha ayanamsa matching most traditional Vedic software. "raman" uses the B.V. Raman ayanamsa, about 1.45 degrees below Lahiri. "custom" allows providing your own value via ayanamsaValue. Defaults to "kp-newcomb".
4410
4676
  */
4411
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
4677
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
4412
4678
  /**
4413
4679
  * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
4414
4680
  */
@@ -4427,8 +4693,17 @@ export type KpRulingPlanetsResponse = {
4427
4693
  * Observer location coordinates
4428
4694
  */
4429
4695
  location: {
4696
+ /**
4697
+ * Observer latitude in decimal degrees, echoed back from the request. Sets the local sidereal time behind the KP ascendant and therefore the Lagna sublord.
4698
+ */
4430
4699
  latitude: number;
4700
+ /**
4701
+ * Observer longitude in decimal degrees, echoed back from the request. East is positive, west is negative.
4702
+ */
4431
4703
  longitude: number;
4704
+ /**
4705
+ * Numeric UTC offset in decimal hours the calculation consumed. An IANA name sent on the request is resolved to its DST-correct offset upstream, so this is always a number.
4706
+ */
4432
4707
  timezone: number;
4433
4708
  };
4434
4709
  /**
@@ -4771,9 +5046,9 @@ export type KpSublordChangesRequest = {
4771
5046
  */
4772
5047
  timezone?: number | string;
4773
5048
  /**
4774
- * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula, the most common choice for KP astrology. "kp-old" uses the Krishnamurti original table from KP Reader-1 with constant precession rate. "lahiri" uses Lahiri/Chitrapaksha ayanamsa, matching most traditional Vedic software. Defaults to "kp-newcomb".
5049
+ * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula, the most common choice for KP astrology. "kp-old" uses the Krishnamurti original table from KP Reader-1 with constant precession rate. "lahiri" uses Lahiri/Chitrapaksha ayanamsa, matching most traditional Vedic software. "raman" uses the B.V. Raman ayanamsa from Hindu Predictive Astrology, a recognised traditional school that sits about 1.45 degrees below Lahiri. Defaults to "kp-newcomb".
4775
5050
  */
4776
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri';
5051
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman';
4777
5052
  /**
4778
5053
  * Lunar node type for Rahu and Ketu positions. "mean" uses the smooth mean node (traditional Vedic astrology default). "true" uses the osculating node with perturbation corrections, oscillating up to 1.5 degrees from mean with a 173-day period. Impacts KP sub-lord assignments in narrow boundary cases. Defaults to "mean".
4779
5054
  */
@@ -4848,9 +5123,9 @@ export type KpRasiChangesRequest = {
4848
5123
  */
4849
5124
  timezone?: number | string;
4850
5125
  /**
4851
- * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula, the most common choice for KP astrology. "kp-old" uses the Krishnamurti original table from KP Reader-1 with constant precession rate. "lahiri" uses Lahiri/Chitrapaksha ayanamsa, matching most traditional Vedic software. Defaults to "kp-newcomb".
5126
+ * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula, the most common choice for KP astrology. "kp-old" uses the Krishnamurti original table from KP Reader-1 with constant precession rate. "lahiri" uses Lahiri/Chitrapaksha ayanamsa, matching most traditional Vedic software. "raman" uses the B.V. Raman ayanamsa from Hindu Predictive Astrology, a recognised traditional school that sits about 1.45 degrees below Lahiri. Defaults to "kp-newcomb".
4852
5127
  */
4853
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri';
5128
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman';
4854
5129
  /**
4855
5130
  * Lunar node type for Rahu and Ketu positions. "mean" uses the smooth mean node (traditional Vedic astrology default). "true" uses the osculating node with perturbation corrections, oscillating up to 1.5 degrees from mean with a 173-day period. Impacts KP sub-lord assignments in narrow boundary cases. Defaults to "mean".
4856
5131
  */
@@ -4972,9 +5247,291 @@ export type KpPlanetsIntervalRequest = {
4972
5247
  */
4973
5248
  timezone?: number | string;
4974
5249
  /**
4975
- * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula, the most common choice for KP astrology. "kp-old" uses the Krishnamurti original table from KP Reader-1 with constant precession rate. "lahiri" uses Lahiri/Chitrapaksha ayanamsa, matching most traditional Vedic software. Defaults to "kp-newcomb".
5250
+ * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula, the most common choice for KP astrology. "kp-old" uses the Krishnamurti original table from KP Reader-1 with constant precession rate. "lahiri" uses Lahiri/Chitrapaksha ayanamsa, matching most traditional Vedic software. "raman" uses the B.V. Raman ayanamsa from Hindu Predictive Astrology, a recognised traditional school that sits about 1.45 degrees below Lahiri. Defaults to "kp-newcomb".
5251
+ */
5252
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman';
5253
+ /**
5254
+ * Lunar node type for Rahu and Ketu positions. "mean" uses the smooth mean node (traditional Vedic astrology default). "true" uses the osculating node with perturbation corrections, oscillating up to 1.5 degrees from mean with a 173-day period. Impacts KP sub-lord assignments in narrow boundary cases. Defaults to "mean".
5255
+ */
5256
+ nodeType?: 'mean' | 'true';
5257
+ };
5258
+ /**
5259
+ * A complete KP horary (Prashna) chart: the Ascendant from the number, the cusps and planets from the moment of the question, plus ruling planets and four-level significators.
5260
+ */
5261
+ export type KpHoraryResponse = {
5262
+ /**
5263
+ * The number that was asked for, echoed so a stored chart is self describing.
5264
+ */
5265
+ horaryNumber: number;
5266
+ /**
5267
+ * UTC instant the chart was cast for, resolved from the date, time and timezone.
5268
+ */
5269
+ questionTime: string;
5270
+ /**
5271
+ * Sidereal frame used, echoed back.
5272
+ */
5273
+ ayanamsaType: string;
5274
+ /**
5275
+ * Degrees subtracted from every tropical longitude to produce this chart. Compare it against your reference software before treating a placement difference as a disagreement.
5276
+ */
5277
+ ayanamsaDegrees: number;
5278
+ /**
5279
+ * The Ascendant the horary number produced. This is the ONLY part of the chart that comes from the number; everything else comes from the sky at the moment of the question.
5280
+ */
5281
+ ascendant: {
5282
+ /**
5283
+ * Sidereal longitude of the horary Ascendant, taken as the MIDPOINT of the sub division the number names.
5284
+ */
5285
+ longitude: number;
5286
+ /**
5287
+ * Degrees into the sign, 0 to 30, which is what a chart displays.
5288
+ */
5289
+ degreeInSign: number;
5290
+ /**
5291
+ * Zodiac sign (rashi) of this point.
5292
+ */
5293
+ sign: string;
5294
+ /**
5295
+ * Nakshatra (star) this point falls in.
5296
+ */
5297
+ star: string;
5298
+ /**
5299
+ * Nakshatra lord (star lord), the second level of the KP hierarchy.
5300
+ */
5301
+ starLord: string;
5302
+ /**
5303
+ * Sub lord, the decisive level in KP. A cusp sub lord is what answers the question: it is read for whether the matter is promised, before any timing is attempted.
5304
+ */
5305
+ subLord: string;
5306
+ /**
5307
+ * KP horary number 1 to 249 of the sub division holding this point. Matches the standard published KP table.
5308
+ */
5309
+ kpNumber: number;
5310
+ /**
5311
+ * Sidereal longitude where this numbered sub division begins.
5312
+ */
5313
+ spanFrom: number;
5314
+ /**
5315
+ * Sidereal longitude where it ends. The Ascendant sits midway between this and spanFrom.
5316
+ */
5317
+ spanTo: number;
5318
+ };
5319
+ /**
5320
+ * Twelve Placidus cusps, house 1 first. House 1 is the horary Ascendant; the other eleven follow from the house frame that Ascendant implies at this latitude.
5321
+ */
5322
+ cusps: Array<{
5323
+ /**
5324
+ * House (bhava) number 1 to 12.
5325
+ */
5326
+ house: number;
5327
+ /**
5328
+ * Sidereal longitude of the cusp.
5329
+ */
5330
+ longitude: number;
5331
+ /**
5332
+ * Zodiac sign (rashi) of this point.
5333
+ */
5334
+ sign: string;
5335
+ /**
5336
+ * Nakshatra (star) this point falls in.
5337
+ */
5338
+ star: string;
5339
+ /**
5340
+ * Nakshatra lord (star lord), the second level of the KP hierarchy.
5341
+ */
5342
+ starLord: string;
5343
+ /**
5344
+ * Sub lord, the decisive level in KP. A cusp sub lord is what answers the question: it is read for whether the matter is promised, before any timing is attempted.
5345
+ */
5346
+ subLord: string;
5347
+ /**
5348
+ * KP horary number 1 to 249 of the sub division holding this point. Matches the standard published KP table.
5349
+ */
5350
+ kpNumber: number;
5351
+ }>;
5352
+ /**
5353
+ * The nine grahas at the moment of the question, placed against the horary cusps. These come from the real sky, not from the number.
5354
+ */
5355
+ planets: Array<{
5356
+ /**
5357
+ * Graha name.
5358
+ */
5359
+ planet: string;
5360
+ /**
5361
+ * Sidereal longitude at the moment of the question.
5362
+ */
5363
+ longitude: number;
5364
+ /**
5365
+ * Placidus house the graha occupies in this horary chart, counted against the cusps above rather than by whole sign.
5366
+ */
5367
+ house: number;
5368
+ /**
5369
+ * Retrograde motion flag.
5370
+ */
5371
+ isRetrograde: boolean;
5372
+ /**
5373
+ * Sub-sub lord, the fourth KP level, used to refine timing.
5374
+ */
5375
+ subSubLord: string;
5376
+ /**
5377
+ * Zodiac sign (rashi) of this point.
5378
+ */
5379
+ sign: string;
5380
+ /**
5381
+ * Nakshatra (star) this point falls in.
5382
+ */
5383
+ star: string;
5384
+ /**
5385
+ * Nakshatra lord (star lord), the second level of the KP hierarchy.
5386
+ */
5387
+ starLord: string;
5388
+ /**
5389
+ * Sub lord, the decisive level in KP. A cusp sub lord is what answers the question: it is read for whether the matter is promised, before any timing is attempted.
5390
+ */
5391
+ subLord: string;
5392
+ /**
5393
+ * KP horary number 1 to 249 of the sub division holding this point. Matches the standard published KP table.
5394
+ */
5395
+ kpNumber: number;
5396
+ }>;
5397
+ /**
5398
+ * Ruling planets at the moment of the question. NOTE the lagna values here are from the TIME-based ascendant, which is the classical ruling-planet definition, not from the horary number.
5399
+ */
5400
+ rulingPlanets: {
5401
+ /**
5402
+ * Lord of the Hindu weekday, counted from sunrise.
5403
+ */
5404
+ dayLord: string;
5405
+ /**
5406
+ * Sign lord of the Moon.
5407
+ */
5408
+ moonSignLord: string;
5409
+ /**
5410
+ * Star lord of the Moon.
5411
+ */
5412
+ moonStarLord: string;
5413
+ /**
5414
+ * Sub lord of the Moon.
5415
+ */
5416
+ moonSublord: string;
5417
+ /**
5418
+ * Sub-sub lord of the Moon.
5419
+ */
5420
+ moonSubSublord: string;
5421
+ /**
5422
+ * Sign lord of the ascendant at the question moment.
5423
+ */
5424
+ lagnaSignLord: string;
5425
+ /**
5426
+ * Star lord of that ascendant.
5427
+ */
5428
+ lagnaStarLord: string;
5429
+ /**
5430
+ * Sub lord of that ascendant.
5431
+ */
5432
+ lagnaSublord: string;
5433
+ /**
5434
+ * Sub-sub lord of that ascendant.
5435
+ */
5436
+ lagnaSubSublord: string;
5437
+ /**
5438
+ * The distinct ruling planets in KP order of strength. They validate the chart: when they repeat the significators of the houses the question needs, the judgment is considered reliable.
5439
+ */
5440
+ rulingPlanets: Array<string>;
5441
+ };
5442
+ /**
5443
+ * KP significators for event prediction and timing. Shows which planets signify each house (house-wise) and which houses each planet signifies (planet-wise). Strength order: Level 1 (planets in star of occupant) > Level 2 (occupants) > Level 3 (planets in star of owner) > Level 4 (house owner).
5444
+ */
5445
+ significators: {
5446
+ houseWise: Array<{
5447
+ /**
5448
+ * House number 1-12
5449
+ */
5450
+ house: number;
5451
+ significators: Array<{
5452
+ /**
5453
+ * KP significator strength level (1-4). L1: planets in star of occupant (strongest). L2: occupant itself. L3: planets in star of owner. L4: sign owner. Lower number = stronger signification for this house.
5454
+ */
5455
+ level: number;
5456
+ /**
5457
+ * Human-readable label for this KP significator level.
5458
+ */
5459
+ description: string;
5460
+ /**
5461
+ * Planets signifying this house at this strength level.
5462
+ */
5463
+ planets: Array<string>;
5464
+ }>;
5465
+ /**
5466
+ * All significators in order of strength
5467
+ */
5468
+ all: Array<string>;
5469
+ }>;
5470
+ planetWise: Array<{
5471
+ /**
5472
+ * Vedic graha (planet) being analyzed for its house significations.
5473
+ */
5474
+ planet: string;
5475
+ signifies: Array<{
5476
+ /**
5477
+ * KP significator strength level (1-4). L1 strongest, L4 weakest.
5478
+ */
5479
+ level: number;
5480
+ /**
5481
+ * House numbers this planet signifies at this strength level.
5482
+ */
5483
+ houses: Array<number>;
5484
+ }>;
5485
+ /**
5486
+ * All houses signified in order of strength
5487
+ */
5488
+ allHouses: Array<number>;
5489
+ }>;
5490
+ };
5491
+ /**
5492
+ * Significations of each of the twelve bhavas (houses), keyed by house number 1 to 12, as short keywords. Bhava 1 is the Lagna (self, body, vitality), 2 wealth and speech, 4 home and mother, 7 marriage and partnership, 10 career and status, 11 gains. Use it to label the house numbers returned elsewhere in the response: a Vimshottari dasha period signifying houses 2, 7 and 8, or a KP significator carrying houses 11 and 6, becomes readable text without a separate lookup call. Returned once per response rather than repeated per period, and localized by the lang query parameter alongside every other interpretation field.
5493
+ */
5494
+ houseThemes: {
5495
+ [key: string]: Array<string>;
5496
+ };
5497
+ /**
5498
+ * Which signification vocabulary produced the houseThemes keywords in this response, echoing the focus query parameter. Always present, and "general" when the parameter was omitted. Read it to label a rendered house legend, or to tell two cached responses apart when only one asked for the finance lens.
5499
+ */
5500
+ focus: 'general' | 'finance';
5501
+ };
5502
+ export type KpHoraryRequest = {
5503
+ /**
5504
+ * Horary number from 1 to 249, given by the querent while focused on their question. It maps to one of the 249 KP sub divisions of the zodiac, and that division sets the Ascendant of the chart. The querent should give the first number that comes to mind and use it once for that question; the astrologer never chooses it. Numbers outside 1 to 249 are rejected rather than wrapped, because a wrapped number would silently answer a different question.
5505
+ */
5506
+ horaryNumber: number;
5507
+ /**
5508
+ * Date the question was taken up for judgment, YYYY-MM-DD. Not a birth date: a horary chart needs no birth details at all, which is the point of the method.
5509
+ */
5510
+ date: string;
5511
+ /**
5512
+ * Time the question was taken up for judgment, 24-hour HH:MM:SS. In KP practice this is the moment the astrologer receives and understands the question, not the moment the querent first thought of it. It sets every planetary position and all twelve cusps except the Ascendant.
5513
+ */
5514
+ time: string;
5515
+ /**
5516
+ * Latitude where the question is judged, decimal degrees. The house cusps are Placidus and therefore latitude dependent, so this is the place of judgment, not the querent birthplace.
5517
+ */
5518
+ latitude: number;
5519
+ /**
5520
+ * Longitude where the question is judged, decimal degrees.
5521
+ */
5522
+ longitude: number;
5523
+ /**
5524
+ * Timezone: IANA name (e.g. "Asia/Kolkata") OR decimal hours from UTC. Defaults to 5.5.
5525
+ */
5526
+ timezone?: number | string;
5527
+ /**
5528
+ * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula (most common for KP). "kp-old" uses the Krishnamurti original table. "lahiri" uses Lahiri/Chitrapaksha ayanamsa matching most traditional Vedic software. "raman" uses the B.V. Raman ayanamsa, about 1.45 degrees below Lahiri. "custom" allows providing your own value via ayanamsaValue. Defaults to "kp-newcomb".
5529
+ */
5530
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
5531
+ /**
5532
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
4976
5533
  */
4977
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri';
5534
+ ayanamsaValue?: number;
4978
5535
  /**
4979
5536
  * Lunar node type for Rahu and Ketu positions. "mean" uses the smooth mean node (traditional Vedic astrology default). "true" uses the osculating node with perturbation corrections, oscillating up to 1.5 degrees from mean with a 173-day period. Impacts KP sub-lord assignments in narrow boundary cases. Defaults to "mean".
4980
5537
  */
@@ -5146,6 +5703,19 @@ export type NakshatraResponse = {
5146
5703
  * Complete upagraha positions for a birth chart
5147
5704
  */
5148
5705
  export type UpagrahaResponse = {
5706
+ /**
5707
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
5708
+ */
5709
+ frame: {
5710
+ /**
5711
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
5712
+ */
5713
+ ayanamsa: string;
5714
+ /**
5715
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
5716
+ */
5717
+ ayanamsaDegrees: number;
5718
+ };
5149
5719
  /**
5150
5720
  * Time-based upagrahas derived from the 8-part division of day or night. Gulika and Mandi are from Saturn segment, others from Sun, Mars, Mercury, Jupiter segments. Positions depend on birth time, location, and weekday.
5151
5721
  */
@@ -5234,11 +5804,32 @@ export type UpagrahaRequest = {
5234
5804
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
5235
5805
  */
5236
5806
  timezone?: number | string;
5807
+ /**
5808
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
5809
+ */
5810
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
5811
+ /**
5812
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
5813
+ */
5814
+ ayanamsaValue?: number;
5237
5815
  };
5238
5816
  /**
5239
5817
  * Complete Ashtakavarga analysis for a birth chart
5240
5818
  */
5241
5819
  export type AshtakavargaResponse = {
5820
+ /**
5821
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
5822
+ */
5823
+ frame: {
5824
+ /**
5825
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
5826
+ */
5827
+ ayanamsa: string;
5828
+ /**
5829
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
5830
+ */
5831
+ ayanamsaDegrees: number;
5832
+ };
5242
5833
  /**
5243
5834
  * Individual planetary strength grids (Bhinnashtakavarga). Eight entries: one for each of the 7 classical planets plus Lagna. Each entry shows how many of the 8 contributors (7 planets + Lagna) give benefic points to that planet in each of the 12 signs.
5244
5835
  */
@@ -5346,11 +5937,115 @@ export type AshtakavargaRequest = {
5346
5937
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
5347
5938
  */
5348
5939
  timezone?: number | string;
5940
+ /**
5941
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
5942
+ */
5943
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
5944
+ /**
5945
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
5946
+ */
5947
+ ayanamsaValue?: number;
5349
5948
  };
5350
5949
  /**
5351
5950
  * Complete Shadbala (six-fold planetary strength) analysis for a birth chart per Brihat Parashara Hora Shastra (BPHS).
5352
5951
  */
5353
5952
  export type ShadbalaResponse = {
5953
+ /**
5954
+ * Localized name and one-line meaning for each of the six Shadbala components, keyed by the same field names each planet entry uses. Join it to render a readable strength breakdown in any of the eight supported languages instead of showing six untranslated Sanskrit terms.
5955
+ */
5956
+ balaThemes: {
5957
+ /**
5958
+ * Localized label and meaning for one Shadbala component.
5959
+ */
5960
+ sthanaBala: {
5961
+ /**
5962
+ * Localized name of this Shadbala component, suitable for a table header or a bar label.
5963
+ */
5964
+ name: string;
5965
+ /**
5966
+ * One-line localized explanation of what this component measures.
5967
+ */
5968
+ meaning: string;
5969
+ };
5970
+ /**
5971
+ * Localized label and meaning for one Shadbala component.
5972
+ */
5973
+ digBala: {
5974
+ /**
5975
+ * Localized name of this Shadbala component, suitable for a table header or a bar label.
5976
+ */
5977
+ name: string;
5978
+ /**
5979
+ * One-line localized explanation of what this component measures.
5980
+ */
5981
+ meaning: string;
5982
+ };
5983
+ /**
5984
+ * Localized label and meaning for one Shadbala component.
5985
+ */
5986
+ kalaBala: {
5987
+ /**
5988
+ * Localized name of this Shadbala component, suitable for a table header or a bar label.
5989
+ */
5990
+ name: string;
5991
+ /**
5992
+ * One-line localized explanation of what this component measures.
5993
+ */
5994
+ meaning: string;
5995
+ };
5996
+ /**
5997
+ * Localized label and meaning for one Shadbala component.
5998
+ */
5999
+ chestaBala: {
6000
+ /**
6001
+ * Localized name of this Shadbala component, suitable for a table header or a bar label.
6002
+ */
6003
+ name: string;
6004
+ /**
6005
+ * One-line localized explanation of what this component measures.
6006
+ */
6007
+ meaning: string;
6008
+ };
6009
+ /**
6010
+ * Localized label and meaning for one Shadbala component.
6011
+ */
6012
+ naisargikaBala: {
6013
+ /**
6014
+ * Localized name of this Shadbala component, suitable for a table header or a bar label.
6015
+ */
6016
+ name: string;
6017
+ /**
6018
+ * One-line localized explanation of what this component measures.
6019
+ */
6020
+ meaning: string;
6021
+ };
6022
+ /**
6023
+ * Localized label and meaning for one Shadbala component.
6024
+ */
6025
+ drikBala: {
6026
+ /**
6027
+ * Localized name of this Shadbala component, suitable for a table header or a bar label.
6028
+ */
6029
+ name: string;
6030
+ /**
6031
+ * One-line localized explanation of what this component measures.
6032
+ */
6033
+ meaning: string;
6034
+ };
6035
+ };
6036
+ /**
6037
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
6038
+ */
6039
+ frame: {
6040
+ /**
6041
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
6042
+ */
6043
+ ayanamsa: string;
6044
+ /**
6045
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
6046
+ */
6047
+ ayanamsaDegrees: number;
6048
+ };
5354
6049
  /**
5355
6050
  * Shadbala analysis for all 7 classical planets. Ordered: Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn. Each entry contains all 6 strength components, total strength in virupas and Rupas, Ishta/Kashta Phala, minimum required threshold, strength ratio, and relative rank.
5356
6051
  */
@@ -5372,7 +6067,7 @@ export type ShadbalaResponse = {
5372
6067
  */
5373
6068
  kalaBala: number;
5374
6069
  /**
5375
- * Chesta Bala (Motional Strength) in virupas. Based on planetary motion and retrogression. Retrograde planets score higher. Sun uses Ayana Chesta Bala (declination arc), Moon uses elongation from Sun. Other planets use Sheeghrochcha (mean anomaly) from Surya Siddhanta elements. Range 0 to 60.
6070
+ * Chesta Bala (Motional Strength) in virupas. Based on planetary motion, so a retrograde graha scores higher because it is closer to Earth and working hardest. The Sun uses its Ayana Bala and the Moon its elongation from the Sun, per BPHS. Mars, Mercury, Jupiter, Venus and Saturn use the Sheeghra Kendra, the arc between the sheeghrochcha and the mean of the true and mean longitudes, with the roles of the mean Sun and the graha swapped for Mercury and Venus. Range 0 to 60.
5376
6071
  */
5377
6072
  chestaBala: number;
5378
6073
  /**
@@ -5380,7 +6075,7 @@ export type ShadbalaResponse = {
5380
6075
  */
5381
6076
  naisargikaBala: number;
5382
6077
  /**
5383
- * Drik Bala (Aspectual Strength) in virupas. Strength gained or lost from aspects received by other planets. Benefic aspects (Jupiter, Venus) add strength, malefic aspects (Sun, Mars, Saturn) reduce it. Can be negative when malefic aspects dominate. Uses Sputa Drishti with Vishesha (special) aspects for Mars, Jupiter, and Saturn.
6078
+ * Drik Bala (Aspectual Strength) in virupas. Strength gained or lost from the aspects a graha receives. Benefic aspects add strength and malefic aspects reduce it, so this value is negative when malefics dominate. Mercury counts as benefic or malefic by the company it keeps in its own sign, decided by count with the nearest graha breaking a tie, and the Moon by its paksha. Uses the graded Sputa Drishti curve of BPHS Ch. 26 with the Vishesha (special) aspects of Mars, Jupiter and Saturn applied at their precise DEGREE ranges rather than by whole sign.
5384
6079
  */
5385
6080
  drikBala: number;
5386
6081
  /**
@@ -5434,11 +6129,32 @@ export type ShadbalaRequest = {
5434
6129
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
5435
6130
  */
5436
6131
  timezone?: number | string;
6132
+ /**
6133
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
6134
+ */
6135
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
6136
+ /**
6137
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
6138
+ */
6139
+ ayanamsaValue?: number;
5437
6140
  };
5438
6141
  /**
5439
6142
  * The twelve Arudha padas of a birth chart, computed per the Jaimini rule with the classical exception applied.
5440
6143
  */
5441
6144
  export type ArudhaResponse = {
6145
+ /**
6146
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
6147
+ */
6148
+ frame: {
6149
+ /**
6150
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
6151
+ */
6152
+ ayanamsa: string;
6153
+ /**
6154
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
6155
+ */
6156
+ ayanamsaDegrees: number;
6157
+ };
5442
6158
  /**
5443
6159
  * Zodiac sign of the Ascendant (Lagna), which anchors the twelve bhavas the padas are derived from.
5444
6160
  */
@@ -5526,11 +6242,32 @@ export type ArudhaRequest = {
5526
6242
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
5527
6243
  */
5528
6244
  timezone?: number | string;
6245
+ /**
6246
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
6247
+ */
6248
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
6249
+ /**
6250
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
6251
+ */
6252
+ ayanamsaValue?: number;
5529
6253
  };
5530
6254
  /**
5531
6255
  * Chara Karakas for a birth chart: the movable significators of Jaimini astrology, ranked by how far each graha has advanced into its sign.
5532
6256
  */
5533
6257
  export type CharaKarakaResponse = {
6258
+ /**
6259
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
6260
+ */
6261
+ frame: {
6262
+ /**
6263
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
6264
+ */
6265
+ ayanamsa: string;
6266
+ /**
6267
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
6268
+ */
6269
+ ayanamsaDegrees: number;
6270
+ };
5534
6271
  /**
5535
6272
  * Scheme the ranking used, echoed back so a cached or logged response is self describing.
5536
6273
  */
@@ -5610,11 +6347,372 @@ export type CharaKarakaRequest = {
5610
6347
  * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
5611
6348
  */
5612
6349
  timezone?: number | string;
6350
+ /**
6351
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
6352
+ */
6353
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
6354
+ /**
6355
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
6356
+ */
6357
+ ayanamsaValue?: number;
5613
6358
  /**
5614
6359
  * Which Chara Karaka scheme to rank. "eight" includes Rahu, counting its degree in reverse because it moves retrograde, and returns eight offices including Pitrikaraka. "seven" ranks only the seven classical grahas and drops Pitrikaraka. Ketu is excluded from both, since it always mirrors the Rahu degree exactly. The two schemes can produce a different Atmakaraka for the same chart, so select the one your reference software uses. Defaults to "eight".
5615
6360
  */
5616
6361
  scheme?: 'seven' | 'eight';
5617
6362
  };
6363
+ /**
6364
+ * Complete Bhava Bala (house strength) analysis per Brihat Parashara Hora Shastra, with a localized house-meaning legend.
6365
+ */
6366
+ export type BhavaBalaResponse = {
6367
+ /**
6368
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
6369
+ */
6370
+ frame: {
6371
+ /**
6372
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
6373
+ */
6374
+ ayanamsa: string;
6375
+ /**
6376
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
6377
+ */
6378
+ ayanamsaDegrees: number;
6379
+ };
6380
+ /**
6381
+ * House frame the bhavas were built on. Always sripati: Bhava Bala is defined on unequal bhava madhyas, not on whole signs.
6382
+ */
6383
+ houseSystem: string;
6384
+ /**
6385
+ * Bhava Bala for all twelve houses in order, house 1 first. Each entry carries its own components so a client can explain a score rather than just display it.
6386
+ */
6387
+ bhavas: Array<{
6388
+ /**
6389
+ * Bhava (house) number 1 to 12, counted from the Lagna. House 1 is the Ascendant bhava, house 10 the career bhava, house 7 the partnership bhava.
6390
+ */
6391
+ house: number;
6392
+ /**
6393
+ * Zodiac sign holding this bhavas madhya (mid-cusp). Under the Sripati house system the bhavas are unequal, so this is NOT always the nth sign from the Lagna, and two bhavas can share a sign while another sign holds none.
6394
+ */
6395
+ rashi: string;
6396
+ /**
6397
+ * Bhava madhya (mid-cusp) longitude in degrees, sidereal Lahiri. The point every strength component below is measured at. Bhavas 1, 4, 7 and 10 sit on the Ascendant, IC, Descendant and Midheaven; the rest trisect the quadrants between them.
6398
+ */
6399
+ madhya: number;
6400
+ /**
6401
+ * Bhavadhipati (house lord), the ruler of the sign holding the madhya. Its Shadbala is what this bhava inherits, so a house ruled by a strong graha starts strong.
6402
+ */
6403
+ lord: string;
6404
+ /**
6405
+ * Bhavadhipati Bala in virupas: the total Shadbala of the house lord, carried across unchanged. The dominant term of the three, typically 250 to 650. Two bhavas ruled by the same graha therefore share this value exactly.
6406
+ */
6407
+ bhavadhipatiBala: number;
6408
+ /**
6409
+ * Bhava Digbala (directional strength) in virupas, 0 to 60 in steps of 10. Each rashi class is strongest in one cardinal bhava (human signs at the Lagna, quadruped at the 10th, watery at the 4th, Scorpio at the 7th) and loses 10 virupas per bhava of separation, reaching 0 at the seventh from it.
6410
+ */
6411
+ digBala: number;
6412
+ /**
6413
+ * Bhava Drishti Bala (aspectual strength) in virupas, computed on the bhava madhya exactly as Graha Drik Bala is computed on a graha. Benefic aspects add and malefic aspects subtract, so this term is often negative.
6414
+ */
6415
+ drishtiBala: number;
6416
+ /**
6417
+ * Total Bhava Bala in virupas, the sum of the three components above. Use it to compare houses within one chart: the strongest bhavas are the life areas that unfold with least resistance.
6418
+ */
6419
+ totalVirupas: number;
6420
+ /**
6421
+ * Total Bhava Bala in rupas (totalVirupas / 60). 1 rupa equals 60 virupas. Rupas are the conventional unit in classical tables.
6422
+ */
6423
+ totalRupas: number;
6424
+ /**
6425
+ * Strength rank among the twelve bhavas, 1 = strongest. Ranked on totalVirupas, so it never disagrees with the published totals.
6426
+ */
6427
+ rank: number;
6428
+ }>;
6429
+ /**
6430
+ * Significations of each of the twelve bhavas (houses), keyed by house number 1 to 12, as short keywords. Bhava 1 is the Lagna (self, body, vitality), 2 wealth and speech, 4 home and mother, 7 marriage and partnership, 10 career and status, 11 gains. Use it to label the house numbers returned elsewhere in the response: a Vimshottari dasha period signifying houses 2, 7 and 8, or a KP significator carrying houses 11 and 6, becomes readable text without a separate lookup call. Returned once per response rather than repeated per period, and localized by the lang query parameter alongside every other interpretation field.
6431
+ */
6432
+ houseThemes: {
6433
+ [key: string]: Array<string>;
6434
+ };
6435
+ /**
6436
+ * Which signification vocabulary produced the houseThemes keywords in this response, echoing the focus query parameter. Always present, and "general" when the parameter was omitted. Read it to label a rendered house legend, or to tell two cached responses apart when only one asked for the finance lens.
6437
+ */
6438
+ focus: 'general' | 'finance';
6439
+ };
6440
+ export type BhavaBalaRequest = {
6441
+ /**
6442
+ * 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).
6443
+ */
6444
+ date: string;
6445
+ /**
6446
+ * Birth time in 24-hour HH:MM:SS format. Time is CRITICAL for Lagna (Ascendant) calculation and house divisions. It changes every two hours roughly. Even minutes matter for accurate nakshatra pada and divisional chart (D9, D10) calculations. Without exact time, Lagna and house-based predictions will be incorrect.
6447
+ */
6448
+ time: string;
6449
+ /**
6450
+ * 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.
6451
+ */
6452
+ latitude: number;
6453
+ /**
6454
+ * Birth location longitude in decimal degrees. Affects local time calculations and ayanamsha adjustments. Example: Delhi 77.2090, Mumbai 72.8777, Kathmandu 85.3240.
6455
+ */
6456
+ longitude: number;
6457
+ /**
6458
+ * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
6459
+ */
6460
+ timezone?: number | string;
6461
+ /**
6462
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
6463
+ */
6464
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
6465
+ /**
6466
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
6467
+ */
6468
+ ayanamsaValue?: number;
6469
+ };
6470
+ /**
6471
+ * Bhav Chalit (Chalit Kundli): every graha placed by unequal Sripati bhava, with the whole-sign placement beside it for comparison.
6472
+ */
6473
+ export type BhavChalitResponse = {
6474
+ /**
6475
+ * The sidereal frame this response was computed in, so a cached or forwarded payload is self describing.
6476
+ */
6477
+ frame: {
6478
+ /**
6479
+ * Sidereal frame this chart was cast in, echoing the ayanamsa request field. "lahiri" when the field was omitted.
6480
+ */
6481
+ ayanamsa: string;
6482
+ /**
6483
+ * Degrees actually subtracted from every tropical longitude to produce this chart, read at the birth instant. Subtract it back to recover the tropical positions, or compare it against your reference software to confirm you are in the same frame before chasing a placement difference.
6484
+ */
6485
+ ayanamsaDegrees: number;
6486
+ };
6487
+ /**
6488
+ * House frame used to build the bhavas. Always sripati for the Chalit chart.
6489
+ */
6490
+ houseSystem: string;
6491
+ /**
6492
+ * Sidereal Lahiri Ascendant in degrees. The madhya of bhava 1.
6493
+ */
6494
+ ascendant: number;
6495
+ /**
6496
+ * Sidereal Lahiri Midheaven in degrees. The madhya of bhava 10.
6497
+ */
6498
+ midheaven: number;
6499
+ /**
6500
+ * The twelve Sripati bhavas in order with their boundaries and occupants.
6501
+ */
6502
+ bhavas: Array<{
6503
+ /**
6504
+ * Bhava number 1 to 12.
6505
+ */
6506
+ house: number;
6507
+ /**
6508
+ * Bhava sandhi (junction) opening this bhava, in degrees. The midpoint between this madhya and the previous one. A graha exactly on a sandhi belongs to the bhava it opens.
6509
+ */
6510
+ start: number;
6511
+ /**
6512
+ * Bhava madhya (mid-cusp) in degrees. Bhavas 1, 4, 7 and 10 sit exactly on the Ascendant, IC, Descendant and Midheaven; the other eight trisect the quadrant arcs between them.
6513
+ */
6514
+ madhya: number;
6515
+ /**
6516
+ * Bhava sandhi closing this bhava. Identical to the next bhavas start, so the twelve bhavas tile the zodiac with no gap.
6517
+ */
6518
+ end: number;
6519
+ /**
6520
+ * Width of the bhava in degrees. Rarely 30: the Ascendant and Midheaven are only 90 degrees apart by coincidence of latitude and epoch, so quadrants stretch and squeeze and the bhavas with them.
6521
+ */
6522
+ span: number;
6523
+ /**
6524
+ * Sign holding the madhya. Because bhavas are unequal, two bhavas can share a sign while another sign holds no madhya at all.
6525
+ */
6526
+ rashi: string;
6527
+ /**
6528
+ * Grahas falling inside this bhava. Empty when the bhava is unoccupied.
6529
+ */
6530
+ grahas: Array<string>;
6531
+ }>;
6532
+ /**
6533
+ * All nine grahas with both their Chalit bhava and their whole-sign Rashi house, plus a moved flag.
6534
+ */
6535
+ grahas: Array<{
6536
+ /**
6537
+ * Graha name. All nine are placed, the seven classical grahas plus the lunar nodes Rahu and Ketu.
6538
+ */
6539
+ graha: string;
6540
+ /**
6541
+ * Sidereal Lahiri longitude in degrees.
6542
+ */
6543
+ longitude: number;
6544
+ /**
6545
+ * Zodiac sign the graha occupies. Identical to the Rashi (D1) chart.
6546
+ */
6547
+ rashi: string;
6548
+ /**
6549
+ * Bhava the graha falls in under the unequal Sripati cusps. This is the Bhav Chalit placement and the reason the chart exists.
6550
+ */
6551
+ bhava: number;
6552
+ /**
6553
+ * House the same graha occupies in the whole-sign Rashi chart, counted from the Lagna sign. Returned alongside bhava so the difference is visible without a second request.
6554
+ */
6555
+ rashiHouse: number;
6556
+ /**
6557
+ * True when bhava and rashiHouse disagree, i.e. the graha changes house between the Rashi chart and the Chalit chart. These are the placements a practitioner opens this chart to check.
6558
+ */
6559
+ moved: boolean;
6560
+ }>;
6561
+ /**
6562
+ * How many of the nine grahas change house between the Rashi chart and the Chalit chart. Zero is a perfectly normal result and means the two charts agree for this nativity.
6563
+ */
6564
+ movedCount: number;
6565
+ /**
6566
+ * Significations of each of the twelve bhavas (houses), keyed by house number 1 to 12, as short keywords. Bhava 1 is the Lagna (self, body, vitality), 2 wealth and speech, 4 home and mother, 7 marriage and partnership, 10 career and status, 11 gains. Use it to label the house numbers returned elsewhere in the response: a Vimshottari dasha period signifying houses 2, 7 and 8, or a KP significator carrying houses 11 and 6, becomes readable text without a separate lookup call. Returned once per response rather than repeated per period, and localized by the lang query parameter alongside every other interpretation field.
6567
+ */
6568
+ houseThemes: {
6569
+ [key: string]: Array<string>;
6570
+ };
6571
+ /**
6572
+ * Which signification vocabulary produced the houseThemes keywords in this response, echoing the focus query parameter. Always present, and "general" when the parameter was omitted. Read it to label a rendered house legend, or to tell two cached responses apart when only one asked for the finance lens.
6573
+ */
6574
+ focus: 'general' | 'finance';
6575
+ };
6576
+ export type BhavChalitRequest = {
6577
+ /**
6578
+ * 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).
6579
+ */
6580
+ date: string;
6581
+ /**
6582
+ * Birth time in 24-hour HH:MM:SS format. Time is CRITICAL for Lagna (Ascendant) calculation and house divisions. It changes every two hours roughly. Even minutes matter for accurate nakshatra pada and divisional chart (D9, D10) calculations. Without exact time, Lagna and house-based predictions will be incorrect.
6583
+ */
6584
+ time: string;
6585
+ /**
6586
+ * 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.
6587
+ */
6588
+ latitude: number;
6589
+ /**
6590
+ * Birth location longitude in decimal degrees. Affects local time calculations and ayanamsha adjustments. Example: Delhi 77.2090, Mumbai 72.8777, Kathmandu 85.3240.
6591
+ */
6592
+ longitude: number;
6593
+ /**
6594
+ * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC (e.g. -5 for EST, 1 for CET). 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.
6595
+ */
6596
+ timezone?: number | string;
6597
+ /**
6598
+ * Sidereal frame (ayanamsa) the chart is cast in. "lahiri" is Lahiri/Chitrapaksha, the traditional Vedic standard used by most software, and is the default. "raman" is the B.V. Raman ayanamsa from Hindu Predictive Astrology, about 1.45 degrees below Lahiri. "kp-newcomb" and "kp-old" are the two Krishnamurti Paddhati frames. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. The frame rotates the whole zodiac, so a graha sitting within 1.45 degrees of a boundary can change rashi or nakshatra when you switch: pick the one your reference software uses and keep it.
6599
+ */
6600
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
6601
+ /**
6602
+ * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
6603
+ */
6604
+ ayanamsaValue?: number;
6605
+ };
6606
+ /**
6607
+ * Heliacal rising and setting status of the six visible grahas.
6608
+ */
6609
+ export type HeliacalResponse = {
6610
+ /**
6611
+ * Local calendar date the verdicts were read for, echoed from the request.
6612
+ */
6613
+ date: string;
6614
+ /**
6615
+ * One entry per visible graha, in classical order. A graha is omitted only when no horizon crossing exists for it at this latitude on this day.
6616
+ */
6617
+ grahas: Array<{
6618
+ /**
6619
+ * Graha name. Only the six with a visible body appear: Moon, Mars, Mercury, Jupiter, Venus and Saturn. The Sun cannot be lost in his own glare, and Rahu and Ketu are computed points with nothing to see.
6620
+ */
6621
+ graha: string;
6622
+ /**
6623
+ * Whether the graha clears the Sun glare on this day. False is the state a practitioner calls asta or combust, during which classical muhurta withholds auspicious ceremonies, most strictly marriage while Jupiter or Venus is invisible.
6624
+ */
6625
+ visible: boolean;
6626
+ /**
6627
+ * Horizon this graha is currently judged at. West means it sets after the Sun and is an evening object, east that it rises before him and is a morning one.
6628
+ */
6629
+ horizon: 'east' | 'west';
6630
+ /**
6631
+ * Separation from the Sun in degrees of TIME (kalamsa), measured along the equator between the two bodies horizon crossings. This is the quantity Surya Siddhanta actually compares against the limit, and it is not the same as the difference of ecliptic longitudes: the two diverge by roughly 3 degrees at Mumbai and by more than 15 further north, because it accounts for the angle the ecliptic makes with the local horizon.
6632
+ */
6633
+ timeDegrees: number;
6634
+ /**
6635
+ * The limit in degrees of time this graha must clear to be seen, per Surya Siddhanta ch. IX vv.6-8 and ch. X.1: Moon 12, Jupiter 11, Saturn 15, Mars 17, Venus 10 or 8, Mercury 14 or 12. Larger means the graha is fainter and needs more distance from the Sun.
6636
+ */
6637
+ kalamsa: number;
6638
+ /**
6639
+ * Whether the graha is retrograde, which for Mercury and Venus tightens the limit (Venus 10 to 8, Mercury 14 to 12). Retrograde puts them near inferior conjunction where they are far closer to Earth, so the larger brighter disk survives closer to the Sun.
6640
+ */
6641
+ retrograde: boolean;
6642
+ /**
6643
+ * Plain angular separation of the two ecliptic longitudes, in degrees. Returned beside timeDegrees so the two measures can be compared: this is what a combustion flag on a birth chart uses, and the gap between them is precisely what a location-aware heliacal calculation adds.
6644
+ */
6645
+ longitudeSeparation: number;
6646
+ /**
6647
+ * The event that produced the current state, or null when none falls inside the search horizon (up to about one synodic period, so Mars can legitimately have none).
6648
+ */
6649
+ lastEvent: {
6650
+ /**
6651
+ * Udaya is heliacal rising, the graha re-emerging from the Sun rays and becoming visible again. Asta (also called lopa, moudhya or moudyami) is heliacal setting, the graha disappearing into them. Stable Sanskrit keys, never translated.
6652
+ */
6653
+ type: 'udaya' | 'asta';
6654
+ /**
6655
+ * Horizon the event happens at. East means it is read before sunrise, so the graha is a morning object; west means after sunset, an evening object. A graha crosses to the other horizon as it passes the Sun, which is why an asta and the udaya that follows it are usually on opposite horizons.
6656
+ */
6657
+ horizon: 'east' | 'west';
6658
+ /**
6659
+ * Local civil datetime of the event (YYYY-MM-DDTHH:MM:SS), being the moment the graha itself crosses the horizon on the day its verdict changes. That instant, rather than sunrise or sunset, is what published Asta tables print.
6660
+ */
6661
+ datetime: string;
6662
+ /**
6663
+ * Separation from the Sun in degrees of time on the event day, measured the way the classical rule requires. Sits just either side of kalamsa, since that crossing is what defines the event.
6664
+ */
6665
+ timeDegrees: number;
6666
+ /**
6667
+ * The limit that was crossed. Can differ from the current reading limit for Mercury and Venus, whose limit tightens when they are retrograde, so an asta entered while retrograde may be left at a different threshold.
6668
+ */
6669
+ kalamsa: number;
6670
+ } | null;
6671
+ /**
6672
+ * The event that will end the current state, or null when none falls inside the search horizon. For an invisible graha this is the udaya a practitioner is waiting for, so it answers when Guru Asta or Shukra Asta lifts.
6673
+ */
6674
+ nextEvent: {
6675
+ /**
6676
+ * Udaya is heliacal rising, the graha re-emerging from the Sun rays and becoming visible again. Asta (also called lopa, moudhya or moudyami) is heliacal setting, the graha disappearing into them. Stable Sanskrit keys, never translated.
6677
+ */
6678
+ type: 'udaya' | 'asta';
6679
+ /**
6680
+ * Horizon the event happens at. East means it is read before sunrise, so the graha is a morning object; west means after sunset, an evening object. A graha crosses to the other horizon as it passes the Sun, which is why an asta and the udaya that follows it are usually on opposite horizons.
6681
+ */
6682
+ horizon: 'east' | 'west';
6683
+ /**
6684
+ * Local civil datetime of the event (YYYY-MM-DDTHH:MM:SS), being the moment the graha itself crosses the horizon on the day its verdict changes. That instant, rather than sunrise or sunset, is what published Asta tables print.
6685
+ */
6686
+ datetime: string;
6687
+ /**
6688
+ * Separation from the Sun in degrees of time on the event day, measured the way the classical rule requires. Sits just either side of kalamsa, since that crossing is what defines the event.
6689
+ */
6690
+ timeDegrees: number;
6691
+ /**
6692
+ * The limit that was crossed. Can differ from the current reading limit for Mercury and Venus, whose limit tightens when they are retrograde, so an asta entered while retrograde may be left at a different threshold.
6693
+ */
6694
+ kalamsa: number;
6695
+ } | null;
6696
+ }>;
6697
+ };
6698
+ export type HeliacalRequest = {
6699
+ /**
6700
+ * Local calendar date to judge, in YYYY-MM-DD format. There is deliberately no time field: heliacal visibility is a once-a-day verdict read at that day sunrise or sunset, so a clock time could only pick a different day.
6701
+ */
6702
+ date: string;
6703
+ /**
6704
+ * Observer latitude in decimal degrees, restricted to -60 to 60. Visibility depends on the observer, unlike the longitude orb every chart API reports, because the angle the ecliptic makes with the horizon decides how long a graha lingers after the Sun. Beyond this band the classical rule stops describing solar glare and starts describing polar horizon geometry, so it is declined rather than answered wrongly.
6705
+ */
6706
+ latitude: number;
6707
+ /**
6708
+ * Observer longitude in decimal degrees. Sets local sunrise and sunset, which are the instants the verdict is read at. Example: Mumbai 72.8777, Delhi 77.2090, London -0.1278.
6709
+ */
6710
+ longitude: number;
6711
+ /**
6712
+ * Timezone: IANA name (e.g. "Asia/Kolkata", "Europe/London") OR decimal hours from UTC. Fixes which local day the date refers to, and every datetime in the response is returned in it. Defaults to 5.5.
6713
+ */
6714
+ timezone?: number | string;
6715
+ };
5618
6716
  export type BasicCard = {
5619
6717
  /**
5620
6718
  * Unique card identifier in kebab-case (e.g. fool, ace-of-cups, queen-of-swords).
@@ -8821,7 +9919,7 @@ export type PostAstrologyTransitAspectsResponses = {
8821
9919
  */
8822
9920
  summary: string;
8823
9921
  /**
8824
- * When this transit is most active and how long its influence lasts.
9922
+ * When this transit is most active and how long its influence lasts, localized. The bucket follows the speed of the transiting body: a few hours for the Moon, a few days for the Sun, Mercury, Venus and Mars, one to two weeks for Jupiter, several weeks for Saturn, and an extended period for Uranus, Neptune and Pluto.
8825
9923
  */
8826
9924
  timing: string;
8827
9925
  /**
@@ -8894,7 +9992,7 @@ export type PostAstrologyTransitAspectsResponses = {
8894
9992
  * Aspect nature. Harmonious (trine, sextile) flows easily. Challenging (square, opposition) creates tension and growth. Neutral (conjunction) blends energies.
8895
9993
  */
8896
9994
  interpretation: 'harmonious' | 'challenging' | 'neutral';
8897
- };
9995
+ } | null;
8898
9996
  /**
8899
9997
  * Transit aspect counts grouped by aspect type (conjunction, trine, square, opposition, sextile, etc.). Useful for quickly assessing the transit weather.
8900
9998
  */
@@ -10489,7 +11587,7 @@ export type PostAstrologyCompatibilityScoreResponses = {
10489
11587
  /**
10490
11588
  * Dominant element shared by both charts, or null if dominant elements differ.
10491
11589
  */
10492
- sharedElement: string;
11590
+ sharedElement: string | null;
10493
11591
  /**
10494
11592
  * How the elemental balance between charts shapes the relationship dynamic.
10495
11593
  */
@@ -11983,7 +13081,7 @@ export type PostAstrologyFixedStarsData = {
11983
13081
  /**
11984
13082
  * Conjunction orb in degrees, the maximum separation for a star to count as conjunct a chart point. Defaults to 1, maximum 3. Widen it to surface looser contacts or tighten it for only the closest hits.
11985
13083
  */
11986
- orb?: number;
13084
+ orb?: number | null;
11987
13085
  };
11988
13086
  url: '/astrology/fixed-stars';
11989
13087
  };
@@ -12935,7 +14033,7 @@ export type PostVedicAstrologyBirthChartErrors = {
12935
14033
  export type PostVedicAstrologyBirthChartError = PostVedicAstrologyBirthChartErrors[keyof PostVedicAstrologyBirthChartErrors];
12936
14034
  export type PostVedicAstrologyBirthChartResponses = {
12937
14035
  /**
12938
- * D1 Rashi birth chart with all 12 houses, 9 grahas plus Lagna, combustion analysis (Surya Siddhanta orbs), planetary war detection, bhava interpretations, and a meta lookup keyed by planet name.
14036
+ * D1 Rashi birth chart with all 12 houses, 9 grahas plus Lagna, combustion analysis (Surya Siddhanta limits, applied as the standard ecliptic longitude orb), planetary war detection, bhava interpretations, and a meta lookup keyed by planet name.
12939
14037
  */
12940
14038
  200: BirthChartResponse;
12941
14039
  };
@@ -13614,9 +14712,9 @@ export type PostVedicAstrologyDashaCurrentData = {
13614
14712
  */
13615
14713
  timezone?: number | string;
13616
14714
  /**
13617
- * Ayanamsa system used to place the birth Moon in its nakshatra, which sets every dasha start and end date. "lahiri" uses Lahiri/Chitrapaksha, the traditional Vedic standard, and is the default. "kp-newcomb" uses the KP-Newcomb dynamic formula, matching Krishnamurti Paddhati software. "kp-old" uses the Krishnamurti original table from KP Reader-1. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. Switching frames shifts every dasha boundary by weeks, so pick the one your reference software uses.
14715
+ * Ayanamsa system used to place the birth Moon in its nakshatra, which sets every dasha start and end date. "lahiri" uses Lahiri/Chitrapaksha, the traditional Vedic standard, and is the default. "kp-newcomb" uses the KP-Newcomb dynamic formula, matching Krishnamurti Paddhati software. "kp-old" uses the Krishnamurti original table from KP Reader-1. "raman" uses the B.V. Raman ayanamsa, the second frame traditional Indian software commonly offers beside Lahiri. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. Switching frames shifts every dasha boundary by weeks, so pick the one your reference software uses.
13618
14716
  */
13619
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
14717
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
13620
14718
  /**
13621
14719
  * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
13622
14720
  */
@@ -13783,7 +14881,7 @@ export type PostVedicAstrologyDashaCurrentResponses = {
13783
14881
  /**
13784
14882
  * Ayanamsa system used, echoing the request field. One of "lahiri", "kp-newcomb", "kp-old" or "custom". Echoed so a client can confirm which frame produced these dates without re-deriving it. When it reads "custom" the ayanamsa field above carries the exact value you supplied.
13785
14883
  */
13786
- ayanamsaType: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
14884
+ ayanamsaType: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
13787
14885
  /**
13788
14886
  * Mahadasha (major planetary period) in the 120-year Vimshottari dasha cycle. Start and end dates are determined by Moon nakshatra at birth.
13789
14887
  */
@@ -14428,9 +15526,9 @@ export type PostVedicAstrologyDashaMajorData = {
14428
15526
  */
14429
15527
  timezone?: number | string;
14430
15528
  /**
14431
- * Ayanamsa system used to place the birth Moon in its nakshatra, which sets every dasha start and end date. "lahiri" uses Lahiri/Chitrapaksha, the traditional Vedic standard, and is the default. "kp-newcomb" uses the KP-Newcomb dynamic formula, matching Krishnamurti Paddhati software. "kp-old" uses the Krishnamurti original table from KP Reader-1. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. Switching frames shifts every dasha boundary by weeks, so pick the one your reference software uses.
15529
+ * Ayanamsa system used to place the birth Moon in its nakshatra, which sets every dasha start and end date. "lahiri" uses Lahiri/Chitrapaksha, the traditional Vedic standard, and is the default. "kp-newcomb" uses the KP-Newcomb dynamic formula, matching Krishnamurti Paddhati software. "kp-old" uses the Krishnamurti original table from KP Reader-1. "raman" uses the B.V. Raman ayanamsa, the second frame traditional Indian software commonly offers beside Lahiri. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. Switching frames shifts every dasha boundary by weeks, so pick the one your reference software uses.
14432
15530
  */
14433
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
15531
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
14434
15532
  /**
14435
15533
  * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
14436
15534
  */
@@ -14597,7 +15695,7 @@ export type PostVedicAstrologyDashaMajorResponses = {
14597
15695
  /**
14598
15696
  * Ayanamsa system used, echoing the request field. One of "lahiri", "kp-newcomb", "kp-old" or "custom". Echoed so a client can confirm which frame produced these dates without re-deriving it. When it reads "custom" the ayanamsa field above carries the exact value you supplied.
14599
15697
  */
14600
- ayanamsaType: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
15698
+ ayanamsaType: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
14601
15699
  /**
14602
15700
  * Remaining balance of the first Mahadasha at birth. Based on Moon degree within the birth nakshatra. partial dasha already elapsed before birth.
14603
15701
  */
@@ -14741,9 +15839,9 @@ export type PostVedicAstrologyDashaSubByMahadashaData = {
14741
15839
  */
14742
15840
  timezone?: number | string;
14743
15841
  /**
14744
- * Ayanamsa system used to place the birth Moon in its nakshatra, which sets every dasha start and end date. "lahiri" uses Lahiri/Chitrapaksha, the traditional Vedic standard, and is the default. "kp-newcomb" uses the KP-Newcomb dynamic formula, matching Krishnamurti Paddhati software. "kp-old" uses the Krishnamurti original table from KP Reader-1. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. Switching frames shifts every dasha boundary by weeks, so pick the one your reference software uses.
15842
+ * Ayanamsa system used to place the birth Moon in its nakshatra, which sets every dasha start and end date. "lahiri" uses Lahiri/Chitrapaksha, the traditional Vedic standard, and is the default. "kp-newcomb" uses the KP-Newcomb dynamic formula, matching Krishnamurti Paddhati software. "kp-old" uses the Krishnamurti original table from KP Reader-1. "raman" uses the B.V. Raman ayanamsa, the second frame traditional Indian software commonly offers beside Lahiri. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. Switching frames shifts every dasha boundary by weeks, so pick the one your reference software uses.
14745
15843
  */
14746
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
15844
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
14747
15845
  /**
14748
15846
  * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
14749
15847
  */
@@ -14907,7 +16005,7 @@ export type PostVedicAstrologyDashaSubByMahadashaResponses = {
14907
16005
  /**
14908
16006
  * Ayanamsa system used, echoing the request field. One of "lahiri", "kp-newcomb", "kp-old" or "custom". Echoed so a client can confirm which frame produced these dates without re-deriving it. When it reads "custom" the ayanamsa field above carries the exact value you supplied.
14909
16007
  */
14910
- ayanamsaType: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
16008
+ ayanamsaType: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
14911
16009
  /**
14912
16010
  * Full details of the parent Mahadasha including start/end dates and duration.
14913
16011
  */
@@ -15122,9 +16220,9 @@ export type PostVedicAstrologyDashaSubByMahadashaByAntardashaData = {
15122
16220
  */
15123
16221
  timezone?: number | string;
15124
16222
  /**
15125
- * Ayanamsa system used to place the birth Moon in its nakshatra, which sets every dasha start and end date. "lahiri" uses Lahiri/Chitrapaksha, the traditional Vedic standard, and is the default. "kp-newcomb" uses the KP-Newcomb dynamic formula, matching Krishnamurti Paddhati software. "kp-old" uses the Krishnamurti original table from KP Reader-1. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. Switching frames shifts every dasha boundary by weeks, so pick the one your reference software uses.
16223
+ * Ayanamsa system used to place the birth Moon in its nakshatra, which sets every dasha start and end date. "lahiri" uses Lahiri/Chitrapaksha, the traditional Vedic standard, and is the default. "kp-newcomb" uses the KP-Newcomb dynamic formula, matching Krishnamurti Paddhati software. "kp-old" uses the Krishnamurti original table from KP Reader-1. "raman" uses the B.V. Raman ayanamsa, the second frame traditional Indian software commonly offers beside Lahiri. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. Switching frames shifts every dasha boundary by weeks, so pick the one your reference software uses.
15126
16224
  */
15127
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
16225
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
15128
16226
  /**
15129
16227
  * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
15130
16228
  */
@@ -15296,7 +16394,7 @@ export type PostVedicAstrologyDashaSubByMahadashaByAntardashaResponses = {
15296
16394
  /**
15297
16395
  * Ayanamsa system used, echoing the request field. One of "lahiri", "kp-newcomb", "kp-old" or "custom". Echoed so a client can confirm which frame produced these dates without re-deriving it. When it reads "custom" the ayanamsa field above carries the exact value you supplied.
15298
16396
  */
15299
- ayanamsaType: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
16397
+ ayanamsaType: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
15300
16398
  /**
15301
16399
  * Full details of the parent Antardasha including start/end dates and duration.
15302
16400
  */
@@ -15519,9 +16617,9 @@ export type PostVedicAstrologyDashaSubByMahadashaByAntardashaByPratyantardashaDa
15519
16617
  */
15520
16618
  timezone?: number | string;
15521
16619
  /**
15522
- * Ayanamsa system used to place the birth Moon in its nakshatra, which sets every dasha start and end date. "lahiri" uses Lahiri/Chitrapaksha, the traditional Vedic standard, and is the default. "kp-newcomb" uses the KP-Newcomb dynamic formula, matching Krishnamurti Paddhati software. "kp-old" uses the Krishnamurti original table from KP Reader-1. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. Switching frames shifts every dasha boundary by weeks, so pick the one your reference software uses.
16620
+ * Ayanamsa system used to place the birth Moon in its nakshatra, which sets every dasha start and end date. "lahiri" uses Lahiri/Chitrapaksha, the traditional Vedic standard, and is the default. "kp-newcomb" uses the KP-Newcomb dynamic formula, matching Krishnamurti Paddhati software. "kp-old" uses the Krishnamurti original table from KP Reader-1. "raman" uses the B.V. Raman ayanamsa, the second frame traditional Indian software commonly offers beside Lahiri. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. Switching frames shifts every dasha boundary by weeks, so pick the one your reference software uses.
15523
16621
  */
15524
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
16622
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
15525
16623
  /**
15526
16624
  * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
15527
16625
  */
@@ -15701,7 +16799,7 @@ export type PostVedicAstrologyDashaSubByMahadashaByAntardashaByPratyantardashaRe
15701
16799
  /**
15702
16800
  * Ayanamsa system used, echoing the request field. One of "lahiri", "kp-newcomb", "kp-old" or "custom". Echoed so a client can confirm which frame produced these dates without re-deriving it. When it reads "custom" the ayanamsa field above carries the exact value you supplied.
15703
16801
  */
15704
- ayanamsaType: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
16802
+ ayanamsaType: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
15705
16803
  /**
15706
16804
  * Full details of the parent Pratyantardasha including start/end dates and duration.
15707
16805
  */
@@ -15932,9 +17030,9 @@ export type PostVedicAstrologyDashaSubByMahadashaByAntardashaByPratyantardashaBy
15932
17030
  */
15933
17031
  timezone?: number | string;
15934
17032
  /**
15935
- * Ayanamsa system used to place the birth Moon in its nakshatra, which sets every dasha start and end date. "lahiri" uses Lahiri/Chitrapaksha, the traditional Vedic standard, and is the default. "kp-newcomb" uses the KP-Newcomb dynamic formula, matching Krishnamurti Paddhati software. "kp-old" uses the Krishnamurti original table from KP Reader-1. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. Switching frames shifts every dasha boundary by weeks, so pick the one your reference software uses.
17033
+ * Ayanamsa system used to place the birth Moon in its nakshatra, which sets every dasha start and end date. "lahiri" uses Lahiri/Chitrapaksha, the traditional Vedic standard, and is the default. "kp-newcomb" uses the KP-Newcomb dynamic formula, matching Krishnamurti Paddhati software. "kp-old" uses the Krishnamurti original table from KP Reader-1. "raman" uses the B.V. Raman ayanamsa, the second frame traditional Indian software commonly offers beside Lahiri. "custom" takes your own value in degrees via ayanamsaValue, for reconciling exactly against a specific reference program. Switching frames shifts every dasha boundary by weeks, so pick the one your reference software uses.
15936
17034
  */
15937
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
17035
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
15938
17036
  /**
15939
17037
  * Custom ayanamsa value in degrees. When provided, overrides the computed ayanamsa from the selected type. Use for testing with specific ayanamsa values or matching a particular reference source.
15940
17038
  */
@@ -16122,7 +17220,7 @@ export type PostVedicAstrologyDashaSubByMahadashaByAntardashaByPratyantardashaBy
16122
17220
  /**
16123
17221
  * Ayanamsa system used, echoing the request field. One of "lahiri", "kp-newcomb", "kp-old" or "custom". Echoed so a client can confirm which frame produced these dates without re-deriving it. When it reads "custom" the ayanamsa field above carries the exact value you supplied.
16124
17222
  */
16125
- ayanamsaType: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'custom';
17223
+ ayanamsaType: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman' | 'custom';
16126
17224
  /**
16127
17225
  * Full details of the parent Sookshma dasha including start/end dates and duration.
16128
17226
  */
@@ -16753,30 +17851,34 @@ export type PostVedicAstrologyPanchangDetailedResponses = {
16753
17851
  */
16754
17852
  vara: {
16755
17853
  /**
16756
- * Hindu weekday name. Vara begins at local sunrise, not midnight.
17854
+ * Weekday name in English. Vara begins at local sunrise, not at midnight, so a time before sunrise belongs to the previous vara.
16757
17855
  */
16758
17856
  name: string;
17857
+ /**
17858
+ * Vara name transliterated from Sanskrit: Ravivara, Somavara, Mangalavara, Budhavara, Guruvara, Shukravara, Shanivara. Use this rather than name for a Jyotish-facing reading, since it is the form the classical texts use and it does not change with the lang parameter.
17859
+ */
17860
+ sanskritName: string;
16759
17861
  /**
16760
17862
  * Ruling planet of the day (Vara lord). Influences day-level auspiciousness.
16761
17863
  */
16762
17864
  lord: string;
16763
17865
  };
16764
17866
  /**
16765
- * Local sunrise time in UTC. Marks the start of the Hindu day.
17867
+ * Local sunrise in the requested timezone as YYYY-MM-DDTHH:MM:SS, with no zone suffix. Marks the start of the Hindu day.
16766
17868
  */
16767
17869
  sunrise: string;
16768
17870
  /**
16769
- * Local sunset time in UTC. Marks the transition to night muhurtas.
17871
+ * Local sunset in the requested timezone as YYYY-MM-DDTHH:MM:SS, with no zone suffix. Marks the transition to night muhurtas.
16770
17872
  */
16771
17873
  sunset: string;
16772
17874
  /**
16773
17875
  * Moonrise time in the requested timezone. Can be null if Moon does not rise on this date.
16774
17876
  */
16775
- moonrise: string;
17877
+ moonrise: string | null;
16776
17878
  /**
16777
17879
  * Moonset time in the requested timezone. Can be null if Moon does not set on this date.
16778
17880
  */
16779
- moonset: string;
17881
+ moonset: string | null;
16780
17882
  /**
16781
17883
  * Moon sign (Chandra Rashi) at sunrise. Central to Vedic astrology. determines daily emotional tone, Chandrabalam, and Tarabalam.
16782
17884
  */
@@ -16941,11 +18043,11 @@ export type PostVedicAstrologyPanchangDetailedResponses = {
16941
18043
  */
16942
18044
  number: number;
16943
18045
  /**
16944
- * Start time of the current hora in UTC.
18046
+ * Start time of the current hora, as local civil time in the requested timezone offset. The first hora of any day begins at local sunrise, so this equals the sunrise field when the hora number is 1.
16945
18047
  */
16946
18048
  start: string;
16947
18049
  /**
16948
- * End time of the current hora in UTC.
18050
+ * End time of the current hora, as local civil time in the requested timezone offset. Day horas and night horas have different lengths, so a hora is only approximately 60 minutes.
16949
18051
  */
16950
18052
  end: string;
16951
18053
  };
@@ -17000,7 +18102,7 @@ export type PostVedicAstrologyPanchangDetailedResponses = {
17000
18102
  * Period end time in ISO 8601 format. Timezone-adjusted based on the input timezone offset.
17001
18103
  */
17002
18104
  end: string;
17003
- };
18105
+ } | null;
17004
18106
  /**
17005
18107
  * Brahma Muhurta, sacred pre-dawn period approximately 96 minutes before sunrise (14th of 15 night muhurtas). Considered the best time for meditation, mantra japa, Vedic study, and spiritual sadhana. Referenced in Ashtanga Hridaya and Dharmashastra texts.
17006
18108
  */
@@ -17052,7 +18154,7 @@ export type PostVedicAstrologyPanchangDetailedResponses = {
17052
18154
  * Period end time in ISO 8601 format. Timezone-adjusted based on the input timezone offset.
17053
18155
  */
17054
18156
  end: string;
17055
- };
18157
+ } | null;
17056
18158
  /**
17057
18159
  * Pratah Sandhya, morning twilight junction period for Sandhyavandanam prayer. Spans 3 night ghatis before sunrise to sunrise. Duration varies by location and season based on ratrimana (night duration). One of the three daily Sandhya prayer times prescribed in Dharmashastra.
17058
18160
  */
@@ -17065,7 +18167,7 @@ export type PostVedicAstrologyPanchangDetailedResponses = {
17065
18167
  * Period end time in ISO 8601 format. Timezone-adjusted based on the input timezone offset.
17066
18168
  */
17067
18169
  end: string;
17068
- };
18170
+ } | null;
17069
18171
  /**
17070
18172
  * Sayahna Sandhya, evening twilight junction period for Sandhyavandanam prayer. Spans sunset to 3 night ghatis after sunset. Duration varies by location and season based on ratrimana (night duration). One of the three daily Sandhya prayer times prescribed in Dharmashastra.
17071
18173
  */
@@ -17078,7 +18180,7 @@ export type PostVedicAstrologyPanchangDetailedResponses = {
17078
18180
  * Period end time in ISO 8601 format. Timezone-adjusted based on the input timezone offset.
17079
18181
  */
17080
18182
  end: string;
17081
- };
18183
+ } | null;
17082
18184
  /**
17083
18185
  * Dur Muhurta (Dur Muhurtam), inauspicious muhurta periods determined by the weekday. The daytime is divided into 15 muhurtas from sunrise to sunset. Specific muhurta numbers are inauspicious each weekday per Muhurta Chintamani. Each period lasts ~48 minutes. Most days have 2 Dur Muhurtas, Wednesday and Sunday have 1. Avoid initiating important activities during these periods.
17084
18186
  */
@@ -17155,15 +18257,15 @@ export type PostVedicAstrologyPanchangDetailedResponses = {
17155
18257
  /**
17156
18258
  * Panchaka dosha, set by the weekday the period BEGINS (not the nakshatra): Roga (Sunday, disease), Raja (Monday, government), Agni (Tuesday, fire), Chora (Friday, theft), Mrityu (Saturday, death). Null when Panchaka begins on Wednesday or Thursday (no dosha) or when no Panchaka touches this date.
17157
18259
  */
17158
- type: string;
18260
+ type: string | null;
17159
18261
  /**
17160
18262
  * When the Panchaka period starts (Moon enters 300 degrees, Dhanishta 3rd pada). May predate this date when Panchaka is already running. Null when no Panchaka is in force or begins on this date. In requested timezone.
17161
18263
  */
17162
- startsAt: string;
18264
+ startsAt: string | null;
17163
18265
  /**
17164
18266
  * When the Panchaka period ends (Moon exits Revati at 360 degrees), about five days after it starts. Null when no Panchaka. In requested timezone.
17165
18267
  */
17166
- endsAt: string;
18268
+ endsAt: string | null;
17167
18269
  };
17168
18270
  /**
17169
18271
  * Bhadra (Vishti Karana), the 7th movable karana, avoided for all auspicious activities. Bhadra recurs roughly every 3 to 5 days and lasts about half a tithi. active is true whenever a Bhadra is attributed to this date; startsAt and endsAt give the window, which may end on the next calendar day.
@@ -17176,11 +18278,11 @@ export type PostVedicAstrologyPanchangDetailedResponses = {
17176
18278
  /**
17177
18279
  * When the Bhadra (Vishti) period that begins on this date starts. Null when no Bhadra begins on this date. In requested timezone.
17178
18280
  */
17179
- startsAt: string;
18281
+ startsAt: string | null;
17180
18282
  /**
17181
18283
  * When the Bhadra (Vishti) period that begins on this date ends. May fall on the next calendar day. Null when no Bhadra begins on this date. In requested timezone.
17182
18284
  */
17183
- endsAt: string;
18285
+ endsAt: string | null;
17184
18286
  };
17185
18287
  /**
17186
18288
  * Panchang element transition times. exact timing of when each element (tithi, yoga, karana, nakshatra, Moon sign) changes. Calculated using binary search for ~1 minute precision. Essential for precise muhurta determination and panchang calendars.
@@ -17387,90 +18489,260 @@ export type PostVedicAstrologyPanchangChoghadiyaErrors = {
17387
18489
  code: string;
17388
18490
  };
17389
18491
  };
17390
- export type PostVedicAstrologyPanchangChoghadiyaError = PostVedicAstrologyPanchangChoghadiyaErrors[keyof PostVedicAstrologyPanchangChoghadiyaErrors];
17391
- export type PostVedicAstrologyPanchangChoghadiyaResponses = {
18492
+ export type PostVedicAstrologyPanchangChoghadiyaError = PostVedicAstrologyPanchangChoghadiyaErrors[keyof PostVedicAstrologyPanchangChoghadiyaErrors];
18493
+ export type PostVedicAstrologyPanchangChoghadiyaResponses = {
18494
+ /**
18495
+ * 8 daytime and 8 nighttime Choghadiya muhurta periods with names, ruling planets, auspiciousness ratings (Good/Bad), and exact start/end times based on sunrise and sunset.
18496
+ */
18497
+ 200: {
18498
+ /**
18499
+ * Calendar date the choghadiya muhurta table was computed for, YYYY-MM-DD, echoed back from the request. The day periods run from that date sunrise to its sunset, and the night periods run on to the next sunrise.
18500
+ */
18501
+ date: string;
18502
+ /**
18503
+ * 8 daytime choghadiya periods (sunrise to sunset)
18504
+ */
18505
+ dayChoghadiya: Array<{
18506
+ /**
18507
+ * Choghadiya muhurta name. Auspicious: Amrit (Moon), Shubh (Jupiter), Labh (Mercury), Char (Venus). Inauspicious: Udveg (Sun), Rog (Mars), Kaal (Saturn).
18508
+ */
18509
+ name: 'Udveg' | 'Amrit' | 'Rog' | 'Labh' | 'Shubh' | 'Char' | 'Kaal';
18510
+ /**
18511
+ * Ruling planet of this Choghadiya period. Planet determines the quality and suitability of activities during this muhurta.
18512
+ */
18513
+ lord: string;
18514
+ /**
18515
+ * Auspiciousness of this period. Good periods (Amrit, Shubh, Labh, Char) are suitable for important activities. Bad periods (Udveg, Rog, Kaal) should be avoided.
18516
+ */
18517
+ effect: 'Good' | 'Bad';
18518
+ /**
18519
+ * Period start time in ISO 8601 format. Timezone-adjusted based on input timezone offset.
18520
+ */
18521
+ start: string;
18522
+ /**
18523
+ * Period end time in ISO 8601 format. Each Choghadiya period is one-eighth of the day or night duration.
18524
+ */
18525
+ end: string;
18526
+ }>;
18527
+ /**
18528
+ * 8 nighttime choghadiya periods (sunset to next sunrise)
18529
+ */
18530
+ nightChoghadiya: Array<{
18531
+ /**
18532
+ * Choghadiya muhurta name. Auspicious: Amrit (Moon), Shubh (Jupiter), Labh (Mercury), Char (Venus). Inauspicious: Udveg (Sun), Rog (Mars), Kaal (Saturn).
18533
+ */
18534
+ name: 'Udveg' | 'Amrit' | 'Rog' | 'Labh' | 'Shubh' | 'Char' | 'Kaal';
18535
+ /**
18536
+ * Ruling planet of this Choghadiya period. Planet determines the quality and suitability of activities during this muhurta.
18537
+ */
18538
+ lord: string;
18539
+ /**
18540
+ * Auspiciousness of this period. Good periods (Amrit, Shubh, Labh, Char) are suitable for important activities. Bad periods (Udveg, Rog, Kaal) should be avoided.
18541
+ */
18542
+ effect: 'Good' | 'Bad';
18543
+ /**
18544
+ * Period start time in ISO 8601 format. Timezone-adjusted based on input timezone offset.
18545
+ */
18546
+ start: string;
18547
+ /**
18548
+ * Period end time in ISO 8601 format. Each Choghadiya period is one-eighth of the day or night duration.
18549
+ */
18550
+ end: string;
18551
+ }>;
18552
+ };
18553
+ };
18554
+ export type PostVedicAstrologyPanchangChoghadiyaResponse = PostVedicAstrologyPanchangChoghadiyaResponses[keyof PostVedicAstrologyPanchangChoghadiyaResponses];
18555
+ export type PostVedicAstrologyPanchangHoraData = {
18556
+ body?: {
18557
+ /**
18558
+ * Date in YYYY-MM-DD format. A single-digit month or day is accepted and zero-padded (2026-3-5 becomes 2026-03-05). Impossible calendar dates are rejected.
18559
+ */
18560
+ date: string;
18561
+ /**
18562
+ * Observer latitude in decimal degrees. Determines sunrise and sunset times which define day/night boundaries for muhurta calculations.
18563
+ */
18564
+ latitude: number;
18565
+ /**
18566
+ * Observer longitude in decimal degrees. Affects local time calculations for sunrise, sunset, and muhurta period boundaries.
18567
+ */
18568
+ longitude: number;
18569
+ /**
18570
+ * Timezone offset from UTC in decimal hours. Used for accurate sunrise/sunset calculation and output time formatting. Essential for correct Hora periods outside IST. Defaults to 5.5 (IST).
18571
+ */
18572
+ timezone?: number | string;
18573
+ };
18574
+ path?: never;
18575
+ query?: never;
18576
+ url: '/vedic-astrology/panchang/hora';
18577
+ };
18578
+ export type PostVedicAstrologyPanchangHoraErrors = {
18579
+ /**
18580
+ * Validation error. `issues[]` lists every failed field.
18581
+ */
18582
+ 400: {
18583
+ /**
18584
+ * First issue summary.
18585
+ */
18586
+ error: string;
18587
+ code: 'validation_error';
18588
+ /**
18589
+ * Every validation failure. Use this to rebuild a valid request.
18590
+ */
18591
+ issues: Array<{
18592
+ /**
18593
+ * Dot-separated field path, or "(root)" for top-level.
18594
+ */
18595
+ path: string;
18596
+ message: string;
18597
+ /**
18598
+ * Zod issue code (invalid_type, too_small, too_big, invalid_string, ...).
18599
+ */
18600
+ code?: string;
18601
+ /**
18602
+ * Expected type for invalid_type.
18603
+ */
18604
+ expected?: string;
18605
+ /**
18606
+ * Minimum bound for too_small issues.
18607
+ */
18608
+ minimum?: number | string;
18609
+ /**
18610
+ * Maximum bound for too_big issues.
18611
+ */
18612
+ maximum?: number | string;
18613
+ inclusive?: boolean;
18614
+ /**
18615
+ * Format name for string issues (regex, email, url, uuid).
18616
+ */
18617
+ format?: string;
18618
+ /**
18619
+ * Regex pattern when format is regex.
18620
+ */
18621
+ pattern?: string;
18622
+ }>;
18623
+ };
18624
+ /**
18625
+ * Invalid or missing API key
18626
+ */
18627
+ 401: {
18628
+ /**
18629
+ * Human-readable error message. May change wording.
18630
+ */
18631
+ error: string;
18632
+ /**
18633
+ * Machine-readable error code. Stable identifier.
18634
+ */
18635
+ code: string;
18636
+ };
18637
+ /**
18638
+ * Method not allowed. The path exists but only responds to the methods listed in `allow[]` and the `Allow` response header.
18639
+ */
18640
+ 405: {
18641
+ error: string;
18642
+ code: 'method_not_allowed';
18643
+ /**
18644
+ * Allowed HTTP methods for this path. Mirrors the Allow response header.
18645
+ */
18646
+ allow: Array<string>;
18647
+ /**
18648
+ * Link to the product page for this domain.
18649
+ */
18650
+ docs?: string;
18651
+ };
18652
+ /**
18653
+ * Monthly rate limit exceeded
18654
+ */
18655
+ 429: {
18656
+ /**
18657
+ * Human-readable error message. May change wording.
18658
+ */
18659
+ error: string;
18660
+ /**
18661
+ * Machine-readable error code. Stable identifier.
18662
+ */
18663
+ code: string;
18664
+ };
18665
+ /**
18666
+ * Internal server error
18667
+ */
18668
+ 500: {
18669
+ /**
18670
+ * Human-readable error message. May change wording.
18671
+ */
18672
+ error: string;
18673
+ /**
18674
+ * Machine-readable error code. Stable identifier.
18675
+ */
18676
+ code: string;
18677
+ };
18678
+ };
18679
+ export type PostVedicAstrologyPanchangHoraError = PostVedicAstrologyPanchangHoraErrors[keyof PostVedicAstrologyPanchangHoraErrors];
18680
+ export type PostVedicAstrologyPanchangHoraResponses = {
17392
18681
  /**
17393
- * 8 daytime and 8 nighttime Choghadiya muhurta periods with names, ruling planets, auspiciousness ratings (Good/Bad), and exact start/end times based on sunrise and sunset.
18682
+ * 12 daytime and 12 nighttime Hora (planetary hour) periods with ruling planet, sequence number, and exact start/end times based on sunrise and sunset.
17394
18683
  */
17395
18684
  200: {
18685
+ /**
18686
+ * Date for which hora periods were calculated.
18687
+ */
17396
18688
  date: string;
17397
18689
  /**
17398
- * 8 daytime choghadiya periods (sunrise to sunset)
18690
+ * 12 daytime hora periods from sunrise to sunset. Duration varies by season.
17399
18691
  */
17400
- dayChoghadiya: Array<{
17401
- /**
17402
- * Choghadiya muhurta name. Auspicious: Amrit (Moon), Shubh (Jupiter), Labh (Mercury), Char (Venus). Inauspicious: Udveg (Sun), Rog (Mars), Kaal (Saturn).
17403
- */
17404
- name: 'Udveg' | 'Amrit' | 'Rog' | 'Labh' | 'Shubh' | 'Char' | 'Kaal';
18692
+ dayHoras: Array<{
17405
18693
  /**
17406
- * Ruling planet of this Choghadiya period. Planet determines the quality and suitability of activities during this muhurta.
18694
+ * Ruling planet of this hora period. Follows the Chaldean planetary order: Sun, Venus, Mercury, Moon, Saturn, Jupiter, Mars.
17407
18695
  */
17408
- lord: string;
18696
+ planet: string;
17409
18697
  /**
17410
- * Auspiciousness of this period. Good periods (Amrit, Shubh, Labh, Char) are suitable for important activities. Bad periods (Udveg, Rog, Kaal) should be avoided.
18698
+ * Hora period number within the day or night segment (1-12).
17411
18699
  */
17412
- effect: 'Good' | 'Bad';
18700
+ number: number;
17413
18701
  /**
17414
- * Period start time in ISO 8601 format. Timezone-adjusted based on input timezone offset.
18702
+ * Start time of the hora period in ISO 8601 format.
17415
18703
  */
17416
18704
  start: string;
17417
18705
  /**
17418
- * Period end time in ISO 8601 format. Each Choghadiya period is one-eighth of the day or night duration.
18706
+ * End time of the hora period in ISO 8601 format.
17419
18707
  */
17420
18708
  end: string;
17421
18709
  }>;
17422
18710
  /**
17423
- * 8 nighttime choghadiya periods (sunset to next sunrise)
18711
+ * 12 nighttime hora periods from sunset to next sunrise. Duration varies by season.
17424
18712
  */
17425
- nightChoghadiya: Array<{
17426
- /**
17427
- * Choghadiya muhurta name. Auspicious: Amrit (Moon), Shubh (Jupiter), Labh (Mercury), Char (Venus). Inauspicious: Udveg (Sun), Rog (Mars), Kaal (Saturn).
17428
- */
17429
- name: 'Udveg' | 'Amrit' | 'Rog' | 'Labh' | 'Shubh' | 'Char' | 'Kaal';
18713
+ nightHoras: Array<{
17430
18714
  /**
17431
- * Ruling planet of this Choghadiya period. Planet determines the quality and suitability of activities during this muhurta.
18715
+ * Ruling planet of this hora period. Follows the Chaldean planetary order: Sun, Venus, Mercury, Moon, Saturn, Jupiter, Mars.
17432
18716
  */
17433
- lord: string;
18717
+ planet: string;
17434
18718
  /**
17435
- * Auspiciousness of this period. Good periods (Amrit, Shubh, Labh, Char) are suitable for important activities. Bad periods (Udveg, Rog, Kaal) should be avoided.
18719
+ * Hora period number within the day or night segment (1-12).
17436
18720
  */
17437
- effect: 'Good' | 'Bad';
18721
+ number: number;
17438
18722
  /**
17439
- * Period start time in ISO 8601 format. Timezone-adjusted based on input timezone offset.
18723
+ * Start time of the hora period in ISO 8601 format.
17440
18724
  */
17441
18725
  start: string;
17442
18726
  /**
17443
- * Period end time in ISO 8601 format. Each Choghadiya period is one-eighth of the day or night duration.
18727
+ * End time of the hora period in ISO 8601 format.
17444
18728
  */
17445
18729
  end: string;
17446
18730
  }>;
17447
18731
  };
17448
18732
  };
17449
- export type PostVedicAstrologyPanchangChoghadiyaResponse = PostVedicAstrologyPanchangChoghadiyaResponses[keyof PostVedicAstrologyPanchangChoghadiyaResponses];
17450
- export type PostVedicAstrologyPanchangHoraData = {
17451
- body?: {
17452
- /**
17453
- * Date in YYYY-MM-DD format. A single-digit month or day is accepted and zero-padded (2026-3-5 becomes 2026-03-05). Impossible calendar dates are rejected.
17454
- */
17455
- date: string;
17456
- /**
17457
- * Observer latitude in decimal degrees. Determines sunrise and sunset times which define day/night boundaries for muhurta calculations.
17458
- */
17459
- latitude: number;
17460
- /**
17461
- * Observer longitude in decimal degrees. Affects local time calculations for sunrise, sunset, and muhurta period boundaries.
17462
- */
17463
- longitude: number;
18733
+ export type PostVedicAstrologyPanchangHoraResponse = PostVedicAstrologyPanchangHoraResponses[keyof PostVedicAstrologyPanchangHoraResponses];
18734
+ export type PostVedicAstrologyDoshaManglikData = {
18735
+ body?: ManglikRequest;
18736
+ path?: never;
18737
+ query?: {
17464
18738
  /**
17465
- * Timezone offset from UTC in decimal hours. Used for accurate sunrise/sunset calculation and output time formatting. Essential for correct Hora periods outside IST. Defaults to 5.5 (IST).
18739
+ * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
17466
18740
  */
17467
- timezone?: number | string;
18741
+ lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
17468
18742
  };
17469
- path?: never;
17470
- query?: never;
17471
- url: '/vedic-astrology/panchang/hora';
18743
+ url: '/vedic-astrology/dosha/manglik';
17472
18744
  };
17473
- export type PostVedicAstrologyPanchangHoraErrors = {
18745
+ export type PostVedicAstrologyDoshaManglikErrors = {
17474
18746
  /**
17475
18747
  * Validation error. `issues[]` lists every failed field.
17476
18748
  */
@@ -17571,68 +18843,26 @@ export type PostVedicAstrologyPanchangHoraErrors = {
17571
18843
  code: string;
17572
18844
  };
17573
18845
  };
17574
- export type PostVedicAstrologyPanchangHoraError = PostVedicAstrologyPanchangHoraErrors[keyof PostVedicAstrologyPanchangHoraErrors];
17575
- export type PostVedicAstrologyPanchangHoraResponses = {
18846
+ export type PostVedicAstrologyDoshaManglikError = PostVedicAstrologyDoshaManglikErrors[keyof PostVedicAstrologyDoshaManglikErrors];
18847
+ export type PostVedicAstrologyDoshaManglikResponses = {
17576
18848
  /**
17577
- * 12 daytime and 12 nighttime Hora (planetary hour) periods with ruling planet, sequence number, and exact start/end times based on sunrise and sunset.
18849
+ * Manglik dosha detection result with severity, Mars house placement, cancellation exceptions, traditional remedies, and effects on marriage and personality.
17578
18850
  */
17579
- 200: {
17580
- /**
17581
- * Date for which hora periods were calculated.
17582
- */
17583
- date: string;
17584
- /**
17585
- * 12 daytime hora periods from sunrise to sunset. Duration varies by season.
17586
- */
17587
- dayHoras: Array<{
17588
- /**
17589
- * Ruling planet of this hora period. Follows the Chaldean planetary order: Sun, Venus, Mercury, Moon, Saturn, Jupiter, Mars.
17590
- */
17591
- planet: string;
17592
- /**
17593
- * Hora period number within the day or night segment (1-12).
17594
- */
17595
- number: number;
17596
- /**
17597
- * Start time of the hora period in ISO 8601 format.
17598
- */
17599
- start: string;
17600
- /**
17601
- * End time of the hora period in ISO 8601 format.
17602
- */
17603
- end: string;
17604
- }>;
18851
+ 200: ManglikResponse;
18852
+ };
18853
+ export type PostVedicAstrologyDoshaManglikResponse = PostVedicAstrologyDoshaManglikResponses[keyof PostVedicAstrologyDoshaManglikResponses];
18854
+ export type PostVedicAstrologyDoshaKalsarpaData = {
18855
+ body?: KalsarpaRequest;
18856
+ path?: never;
18857
+ query?: {
17605
18858
  /**
17606
- * 12 nighttime hora periods from sunset to next sunrise. Duration varies by season.
18859
+ * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
17607
18860
  */
17608
- nightHoras: Array<{
17609
- /**
17610
- * Ruling planet of this hora period. Follows the Chaldean planetary order: Sun, Venus, Mercury, Moon, Saturn, Jupiter, Mars.
17611
- */
17612
- planet: string;
17613
- /**
17614
- * Hora period number within the day or night segment (1-12).
17615
- */
17616
- number: number;
17617
- /**
17618
- * Start time of the hora period in ISO 8601 format.
17619
- */
17620
- start: string;
17621
- /**
17622
- * End time of the hora period in ISO 8601 format.
17623
- */
17624
- end: string;
17625
- }>;
18861
+ lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
17626
18862
  };
18863
+ url: '/vedic-astrology/dosha/kalsarpa';
17627
18864
  };
17628
- export type PostVedicAstrologyPanchangHoraResponse = PostVedicAstrologyPanchangHoraResponses[keyof PostVedicAstrologyPanchangHoraResponses];
17629
- export type PostVedicAstrologyDoshaManglikData = {
17630
- body?: ManglikRequest;
17631
- path?: never;
17632
- query?: never;
17633
- url: '/vedic-astrology/dosha/manglik';
17634
- };
17635
- export type PostVedicAstrologyDoshaManglikErrors = {
18865
+ export type PostVedicAstrologyDoshaKalsarpaErrors = {
17636
18866
  /**
17637
18867
  * Validation error. `issues[]` lists every failed field.
17638
18868
  */
@@ -17733,21 +18963,26 @@ export type PostVedicAstrologyDoshaManglikErrors = {
17733
18963
  code: string;
17734
18964
  };
17735
18965
  };
17736
- export type PostVedicAstrologyDoshaManglikError = PostVedicAstrologyDoshaManglikErrors[keyof PostVedicAstrologyDoshaManglikErrors];
17737
- export type PostVedicAstrologyDoshaManglikResponses = {
18966
+ export type PostVedicAstrologyDoshaKalsarpaError = PostVedicAstrologyDoshaKalsarpaErrors[keyof PostVedicAstrologyDoshaKalsarpaErrors];
18967
+ export type PostVedicAstrologyDoshaKalsarpaResponses = {
17738
18968
  /**
17739
- * Manglik dosha detection result with severity, Mars house placement, cancellation exceptions, traditional remedies, and effects on marriage and personality.
18969
+ * Kalsarpa dosha detection result with type identification (1 of 12 types), severity, Rahu-Ketu axis details, traditional remedies, and effects on career, health, and relationships.
17740
18970
  */
17741
- 200: ManglikResponse;
18971
+ 200: KalsarpaResponse;
17742
18972
  };
17743
- export type PostVedicAstrologyDoshaManglikResponse = PostVedicAstrologyDoshaManglikResponses[keyof PostVedicAstrologyDoshaManglikResponses];
17744
- export type PostVedicAstrologyDoshaKalsarpaData = {
17745
- body?: KalsarpaRequest;
18973
+ export type PostVedicAstrologyDoshaKalsarpaResponse = PostVedicAstrologyDoshaKalsarpaResponses[keyof PostVedicAstrologyDoshaKalsarpaResponses];
18974
+ export type PostVedicAstrologyDoshaSadhesatiData = {
18975
+ body?: SadhesatiRequest;
17746
18976
  path?: never;
17747
- query?: never;
17748
- url: '/vedic-astrology/dosha/kalsarpa';
18977
+ query?: {
18978
+ /**
18979
+ * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
18980
+ */
18981
+ lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
18982
+ };
18983
+ url: '/vedic-astrology/dosha/sadhesati';
17749
18984
  };
17750
- export type PostVedicAstrologyDoshaKalsarpaErrors = {
18985
+ export type PostVedicAstrologyDoshaSadhesatiErrors = {
17751
18986
  /**
17752
18987
  * Validation error. `issues[]` lists every failed field.
17753
18988
  */
@@ -17848,21 +19083,30 @@ export type PostVedicAstrologyDoshaKalsarpaErrors = {
17848
19083
  code: string;
17849
19084
  };
17850
19085
  };
17851
- export type PostVedicAstrologyDoshaKalsarpaError = PostVedicAstrologyDoshaKalsarpaErrors[keyof PostVedicAstrologyDoshaKalsarpaErrors];
17852
- export type PostVedicAstrologyDoshaKalsarpaResponses = {
19086
+ export type PostVedicAstrologyDoshaSadhesatiError = PostVedicAstrologyDoshaSadhesatiErrors[keyof PostVedicAstrologyDoshaSadhesatiErrors];
19087
+ export type PostVedicAstrologyDoshaSadhesatiResponses = {
17853
19088
  /**
17854
- * Kalsarpa dosha detection result with type identification (1 of 12 types), severity, Rahu-Ketu axis details, traditional remedies, and effects on career, health, and relationships.
19089
+ * Sade Sati detection result with current phase (Rising/Peak/Setting), Saturn transit position relative to natal Moon, severity, traditional Shani remedies, and phase-specific effects.
17855
19090
  */
17856
- 200: KalsarpaResponse;
19091
+ 200: SadhesatiResponse;
17857
19092
  };
17858
- export type PostVedicAstrologyDoshaKalsarpaResponse = PostVedicAstrologyDoshaKalsarpaResponses[keyof PostVedicAstrologyDoshaKalsarpaResponses];
17859
- export type PostVedicAstrologyDoshaSadhesatiData = {
17860
- body?: SadhesatiRequest;
19093
+ export type PostVedicAstrologyDoshaSadhesatiResponse = PostVedicAstrologyDoshaSadhesatiResponses[keyof PostVedicAstrologyDoshaSadhesatiResponses];
19094
+ export type GetVedicAstrologyYogaData = {
19095
+ body?: never;
17861
19096
  path?: never;
17862
- query?: never;
17863
- url: '/vedic-astrology/dosha/sadhesati';
19097
+ query?: {
19098
+ /**
19099
+ * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
19100
+ */
19101
+ lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
19102
+ /**
19103
+ * Filter the catalog to one Nabhasa family: asraya (3), dala (2), akriti (20) or sankhya (7). Omit for the full catalog. `classical` is accepted but matches nothing here, because it is a detection-verdict value for single-combination yogas rather than a catalog grouping.
19104
+ */
19105
+ family?: 'classical' | 'asraya' | 'dala' | 'akriti' | 'sankhya';
19106
+ };
19107
+ url: '/vedic-astrology/yoga';
17864
19108
  };
17865
- export type PostVedicAstrologyDoshaSadhesatiErrors = {
19109
+ export type GetVedicAstrologyYogaErrors = {
17866
19110
  /**
17867
19111
  * Validation error. `issues[]` lists every failed field.
17868
19112
  */
@@ -17963,30 +19207,53 @@ export type PostVedicAstrologyDoshaSadhesatiErrors = {
17963
19207
  code: string;
17964
19208
  };
17965
19209
  };
17966
- export type PostVedicAstrologyDoshaSadhesatiError = PostVedicAstrologyDoshaSadhesatiErrors[keyof PostVedicAstrologyDoshaSadhesatiErrors];
17967
- export type PostVedicAstrologyDoshaSadhesatiResponses = {
19210
+ export type GetVedicAstrologyYogaError = GetVedicAstrologyYogaErrors[keyof GetVedicAstrologyYogaErrors];
19211
+ export type GetVedicAstrologyYogaResponses = {
17968
19212
  /**
17969
- * Sade Sati detection result with current phase (Rising/Peak/Setting), Saturn transit position relative to natal Moon, severity, traditional Shani remedies, and phase-specific effects.
19213
+ * List of all yogas (basic info)
17970
19214
  */
17971
- 200: SadhesatiResponse;
19215
+ 200: {
19216
+ /**
19217
+ * Array of planetary yogas with basic identifiers, narrowed by `family` when that filter is supplied. Use GET /yoga/{id} for formation rules, effects, and quality classification.
19218
+ */
19219
+ yogas: Array<{
19220
+ /**
19221
+ * Unique yoga identifier in lowercase kebab-case. Use this to fetch full details via GET /yoga/{id}.
19222
+ */
19223
+ id: string;
19224
+ /**
19225
+ * Traditional Sanskrit name of the planetary yoga combination.
19226
+ */
19227
+ name: string;
19228
+ /**
19229
+ * Nabhasa family, present only on the 32 Nabhasa distribution yogas and absent on every other catalog row. Never translated, so it groups identically under any lang.
19230
+ */
19231
+ family?: 'classical' | 'asraya' | 'dala' | 'akriti' | 'sankhya';
19232
+ }>;
19233
+ /**
19234
+ * Number of yogas in this response, which is the filtered count when `family` is supplied and the full catalog size otherwise. Includes Raj Yogas, Dhan Yogas, Pancha Mahapurusha Yogas, Nabhasa Yogas, and more.
19235
+ */
19236
+ total: number;
19237
+ };
17972
19238
  };
17973
- export type PostVedicAstrologyDoshaSadhesatiResponse = PostVedicAstrologyDoshaSadhesatiResponses[keyof PostVedicAstrologyDoshaSadhesatiResponses];
17974
- export type GetVedicAstrologyYogaData = {
19239
+ export type GetVedicAstrologyYogaResponse = GetVedicAstrologyYogaResponses[keyof GetVedicAstrologyYogaResponses];
19240
+ export type GetVedicAstrologyYogaByIdData = {
17975
19241
  body?: never;
17976
- path?: never;
19242
+ path: {
19243
+ /**
19244
+ * Yoga identifier (lowercase, hyphenated)
19245
+ */
19246
+ id: 'gajakesari' | 'sunapha' | 'anapha' | 'dhurdhura' | 'kemadruma' | 'chandramangala' | 'adhi' | 'chatussagara' | 'vasumathi' | 'rajalakshana' | 'vanchanachorabheethi' | 'sakata' | 'amala' | 'parvata' | 'kahala' | 'vesi' | 'vasi' | 'obhayachari' | 'hamsa' | 'malavya' | 'sasa' | 'ruchaka' | 'bhadra' | 'budhaaditya' | 'mahabhagya' | 'pushkala' | 'lakshmi' | 'gauri' | 'bharathi' | 'chapa' | 'sreenatha' | 'lagnamalika' | 'dhanamalika' | 'vikramamalika' | 'sukhamalika' | 'putramalika' | 'satrumalika' | 'kalatramalika' | 'randhramalika' | 'bhagyamalika' | 'karmamalika' | 'labhamalika' | 'vrayamalika' | 'sankha' | 'bheri' | 'mridanga' | 'parijatha' | 'gaja' | 'kalanidhi' | 'amsavatara' | 'hariharabrahma' | 'kusuma' | 'matsya' | 'kurma' | 'devendra' | 'makuta' | 'chandika' | 'jaya' | 'vidyut' | 'gandharva' | 'siva' | 'vishnu' | 'brahma' | 'indra' | 'ravi' | 'garuda' | 'go' | 'gola' | 'thrilochana' | 'kulavardhana' | 'yupa' | 'ishu' | 'sakti' | 'danda' | 'nav' | 'kuta' | 'chhatra' | 'chapa-2' | 'ardhachandra' | 'chandra' | 'gada' | 'sakata-2' | 'vihaga' | 'vajra' | 'yava' | 'sringhataka' | 'hala' | 'kamala' | 'vapee' | 'samudra' | 'vallaki' | 'damni' | 'pasa' | 'kedara' | 'sula' | 'yuga' | 'gola-2' | 'rajju' | 'musala' | 'nala' | 'srik' | 'mala' | 'sarpa' | 'duryoga' | 'daridra' | 'harsha' | 'sarala' | 'vimala' | 'sareerasoukhya' | 'dehapushti' | 'dehakashta' | 'rogagrastha' | 'krisanga' | 'krisanga-2' | 'dehasthoulya' | 'dehasthoulya-2' | 'dehasthoulya-3' | 'sadasanchara' | 'dhana' | 'dhana-2' | 'dhana-3' | 'dhana-4' | 'dhana-5' | 'dhana-6' | 'dhana-7' | 'dhana-8' | 'dhana-9' | 'dhana-10' | 'dhana-11' | 'bahudravyarjana' | 'swaveeryaddhana' | 'swaveeryaddhana-2' | 'swaveeryaddhana-3' | 'madhyavayasidhana' | 'anthyavayasidhana' | 'balyadhana' | 'bhratrumooladdhanaprapti' | 'bhratrumooladdhanaprapti-2' | 'matrumooladdhana' | 'putramooladdhana' | 'satrumooladdhana' | 'kalatramooladdhana' | 'amarananthadhana' | 'ayatnadhanalabha' | 'daridra-2' | 'daridra-3' | 'daridra-4' | 'daridra-5' | 'daridra-6' | 'daridra-7' | 'daridra-8' | 'daridra-9' | 'daridra-10' | 'daridra-11' | 'yukthisamanwithavagmi' | 'yukthisamanwithavagmi-2' | 'parihasaka' | 'asatyavadi' | 'jada' | 'bhaskara' | 'marud' | 'saraswathi' | 'budha' | 'mooka' | 'netranasa' | 'andha' | 'sumukha' | 'sumukha-2' | 'durmukha' | 'durmukha-2' | 'bhojanasoukhya' | 'annadana' | 'parannabhojana' | 'sraddhannabhuktha' | 'sarpaganda' | 'vakchalana' | 'vishaprayoga' | 'bhratruvriddhi' | 'sodaranasa' | 'ekabhagini' | 'dwadasasahodara' | 'sapthasankhyasahodara' | 'parakrama' | 'yuddhapraveena' | 'yuddhatpoorvadridhachitta' | 'yuddhatpaschaddrudha' | 'satkathadisravana' | 'uttamagriha' | 'vichitrasaudhaprakara' | 'ayatnagrihaprapta' | 'ayatnagrihaprapta-2' | 'grihanasa' | 'grihanasa-2' | 'bandhupujya' | 'bandhupujya-2' | 'bandhubhisthyaktha' | 'matrudeerghayur' | 'matrudeerghayur-2' | 'matrunasa' | 'matrunasa-2' | 'matrugami' | 'sahodareesangama' | 'kapata' | 'kapata-2' | 'kapata-3' | 'nishkapata' | 'nishkapata-2' | 'matrusatrutwa' | 'matrusneha' | 'vahana' | 'vahana-2' | 'anapathya' | 'sarpasapa' | 'sarpasapa-2' | 'sarpasapa-3' | 'sarpasapa-4' | 'pitrusapasutakshaya' | 'matrusapasutakshaya' | 'bhratrusapasutakshaya' | 'pretasapa' | 'bahuputra' | 'bahuputra-2' | 'dattaputra' | 'dattaputra-2' | 'aputra' | 'ekaputra' | 'suputra' | 'kalanirdesatputra' | 'kalanirdesatputra-2' | 'kalanirdesatputranasa' | 'kalanirdesatputranasa-2' | 'buddhimaturya' | 'theevrabuddhi' | 'buddhijada' | 'thrikalagnana' | 'putrasukha' | 'jara' | 'jarajaputra' | 'bahustree' | 'satkalatra' | 'bhagachumbana' | 'bhagya' | 'jananatpurvampitrumarana' | 'dhatrutwa' | 'apakeerti' | 'raja' | 'raja-2' | 'raja-3' | 'raja-4' | 'raja-5' | 'raja-6' | 'raja-7' | 'raja-8' | 'raja-9' | 'raja-10' | 'raja-11' | 'raja-12' | 'raja-13' | 'raja-14' | 'raja-15' | 'raja-16' | 'raja-17' | 'raja-18' | 'raja-19' | 'galakarna' | 'vrana' | 'sisnavyadhi' | 'kalatrashanda' | 'kushtaroga' | 'kushtaroga-2' | 'kshayaroga' | 'bandhana' | 'karascheda' | 'sirachcheda' | 'durmarana' | 'yuddhemarana' | 'sanghatakamarana' | 'sanghatakamarana-2' | 'peenasaroga' | 'pittaroga' | 'vikalangapatni' | 'putrakalatraheena' | 'bharyasahavyabhichara' | 'vamsacheda' | 'guhyaroga' | 'angaheena' | 'swetakushta' | 'pisachagrastha' | 'andha-2' | 'andha-3' | 'vatharoga' | 'matibhramana' | 'matibhramana-2' | 'matibhramana-3' | 'matibhramana-4' | 'khalwata' | 'nishturabhashi' | 'rajabhrashta' | 'raja-20' | 'raja-21' | 'gohanta';
19247
+ };
17977
19248
  query?: {
17978
19249
  /**
17979
19250
  * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
17980
19251
  */
17981
19252
  lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
17982
- /**
17983
- * Filter the catalog to one Nabhasa family: asraya (3), dala (2), akriti (20) or sankhya (7). Omit for the full catalog. `classical` is accepted but matches nothing here, because it is a detection-verdict value for single-combination yogas rather than a catalog grouping.
17984
- */
17985
- family?: 'classical' | 'asraya' | 'dala' | 'akriti' | 'sankhya';
17986
19253
  };
17987
- url: '/vedic-astrology/yoga';
19254
+ url: '/vedic-astrology/yoga/{id}';
17988
19255
  };
17989
- export type GetVedicAstrologyYogaErrors = {
19256
+ export type GetVedicAstrologyYogaByIdErrors = {
17990
19257
  /**
17991
19258
  * Validation error. `issues[]` lists every failed field.
17992
19259
  */
@@ -18045,6 +19312,19 @@ export type GetVedicAstrologyYogaErrors = {
18045
19312
  */
18046
19313
  code: string;
18047
19314
  };
19315
+ /**
19316
+ * Yoga not found
19317
+ */
19318
+ 404: {
19319
+ /**
19320
+ * Human-readable error message. May change wording — do not parse programmatically.
19321
+ */
19322
+ error: string;
19323
+ /**
19324
+ * Machine-readable error code. Stable identifier for programmatic error handling.
19325
+ */
19326
+ code: string;
19327
+ };
18048
19328
  /**
18049
19329
  * Method not allowed. The path exists but only responds to the methods listed in `allow[]` and the `Allow` response header.
18050
19330
  */
@@ -18087,53 +19367,26 @@ export type GetVedicAstrologyYogaErrors = {
18087
19367
  code: string;
18088
19368
  };
18089
19369
  };
18090
- export type GetVedicAstrologyYogaError = GetVedicAstrologyYogaErrors[keyof GetVedicAstrologyYogaErrors];
18091
- export type GetVedicAstrologyYogaResponses = {
19370
+ export type GetVedicAstrologyYogaByIdError = GetVedicAstrologyYogaByIdErrors[keyof GetVedicAstrologyYogaByIdErrors];
19371
+ export type GetVedicAstrologyYogaByIdResponses = {
18092
19372
  /**
18093
- * List of all yogas (basic info)
19373
+ * Detailed yoga information
18094
19374
  */
18095
- 200: {
18096
- /**
18097
- * Array of planetary yogas with basic identifiers, narrowed by `family` when that filter is supplied. Use GET /yoga/{id} for formation rules, effects, and quality classification.
18098
- */
18099
- yogas: Array<{
18100
- /**
18101
- * Unique yoga identifier in lowercase kebab-case. Use this to fetch full details via GET /yoga/{id}.
18102
- */
18103
- id: string;
18104
- /**
18105
- * Traditional Sanskrit name of the planetary yoga combination.
18106
- */
18107
- name: string;
18108
- /**
18109
- * Nabhasa family, present only on the 32 Nabhasa distribution yogas and absent on every other catalog row. Never translated, so it groups identically under any lang.
18110
- */
18111
- family?: 'classical' | 'asraya' | 'dala' | 'akriti' | 'sankhya';
18112
- }>;
18113
- /**
18114
- * Number of yogas in this response, which is the filtered count when `family` is supplied and the full catalog size otherwise. Includes Raj Yogas, Dhan Yogas, Pancha Mahapurusha Yogas, Nabhasa Yogas, and more.
18115
- */
18116
- total: number;
18117
- };
19375
+ 200: YogaDetail;
18118
19376
  };
18119
- export type GetVedicAstrologyYogaResponse = GetVedicAstrologyYogaResponses[keyof GetVedicAstrologyYogaResponses];
18120
- export type GetVedicAstrologyYogaByIdData = {
18121
- body?: never;
18122
- path: {
18123
- /**
18124
- * Yoga identifier (lowercase, hyphenated)
18125
- */
18126
- id: 'gajakesari' | 'sunapha' | 'anapha' | 'dhurdhura' | 'kemadruma' | 'chandramangala' | 'adhi' | 'chatussagara' | 'vasumathi' | 'rajalakshana' | 'vanchanachorabheethi' | 'sakata' | 'amala' | 'parvata' | 'kahala' | 'vesi' | 'vasi' | 'obhayachari' | 'hamsa' | 'malavya' | 'sasa' | 'ruchaka' | 'bhadra' | 'budhaaditya' | 'mahabhagya' | 'pushkala' | 'lakshmi' | 'gauri' | 'bharathi' | 'chapa' | 'sreenatha' | 'lagnamalika' | 'dhanamalika' | 'vikramamalika' | 'sukhamalika' | 'putramalika' | 'satrumalika' | 'kalatramalika' | 'randhramalika' | 'bhagyamalika' | 'karmamalika' | 'labhamalika' | 'vrayamalika' | 'sankha' | 'bheri' | 'mridanga' | 'parijatha' | 'gaja' | 'kalanidhi' | 'amsavatara' | 'hariharabrahma' | 'kusuma' | 'matsya' | 'kurma' | 'devendra' | 'makuta' | 'chandika' | 'jaya' | 'vidyut' | 'gandharva' | 'siva' | 'vishnu' | 'brahma' | 'indra' | 'ravi' | 'garuda' | 'go' | 'gola' | 'thrilochana' | 'kulavardhana' | 'yupa' | 'ishu' | 'sakti' | 'danda' | 'nav' | 'kuta' | 'chhatra' | 'chapa-2' | 'ardhachandra' | 'chandra' | 'gada' | 'sakata-2' | 'vihaga' | 'vajra' | 'yava' | 'sringhataka' | 'hala' | 'kamala' | 'vapee' | 'samudra' | 'vallaki' | 'damni' | 'pasa' | 'kedara' | 'sula' | 'yuga' | 'gola-2' | 'rajju' | 'musala' | 'nala' | 'srik' | 'mala' | 'sarpa' | 'duryoga' | 'daridra' | 'harsha' | 'sarala' | 'vimala' | 'sareerasoukhya' | 'dehapushti' | 'dehakashta' | 'rogagrastha' | 'krisanga' | 'krisanga-2' | 'dehasthoulya' | 'dehasthoulya-2' | 'dehasthoulya-3' | 'sadasanchara' | 'dhana' | 'dhana-2' | 'dhana-3' | 'dhana-4' | 'dhana-5' | 'dhana-6' | 'dhana-7' | 'dhana-8' | 'dhana-9' | 'dhana-10' | 'dhana-11' | 'bahudravyarjana' | 'swaveeryaddhana' | 'swaveeryaddhana-2' | 'swaveeryaddhana-3' | 'madhyavayasidhana' | 'anthyavayasidhana' | 'balyadhana' | 'bhratrumooladdhanaprapti' | 'bhratrumooladdhanaprapti-2' | 'matrumooladdhana' | 'putramooladdhana' | 'satrumooladdhana' | 'kalatramooladdhana' | 'amarananthadhana' | 'ayatnadhanalabha' | 'daridra-2' | 'daridra-3' | 'daridra-4' | 'daridra-5' | 'daridra-6' | 'daridra-7' | 'daridra-8' | 'daridra-9' | 'daridra-10' | 'daridra-11' | 'yukthisamanwithavagmi' | 'yukthisamanwithavagmi-2' | 'parihasaka' | 'asatyavadi' | 'jada' | 'bhaskara' | 'marud' | 'saraswathi' | 'budha' | 'mooka' | 'netranasa' | 'andha' | 'sumukha' | 'sumukha-2' | 'durmukha' | 'durmukha-2' | 'bhojanasoukhya' | 'annadana' | 'parannabhojana' | 'sraddhannabhuktha' | 'sarpaganda' | 'vakchalana' | 'vishaprayoga' | 'bhratruvriddhi' | 'sodaranasa' | 'ekabhagini' | 'dwadasasahodara' | 'sapthasankhyasahodara' | 'parakrama' | 'yuddhapraveena' | 'yuddhatpoorvadridhachitta' | 'yuddhatpaschaddrudha' | 'satkathadisravana' | 'uttamagriha' | 'vichitrasaudhaprakara' | 'ayatnagrihaprapta' | 'ayatnagrihaprapta-2' | 'grihanasa' | 'grihanasa-2' | 'bandhupujya' | 'bandhupujya-2' | 'bandhubhisthyaktha' | 'matrudeerghayur' | 'matrudeerghayur-2' | 'matrunasa' | 'matrunasa-2' | 'matrugami' | 'sahodareesangama' | 'kapata' | 'kapata-2' | 'kapata-3' | 'nishkapata' | 'nishkapata-2' | 'matrusatrutwa' | 'matrusneha' | 'vahana' | 'vahana-2' | 'anapathya' | 'sarpasapa' | 'sarpasapa-2' | 'sarpasapa-3' | 'sarpasapa-4' | 'pitrusapasutakshaya' | 'matrusapasutakshaya' | 'bhratrusapasutakshaya' | 'pretasapa' | 'bahuputra' | 'bahuputra-2' | 'dattaputra' | 'dattaputra-2' | 'aputra' | 'ekaputra' | 'suputra' | 'kalanirdesatputra' | 'kalanirdesatputra-2' | 'kalanirdesatputranasa' | 'kalanirdesatputranasa-2' | 'buddhimaturya' | 'theevrabuddhi' | 'buddhijada' | 'thrikalagnana' | 'putrasukha' | 'jara' | 'jarajaputra' | 'bahustree' | 'satkalatra' | 'bhagachumbana' | 'bhagya' | 'jananatpurvampitrumarana' | 'dhatrutwa' | 'apakeerti' | 'raja' | 'raja-2' | 'raja-3' | 'raja-4' | 'raja-5' | 'raja-6' | 'raja-7' | 'raja-8' | 'raja-9' | 'raja-10' | 'raja-11' | 'raja-12' | 'raja-13' | 'raja-14' | 'raja-15' | 'raja-16' | 'raja-17' | 'raja-18' | 'raja-19' | 'galakarna' | 'vrana' | 'sisnavyadhi' | 'kalatrashanda' | 'kushtaroga' | 'kushtaroga-2' | 'kshayaroga' | 'bandhana' | 'karascheda' | 'sirachcheda' | 'durmarana' | 'yuddhemarana' | 'sanghatakamarana' | 'sanghatakamarana-2' | 'peenasaroga' | 'pittaroga' | 'vikalangapatni' | 'putrakalatraheena' | 'bharyasahavyabhichara' | 'vamsacheda' | 'guhyaroga' | 'angaheena' | 'swetakushta' | 'pisachagrastha' | 'andha-2' | 'andha-3' | 'vatharoga' | 'matibhramana' | 'matibhramana-2' | 'matibhramana-3' | 'matibhramana-4' | 'khalwata' | 'nishturabhashi' | 'rajabhrashta' | 'raja-20' | 'raja-21' | 'gohanta';
18127
- };
19377
+ export type GetVedicAstrologyYogaByIdResponse = GetVedicAstrologyYogaByIdResponses[keyof GetVedicAstrologyYogaByIdResponses];
19378
+ export type PostVedicAstrologyYogaDetectData = {
19379
+ body?: YogaDetectRequest;
19380
+ path?: never;
18128
19381
  query?: {
18129
19382
  /**
18130
19383
  * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
18131
19384
  */
18132
19385
  lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
18133
19386
  };
18134
- url: '/vedic-astrology/yoga/{id}';
19387
+ url: '/vedic-astrology/yoga/detect';
18135
19388
  };
18136
- export type GetVedicAstrologyYogaByIdErrors = {
19389
+ export type PostVedicAstrologyYogaDetectErrors = {
18137
19390
  /**
18138
19391
  * Validation error. `issues[]` lists every failed field.
18139
19392
  */
@@ -18192,19 +19445,6 @@ export type GetVedicAstrologyYogaByIdErrors = {
18192
19445
  */
18193
19446
  code: string;
18194
19447
  };
18195
- /**
18196
- * Yoga not found
18197
- */
18198
- 404: {
18199
- /**
18200
- * Human-readable error message. May change wording — do not parse programmatically.
18201
- */
18202
- error: string;
18203
- /**
18204
- * Machine-readable error code. Stable identifier for programmatic error handling.
18205
- */
18206
- code: string;
18207
- };
18208
19448
  /**
18209
19449
  * Method not allowed. The path exists but only responds to the methods listed in `allow[]` and the `Allow` response header.
18210
19450
  */
@@ -18247,26 +19487,34 @@ export type GetVedicAstrologyYogaByIdErrors = {
18247
19487
  code: string;
18248
19488
  };
18249
19489
  };
18250
- export type GetVedicAstrologyYogaByIdError = GetVedicAstrologyYogaByIdErrors[keyof GetVedicAstrologyYogaByIdErrors];
18251
- export type GetVedicAstrologyYogaByIdResponses = {
19490
+ export type PostVedicAstrologyYogaDetectError = PostVedicAstrologyYogaDetectErrors[keyof PostVedicAstrologyYogaDetectErrors];
19491
+ export type PostVedicAstrologyYogaDetectResponses = {
18252
19492
  /**
18253
- * Detailed yoga information
19493
+ * List of 44 classical yogas with present/absent verdicts and classical-text evidence.
18254
19494
  */
18255
- 200: YogaDetail;
19495
+ 200: YogaDetectResponse;
18256
19496
  };
18257
- export type GetVedicAstrologyYogaByIdResponse = GetVedicAstrologyYogaByIdResponses[keyof GetVedicAstrologyYogaByIdResponses];
18258
- export type PostVedicAstrologyYogaDetectData = {
18259
- body?: YogaDetectRequest;
19497
+ export type PostVedicAstrologyYogaDetectResponse = PostVedicAstrologyYogaDetectResponses[keyof PostVedicAstrologyYogaDetectResponses];
19498
+ export type GetVedicAstrologyKpAyanamsaData = {
19499
+ body?: never;
18260
19500
  path?: never;
18261
19501
  query?: {
18262
19502
  /**
18263
- * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
19503
+ * Date for ayanamsa calculation in YYYY-MM-DD format. Defaults to today if not provided. Ayanamsa changes by ~0.01 degrees per month due to the precession of Earth.
18264
19504
  */
18265
- lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
19505
+ date?: string;
19506
+ /**
19507
+ * Time of day in 24-hour HH:MM:SS format, interpreted in the timezone below. Omit for midnight UTC. The ayanamsa moves about 0.14 arcseconds across a day, so supplying the time matters only when reconciling a chart against reference software to the arcsecond.
19508
+ */
19509
+ time?: string;
19510
+ /**
19511
+ * IANA name (e.g. "Asia/Kolkata", "America/New_York"), decimal hours (e.g. 5.5 for IST, -5 for EST), or a fixed UTC offset (e.g. "+05:30"). IANA resolved to the DST-correct offset for the given date. Applies to the time field above. Defaults to 0 (UTC).
19512
+ */
19513
+ timezone?: string;
18266
19514
  };
18267
- url: '/vedic-astrology/yoga/detect';
19515
+ url: '/vedic-astrology/kp/ayanamsa';
18268
19516
  };
18269
- export type PostVedicAstrologyYogaDetectErrors = {
19517
+ export type GetVedicAstrologyKpAyanamsaErrors = {
18270
19518
  /**
18271
19519
  * Validation error. `issues[]` lists every failed field.
18272
19520
  */
@@ -18367,34 +19615,21 @@ export type PostVedicAstrologyYogaDetectErrors = {
18367
19615
  code: string;
18368
19616
  };
18369
19617
  };
18370
- export type PostVedicAstrologyYogaDetectError = PostVedicAstrologyYogaDetectErrors[keyof PostVedicAstrologyYogaDetectErrors];
18371
- export type PostVedicAstrologyYogaDetectResponses = {
19618
+ export type GetVedicAstrologyKpAyanamsaError = GetVedicAstrologyKpAyanamsaErrors[keyof GetVedicAstrologyKpAyanamsaErrors];
19619
+ export type GetVedicAstrologyKpAyanamsaResponses = {
18372
19620
  /**
18373
- * List of 44 classical yogas with present/absent verdicts and classical-text evidence.
19621
+ * Successfully calculated KP-Newcomb ayanamsa
18374
19622
  */
18375
- 200: YogaDetectResponse;
19623
+ 200: KpAyanamsaResponse;
18376
19624
  };
18377
- export type PostVedicAstrologyYogaDetectResponse = PostVedicAstrologyYogaDetectResponses[keyof PostVedicAstrologyYogaDetectResponses];
18378
- export type GetVedicAstrologyKpAyanamsaData = {
18379
- body?: never;
19625
+ export type GetVedicAstrologyKpAyanamsaResponse = GetVedicAstrologyKpAyanamsaResponses[keyof GetVedicAstrologyKpAyanamsaResponses];
19626
+ export type PostVedicAstrologyKpPlanetsData = {
19627
+ body?: KpPlanetsRequest;
18380
19628
  path?: never;
18381
- query?: {
18382
- /**
18383
- * Date for ayanamsa calculation in YYYY-MM-DD format. Defaults to today if not provided. Ayanamsa changes by ~0.01 degrees per month due to the precession of Earth.
18384
- */
18385
- date?: string;
18386
- /**
18387
- * Time of day in 24-hour HH:MM:SS format, interpreted in the timezone below. Omit for midnight UTC. The ayanamsa moves about 0.14 arcseconds across a day, so supplying the time matters only when reconciling a chart against reference software to the arcsecond.
18388
- */
18389
- time?: string;
18390
- /**
18391
- * IANA name (e.g. "Asia/Kolkata", "America/New_York"), decimal hours (e.g. 5.5 for IST, -5 for EST), or a fixed UTC offset (e.g. "+05:30"). IANA resolved to the DST-correct offset for the given date. Applies to the time field above. Defaults to 0 (UTC).
18392
- */
18393
- timezone?: string;
18394
- };
18395
- url: '/vedic-astrology/kp/ayanamsa';
19629
+ query?: never;
19630
+ url: '/vedic-astrology/kp/planets';
18396
19631
  };
18397
- export type GetVedicAstrologyKpAyanamsaErrors = {
19632
+ export type PostVedicAstrologyKpPlanetsErrors = {
18398
19633
  /**
18399
19634
  * Validation error. `issues[]` lists every failed field.
18400
19635
  */
@@ -18495,21 +19730,30 @@ export type GetVedicAstrologyKpAyanamsaErrors = {
18495
19730
  code: string;
18496
19731
  };
18497
19732
  };
18498
- export type GetVedicAstrologyKpAyanamsaError = GetVedicAstrologyKpAyanamsaErrors[keyof GetVedicAstrologyKpAyanamsaErrors];
18499
- export type GetVedicAstrologyKpAyanamsaResponses = {
19733
+ export type PostVedicAstrologyKpPlanetsError = PostVedicAstrologyKpPlanetsErrors[keyof PostVedicAstrologyKpPlanetsErrors];
19734
+ export type PostVedicAstrologyKpPlanetsResponses = {
18500
19735
  /**
18501
- * Successfully calculated KP-Newcomb ayanamsa
19736
+ * Successfully calculated KP planetary positions
18502
19737
  */
18503
- 200: KpAyanamsaResponse;
19738
+ 200: KpPlanetsResponse;
18504
19739
  };
18505
- export type GetVedicAstrologyKpAyanamsaResponse = GetVedicAstrologyKpAyanamsaResponses[keyof GetVedicAstrologyKpAyanamsaResponses];
18506
- export type PostVedicAstrologyKpPlanetsData = {
18507
- body?: KpPlanetsRequest;
19740
+ export type PostVedicAstrologyKpPlanetsResponse = PostVedicAstrologyKpPlanetsResponses[keyof PostVedicAstrologyKpPlanetsResponses];
19741
+ export type PostVedicAstrologyKpCuspsData = {
19742
+ body?: KpCuspsRequest;
18508
19743
  path?: never;
18509
- query?: never;
18510
- url: '/vedic-astrology/kp/planets';
19744
+ query?: {
19745
+ /**
19746
+ * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
19747
+ */
19748
+ lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
19749
+ /**
19750
+ * Which signification vocabulary the houseThemes map returns. "general" gives the classical bhava significations (self, wealth, siblings, home, and so on). "finance" gives the money reading of the same twelve bhavas, so house 2 returns income and savings, 5 speculation and risk appetite, 8 sudden money and leverage, 11 gains and profits, and 12 expenses and capital outflow. Use "finance" for wealth, income, business and market timing questions in Krishnamurti Paddhati, where the significator house groups 2, 6, 10, 11 for earned income and 5, 8, 11 for speculation are read against a running dasha. Defaults to "general".
19751
+ */
19752
+ focus?: 'general' | 'finance';
19753
+ };
19754
+ url: '/vedic-astrology/kp/cusps';
18511
19755
  };
18512
- export type PostVedicAstrologyKpPlanetsErrors = {
19756
+ export type PostVedicAstrologyKpCuspsErrors = {
18513
19757
  /**
18514
19758
  * Validation error. `issues[]` lists every failed field.
18515
19759
  */
@@ -18610,16 +19854,16 @@ export type PostVedicAstrologyKpPlanetsErrors = {
18610
19854
  code: string;
18611
19855
  };
18612
19856
  };
18613
- export type PostVedicAstrologyKpPlanetsError = PostVedicAstrologyKpPlanetsErrors[keyof PostVedicAstrologyKpPlanetsErrors];
18614
- export type PostVedicAstrologyKpPlanetsResponses = {
19857
+ export type PostVedicAstrologyKpCuspsError = PostVedicAstrologyKpCuspsErrors[keyof PostVedicAstrologyKpCuspsErrors];
19858
+ export type PostVedicAstrologyKpCuspsResponses = {
18615
19859
  /**
18616
- * Successfully calculated KP planetary positions
19860
+ * Successfully calculated Placidus house cusps
18617
19861
  */
18618
- 200: KpPlanetsResponse;
19862
+ 200: KpCuspsResponse;
18619
19863
  };
18620
- export type PostVedicAstrologyKpPlanetsResponse = PostVedicAstrologyKpPlanetsResponses[keyof PostVedicAstrologyKpPlanetsResponses];
18621
- export type PostVedicAstrologyKpCuspsData = {
18622
- body?: KpCuspsRequest;
19864
+ export type PostVedicAstrologyKpCuspsResponse = PostVedicAstrologyKpCuspsResponses[keyof PostVedicAstrologyKpCuspsResponses];
19865
+ export type PostVedicAstrologyKpChartData = {
19866
+ body?: KpChartRequest;
18623
19867
  path?: never;
18624
19868
  query?: {
18625
19869
  /**
@@ -18631,9 +19875,9 @@ export type PostVedicAstrologyKpCuspsData = {
18631
19875
  */
18632
19876
  focus?: 'general' | 'finance';
18633
19877
  };
18634
- url: '/vedic-astrology/kp/cusps';
19878
+ url: '/vedic-astrology/kp/chart';
18635
19879
  };
18636
- export type PostVedicAstrologyKpCuspsErrors = {
19880
+ export type PostVedicAstrologyKpChartErrors = {
18637
19881
  /**
18638
19882
  * Validation error. `issues[]` lists every failed field.
18639
19883
  */
@@ -18734,16 +19978,45 @@ export type PostVedicAstrologyKpCuspsErrors = {
18734
19978
  code: string;
18735
19979
  };
18736
19980
  };
18737
- export type PostVedicAstrologyKpCuspsError = PostVedicAstrologyKpCuspsErrors[keyof PostVedicAstrologyKpCuspsErrors];
18738
- export type PostVedicAstrologyKpCuspsResponses = {
19981
+ export type PostVedicAstrologyKpChartError = PostVedicAstrologyKpChartErrors[keyof PostVedicAstrologyKpChartErrors];
19982
+ export type PostVedicAstrologyKpChartResponses = {
18739
19983
  /**
18740
- * Successfully calculated Placidus house cusps
19984
+ * Successfully generated KP birth chart
18741
19985
  */
18742
- 200: KpCuspsResponse;
19986
+ 200: KpChartResponse;
18743
19987
  };
18744
- export type PostVedicAstrologyKpCuspsResponse = PostVedicAstrologyKpCuspsResponses[keyof PostVedicAstrologyKpCuspsResponses];
18745
- export type PostVedicAstrologyKpChartData = {
18746
- body?: KpChartRequest;
19988
+ export type PostVedicAstrologyKpChartResponse = PostVedicAstrologyKpChartResponses[keyof PostVedicAstrologyKpChartResponses];
19989
+ export type PostVedicAstrologyKpRulingPlanetsData = {
19990
+ body?: {
19991
+ /**
19992
+ * Observer latitude in decimal degrees
19993
+ */
19994
+ latitude: number;
19995
+ /**
19996
+ * Observer longitude in decimal degrees
19997
+ */
19998
+ longitude: number;
19999
+ /**
20000
+ * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC. IANA resolved to the DST-correct offset based on birthDate or datetime. Defaults to 5.5.
20001
+ */
20002
+ timezone?: number | string;
20003
+ /**
20004
+ * ISO 8601 datetime (YYYY-MM-DDTHH:MM:SS) for ruling planets. Defaults to current time. Interpreted as local time when a non-zero timezone is provided (a trailing Z is accepted but ignored); with timezone 0 it is UTC.
20005
+ */
20006
+ datetime?: string;
20007
+ /**
20008
+ * Birth date (YYYY-MM-DD) to calculate significators. If provided with birthTime, response includes which houses each ruling planet signifies.
20009
+ */
20010
+ birthDate?: string;
20011
+ /**
20012
+ * Birth time (HH:MM:SS) for significator calculation. Required if birthDate is provided.
20013
+ */
20014
+ birthTime?: string;
20015
+ /**
20016
+ * Lunar node type for Rahu and Ketu positions. "mean" uses the smooth mean node (traditional Vedic astrology default). "true" uses the osculating node with perturbation corrections, oscillating up to 1.5 degrees from mean with a 173-day period. Impacts KP sub-lord assignments in narrow boundary cases. Defaults to "mean".
20017
+ */
20018
+ nodeType?: 'mean' | 'true';
20019
+ };
18747
20020
  path?: never;
18748
20021
  query?: {
18749
20022
  /**
@@ -18755,9 +20028,9 @@ export type PostVedicAstrologyKpChartData = {
18755
20028
  */
18756
20029
  focus?: 'general' | 'finance';
18757
20030
  };
18758
- url: '/vedic-astrology/kp/chart';
20031
+ url: '/vedic-astrology/kp/ruling-planets';
18759
20032
  };
18760
- export type PostVedicAstrologyKpChartErrors = {
20033
+ export type PostVedicAstrologyKpRulingPlanetsErrors = {
18761
20034
  /**
18762
20035
  * Validation error. `issues[]` lists every failed field.
18763
20036
  */
@@ -18858,16 +20131,28 @@ export type PostVedicAstrologyKpChartErrors = {
18858
20131
  code: string;
18859
20132
  };
18860
20133
  };
18861
- export type PostVedicAstrologyKpChartError = PostVedicAstrologyKpChartErrors[keyof PostVedicAstrologyKpChartErrors];
18862
- export type PostVedicAstrologyKpChartResponses = {
20134
+ export type PostVedicAstrologyKpRulingPlanetsError = PostVedicAstrologyKpRulingPlanetsErrors[keyof PostVedicAstrologyKpRulingPlanetsErrors];
20135
+ export type PostVedicAstrologyKpRulingPlanetsResponses = {
18863
20136
  /**
18864
- * Successfully generated KP birth chart
20137
+ * Ruling planets calculated successfully
18865
20138
  */
18866
- 200: KpChartResponse;
20139
+ 200: KpRulingPlanetsResponse;
18867
20140
  };
18868
- export type PostVedicAstrologyKpChartResponse = PostVedicAstrologyKpChartResponses[keyof PostVedicAstrologyKpChartResponses];
18869
- export type PostVedicAstrologyKpRulingPlanetsData = {
20141
+ export type PostVedicAstrologyKpRulingPlanetsResponse = PostVedicAstrologyKpRulingPlanetsResponses[keyof PostVedicAstrologyKpRulingPlanetsResponses];
20142
+ export type PostVedicAstrologyKpRulingPlanetsIntervalData = {
18870
20143
  body?: {
20144
+ /**
20145
+ * Start of the interval range in ISO 8601 (YYYY-MM-DDTHH:MM:SS). Interpreted as local time when a non-zero timezone is provided (a trailing Z is accepted but ignored); with timezone 0 it is UTC.
20146
+ */
20147
+ startDatetime: string;
20148
+ /**
20149
+ * End of the interval range in ISO 8601 (YYYY-MM-DDTHH:MM:SS). Interpreted as local time when a non-zero timezone is provided (a trailing Z is accepted but ignored); with timezone 0 it is UTC.
20150
+ */
20151
+ endDatetime: string;
20152
+ /**
20153
+ * Interval between calculations in minutes (1-1440). Use 1-5 for birth time rectification.
20154
+ */
20155
+ intervalMinutes: number;
18871
20156
  /**
18872
20157
  * Observer latitude in decimal degrees
18873
20158
  */
@@ -18877,21 +20162,13 @@ export type PostVedicAstrologyKpRulingPlanetsData = {
18877
20162
  */
18878
20163
  longitude: number;
18879
20164
  /**
18880
- * Timezone: IANA name (e.g. "America/New_York", "Europe/London") OR decimal hours from UTC. IANA resolved to the DST-correct offset based on birthDate or datetime. Defaults to 5.5.
20165
+ * Timezone offset from UTC in decimal hours. When non-zero, all datetimes are treated as local time in this timezone (Z suffix is ignored). Output times are also converted to this timezone. Defaults to 5.5 (IST).
18881
20166
  */
18882
20167
  timezone?: number | string;
18883
20168
  /**
18884
- * ISO 8601 datetime (YYYY-MM-DDTHH:MM:SS) for ruling planets. Defaults to current time. Interpreted as local time when a non-zero timezone is provided (a trailing Z is accepted but ignored); with timezone 0 it is UTC.
18885
- */
18886
- datetime?: string;
18887
- /**
18888
- * Birth date (YYYY-MM-DD) to calculate significators. If provided with birthTime, response includes which houses each ruling planet signifies.
18889
- */
18890
- birthDate?: string;
18891
- /**
18892
- * Birth time (HH:MM:SS) for significator calculation. Required if birthDate is provided.
20169
+ * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula, the most common choice for KP astrology. "kp-old" uses the Krishnamurti original table from KP Reader-1 with constant precession rate. "lahiri" uses Lahiri/Chitrapaksha ayanamsa, matching most traditional Vedic software. "raman" uses the B.V. Raman ayanamsa from Hindu Predictive Astrology, a recognised traditional school that sits about 1.45 degrees below Lahiri. Defaults to "kp-newcomb".
18893
20170
  */
18894
- birthTime?: string;
20171
+ ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri' | 'raman';
18895
20172
  /**
18896
20173
  * Lunar node type for Rahu and Ketu positions. "mean" uses the smooth mean node (traditional Vedic astrology default). "true" uses the osculating node with perturbation corrections, oscillating up to 1.5 degrees from mean with a 173-day period. Impacts KP sub-lord assignments in narrow boundary cases. Defaults to "mean".
18897
20174
  */
@@ -18908,9 +20185,9 @@ export type PostVedicAstrologyKpRulingPlanetsData = {
18908
20185
  */
18909
20186
  focus?: 'general' | 'finance';
18910
20187
  };
18911
- url: '/vedic-astrology/kp/ruling-planets';
20188
+ url: '/vedic-astrology/kp/ruling-planets-interval';
18912
20189
  };
18913
- export type PostVedicAstrologyKpRulingPlanetsErrors = {
20190
+ export type PostVedicAstrologyKpRulingPlanetsIntervalErrors = {
18914
20191
  /**
18915
20192
  * Validation error. `issues[]` lists every failed field.
18916
20193
  */
@@ -19011,63 +20288,21 @@ export type PostVedicAstrologyKpRulingPlanetsErrors = {
19011
20288
  code: string;
19012
20289
  };
19013
20290
  };
19014
- export type PostVedicAstrologyKpRulingPlanetsError = PostVedicAstrologyKpRulingPlanetsErrors[keyof PostVedicAstrologyKpRulingPlanetsErrors];
19015
- export type PostVedicAstrologyKpRulingPlanetsResponses = {
20291
+ export type PostVedicAstrologyKpRulingPlanetsIntervalError = PostVedicAstrologyKpRulingPlanetsIntervalErrors[keyof PostVedicAstrologyKpRulingPlanetsIntervalErrors];
20292
+ export type PostVedicAstrologyKpRulingPlanetsIntervalResponses = {
19016
20293
  /**
19017
- * Ruling planets calculated successfully
20294
+ * Ruling planets with significators at intervals
19018
20295
  */
19019
- 200: KpRulingPlanetsResponse;
20296
+ 200: KpRulingPlanetsIntervalResponse;
19020
20297
  };
19021
- export type PostVedicAstrologyKpRulingPlanetsResponse = PostVedicAstrologyKpRulingPlanetsResponses[keyof PostVedicAstrologyKpRulingPlanetsResponses];
19022
- export type PostVedicAstrologyKpRulingPlanetsIntervalData = {
19023
- body?: {
19024
- /**
19025
- * Start of the interval range in ISO 8601 (YYYY-MM-DDTHH:MM:SS). Interpreted as local time when a non-zero timezone is provided (a trailing Z is accepted but ignored); with timezone 0 it is UTC.
19026
- */
19027
- startDatetime: string;
19028
- /**
19029
- * End of the interval range in ISO 8601 (YYYY-MM-DDTHH:MM:SS). Interpreted as local time when a non-zero timezone is provided (a trailing Z is accepted but ignored); with timezone 0 it is UTC.
19030
- */
19031
- endDatetime: string;
19032
- /**
19033
- * Interval between calculations in minutes (1-1440). Use 1-5 for birth time rectification.
19034
- */
19035
- intervalMinutes: number;
19036
- /**
19037
- * Observer latitude in decimal degrees
19038
- */
19039
- latitude: number;
19040
- /**
19041
- * Observer longitude in decimal degrees
19042
- */
19043
- longitude: number;
19044
- /**
19045
- * Timezone offset from UTC in decimal hours. When non-zero, all datetimes are treated as local time in this timezone (Z suffix is ignored). Output times are also converted to this timezone. Defaults to 5.5 (IST).
19046
- */
19047
- timezone?: number | string;
19048
- /**
19049
- * Ayanamsa system for sidereal conversion. "kp-newcomb" uses the KP-Newcomb dynamic formula, the most common choice for KP astrology. "kp-old" uses the Krishnamurti original table from KP Reader-1 with constant precession rate. "lahiri" uses Lahiri/Chitrapaksha ayanamsa, matching most traditional Vedic software. Defaults to "kp-newcomb".
19050
- */
19051
- ayanamsa?: 'kp-newcomb' | 'kp-old' | 'lahiri';
19052
- /**
19053
- * Lunar node type for Rahu and Ketu positions. "mean" uses the smooth mean node (traditional Vedic astrology default). "true" uses the osculating node with perturbation corrections, oscillating up to 1.5 degrees from mean with a 173-day period. Impacts KP sub-lord assignments in narrow boundary cases. Defaults to "mean".
19054
- */
19055
- nodeType?: 'mean' | 'true';
19056
- };
20298
+ export type PostVedicAstrologyKpRulingPlanetsIntervalResponse = PostVedicAstrologyKpRulingPlanetsIntervalResponses[keyof PostVedicAstrologyKpRulingPlanetsIntervalResponses];
20299
+ export type PostVedicAstrologyKpSublordChangesData = {
20300
+ body?: KpSublordChangesRequest;
19057
20301
  path?: never;
19058
- query?: {
19059
- /**
19060
- * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
19061
- */
19062
- lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
19063
- /**
19064
- * Which signification vocabulary the houseThemes map returns. "general" gives the classical bhava significations (self, wealth, siblings, home, and so on). "finance" gives the money reading of the same twelve bhavas, so house 2 returns income and savings, 5 speculation and risk appetite, 8 sudden money and leverage, 11 gains and profits, and 12 expenses and capital outflow. Use "finance" for wealth, income, business and market timing questions in Krishnamurti Paddhati, where the significator house groups 2, 6, 10, 11 for earned income and 5, 8, 11 for speculation are read against a running dasha. Defaults to "general".
19065
- */
19066
- focus?: 'general' | 'finance';
19067
- };
19068
- url: '/vedic-astrology/kp/ruling-planets-interval';
20302
+ query?: never;
20303
+ url: '/vedic-astrology/kp/sublord-changes';
19069
20304
  };
19070
- export type PostVedicAstrologyKpRulingPlanetsIntervalErrors = {
20305
+ export type PostVedicAstrologyKpSublordChangesErrors = {
19071
20306
  /**
19072
20307
  * Validation error. `issues[]` lists every failed field.
19073
20308
  */
@@ -19168,21 +20403,21 @@ export type PostVedicAstrologyKpRulingPlanetsIntervalErrors = {
19168
20403
  code: string;
19169
20404
  };
19170
20405
  };
19171
- export type PostVedicAstrologyKpRulingPlanetsIntervalError = PostVedicAstrologyKpRulingPlanetsIntervalErrors[keyof PostVedicAstrologyKpRulingPlanetsIntervalErrors];
19172
- export type PostVedicAstrologyKpRulingPlanetsIntervalResponses = {
20406
+ export type PostVedicAstrologyKpSublordChangesError = PostVedicAstrologyKpSublordChangesErrors[keyof PostVedicAstrologyKpSublordChangesErrors];
20407
+ export type PostVedicAstrologyKpSublordChangesResponses = {
19173
20408
  /**
19174
- * Ruling planets with significators at intervals
20409
+ * Sublord change timings calculated successfully
19175
20410
  */
19176
- 200: KpRulingPlanetsIntervalResponse;
20411
+ 200: KpSublordChangesResponse;
19177
20412
  };
19178
- export type PostVedicAstrologyKpRulingPlanetsIntervalResponse = PostVedicAstrologyKpRulingPlanetsIntervalResponses[keyof PostVedicAstrologyKpRulingPlanetsIntervalResponses];
19179
- export type PostVedicAstrologyKpSublordChangesData = {
19180
- body?: KpSublordChangesRequest;
20413
+ export type PostVedicAstrologyKpSublordChangesResponse = PostVedicAstrologyKpSublordChangesResponses[keyof PostVedicAstrologyKpSublordChangesResponses];
20414
+ export type PostVedicAstrologyKpRasiChangesData = {
20415
+ body?: KpRasiChangesRequest;
19181
20416
  path?: never;
19182
20417
  query?: never;
19183
- url: '/vedic-astrology/kp/sublord-changes';
20418
+ url: '/vedic-astrology/kp/rasi-changes';
19184
20419
  };
19185
- export type PostVedicAstrologyKpSublordChangesErrors = {
20420
+ export type PostVedicAstrologyKpRasiChangesErrors = {
19186
20421
  /**
19187
20422
  * Validation error. `issues[]` lists every failed field.
19188
20423
  */
@@ -19283,21 +20518,21 @@ export type PostVedicAstrologyKpSublordChangesErrors = {
19283
20518
  code: string;
19284
20519
  };
19285
20520
  };
19286
- export type PostVedicAstrologyKpSublordChangesError = PostVedicAstrologyKpSublordChangesErrors[keyof PostVedicAstrologyKpSublordChangesErrors];
19287
- export type PostVedicAstrologyKpSublordChangesResponses = {
20521
+ export type PostVedicAstrologyKpRasiChangesError = PostVedicAstrologyKpRasiChangesErrors[keyof PostVedicAstrologyKpRasiChangesErrors];
20522
+ export type PostVedicAstrologyKpRasiChangesResponses = {
19288
20523
  /**
19289
- * Sublord change timings calculated successfully
20524
+ * Sign ingress timings calculated successfully
19290
20525
  */
19291
- 200: KpSublordChangesResponse;
20526
+ 200: KpRasiChangesResponse;
19292
20527
  };
19293
- export type PostVedicAstrologyKpSublordChangesResponse = PostVedicAstrologyKpSublordChangesResponses[keyof PostVedicAstrologyKpSublordChangesResponses];
19294
- export type PostVedicAstrologyKpRasiChangesData = {
19295
- body?: KpRasiChangesRequest;
20528
+ export type PostVedicAstrologyKpRasiChangesResponse = PostVedicAstrologyKpRasiChangesResponses[keyof PostVedicAstrologyKpRasiChangesResponses];
20529
+ export type PostVedicAstrologyKpPlanetsIntervalData = {
20530
+ body?: KpPlanetsIntervalRequest;
19296
20531
  path?: never;
19297
20532
  query?: never;
19298
- url: '/vedic-astrology/kp/rasi-changes';
20533
+ url: '/vedic-astrology/kp/planets-interval';
19299
20534
  };
19300
- export type PostVedicAstrologyKpRasiChangesErrors = {
20535
+ export type PostVedicAstrologyKpPlanetsIntervalErrors = {
19301
20536
  /**
19302
20537
  * Validation error. `issues[]` lists every failed field.
19303
20538
  */
@@ -19398,21 +20633,30 @@ export type PostVedicAstrologyKpRasiChangesErrors = {
19398
20633
  code: string;
19399
20634
  };
19400
20635
  };
19401
- export type PostVedicAstrologyKpRasiChangesError = PostVedicAstrologyKpRasiChangesErrors[keyof PostVedicAstrologyKpRasiChangesErrors];
19402
- export type PostVedicAstrologyKpRasiChangesResponses = {
20636
+ export type PostVedicAstrologyKpPlanetsIntervalError = PostVedicAstrologyKpPlanetsIntervalErrors[keyof PostVedicAstrologyKpPlanetsIntervalErrors];
20637
+ export type PostVedicAstrologyKpPlanetsIntervalResponses = {
19403
20638
  /**
19404
- * Sign ingress timings calculated successfully
20639
+ * Planetary positions calculated at all intervals
19405
20640
  */
19406
- 200: KpRasiChangesResponse;
20641
+ 200: KpPlanetsIntervalResponse;
19407
20642
  };
19408
- export type PostVedicAstrologyKpRasiChangesResponse = PostVedicAstrologyKpRasiChangesResponses[keyof PostVedicAstrologyKpRasiChangesResponses];
19409
- export type PostVedicAstrologyKpPlanetsIntervalData = {
19410
- body?: KpPlanetsIntervalRequest;
20643
+ export type PostVedicAstrologyKpPlanetsIntervalResponse = PostVedicAstrologyKpPlanetsIntervalResponses[keyof PostVedicAstrologyKpPlanetsIntervalResponses];
20644
+ export type PostVedicAstrologyKpHoraryData = {
20645
+ body?: KpHoraryRequest;
19411
20646
  path?: never;
19412
- query?: never;
19413
- url: '/vedic-astrology/kp/planets-interval';
20647
+ query?: {
20648
+ /**
20649
+ * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
20650
+ */
20651
+ lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
20652
+ /**
20653
+ * Which signification vocabulary the houseThemes map returns. "general" gives the classical bhava significations (self, wealth, siblings, home, and so on). "finance" gives the money reading of the same twelve bhavas, so house 2 returns income and savings, 5 speculation and risk appetite, 8 sudden money and leverage, 11 gains and profits, and 12 expenses and capital outflow. Use "finance" for wealth, income, business and market timing questions in Krishnamurti Paddhati, where the significator house groups 2, 6, 10, 11 for earned income and 5, 8, 11 for speculation are read against a running dasha. Defaults to "general".
20654
+ */
20655
+ focus?: 'general' | 'finance';
20656
+ };
20657
+ url: '/vedic-astrology/kp/horary';
19414
20658
  };
19415
- export type PostVedicAstrologyKpPlanetsIntervalErrors = {
20659
+ export type PostVedicAstrologyKpHoraryErrors = {
19416
20660
  /**
19417
20661
  * Validation error. `issues[]` lists every failed field.
19418
20662
  */
@@ -19513,14 +20757,14 @@ export type PostVedicAstrologyKpPlanetsIntervalErrors = {
19513
20757
  code: string;
19514
20758
  };
19515
20759
  };
19516
- export type PostVedicAstrologyKpPlanetsIntervalError = PostVedicAstrologyKpPlanetsIntervalErrors[keyof PostVedicAstrologyKpPlanetsIntervalErrors];
19517
- export type PostVedicAstrologyKpPlanetsIntervalResponses = {
20760
+ export type PostVedicAstrologyKpHoraryError = PostVedicAstrologyKpHoraryErrors[keyof PostVedicAstrologyKpHoraryErrors];
20761
+ export type PostVedicAstrologyKpHoraryResponses = {
19518
20762
  /**
19519
- * Planetary positions calculated at all intervals
20763
+ * Horary chart with the Ascendant from the number, Placidus cusps, planets at the question moment, ruling planets, and four-level significators.
19520
20764
  */
19521
- 200: KpPlanetsIntervalResponse;
20765
+ 200: KpHoraryResponse;
19522
20766
  };
19523
- export type PostVedicAstrologyKpPlanetsIntervalResponse = PostVedicAstrologyKpPlanetsIntervalResponses[keyof PostVedicAstrologyKpPlanetsIntervalResponses];
20767
+ export type PostVedicAstrologyKpHoraryResponse = PostVedicAstrologyKpHoraryResponses[keyof PostVedicAstrologyKpHoraryResponses];
19524
20768
  export type PostVedicAstrologyAspectsData = {
19525
20769
  body?: {
19526
20770
  /**
@@ -20274,11 +21518,11 @@ export type PostVedicAstrologyTransitResponses = {
20274
21518
  */
20275
21519
  200: {
20276
21520
  /**
20277
- * Birth datetime used for the natal chart (UTC ISO 8601).
21521
+ * Birth datetime used for the natal chart, echoed as the local civil date and time supplied in the request (YYYY-MM-DDTHH:MM:SS). Combine it with the timezone field to recover the UTC instant.
20278
21522
  */
20279
21523
  birthDatetime: string;
20280
21524
  /**
20281
- * Transit datetime being analyzed (UTC ISO 8601).
21525
+ * Transit datetime being analyzed, echoed as the local civil date and time supplied in the request (YYYY-MM-DDTHH:MM:SS). Gochar positions are computed for this moment and overlaid on the natal chart.
20282
21526
  */
20283
21527
  transitDatetime: string;
20284
21528
  /**
@@ -20286,7 +21530,7 @@ export type PostVedicAstrologyTransitResponses = {
20286
21530
  */
20287
21531
  natalPlanets: Array<{
20288
21532
  /**
20289
- * Planet name (Sun through Ketu plus Lagna).
21533
+ * Graha name, Sun through Ketu. The Lagna is not one of these entries; it is a house frame rather than a body, and the natal house numbers on every entry are counted from it.
20290
21534
  */
20291
21535
  name: string;
20292
21536
  /**
@@ -20303,7 +21547,7 @@ export type PostVedicAstrologyTransitResponses = {
20303
21547
  house: number;
20304
21548
  }>;
20305
21549
  /**
20306
- * Current planetary positions overlaid on the natal chart with house placements and aspects.
21550
+ * Current planetary positions overlaid on the natal chart with house placements, aspects, and the Gochara Kaksha verdict for each graha.
20307
21551
  */
20308
21552
  transitingPlanets: Array<{
20309
21553
  /**
@@ -20339,6 +21583,35 @@ export type PostVedicAstrologyTransitResponses = {
20339
21583
  */
20340
21584
  orb: number;
20341
21585
  }>;
21586
+ /**
21587
+ * Gochara Kaksha: the ashtakavarga-qualified reading of this transit. The sign says where a graha is, this says whether the exact stretch it currently occupies is one its own Bhinnashtakavarga supports, which is the classical way of refining a transit verdict from sign-level to under four degrees.
21588
+ */
21589
+ kaksha: {
21590
+ /**
21591
+ * Kaksha number 1-8 within the current sign. Each sign divides into eight kakshas of 3 degrees 45 minutes, crossed in order, so this is how far through the sign the graha has travelled.
21592
+ */
21593
+ number: number;
21594
+ /**
21595
+ * Graha ruling this kaksha. The eight lords run Saturn, Jupiter, Mars, Sun, Venus, Mercury, Moon, Lagna from the start of every sign, ordered by how long each takes to cross a sign.
21596
+ */
21597
+ lord: string;
21598
+ /**
21599
+ * Degree within the sign where this kaksha begins (0, 3.75, 7.5 and so on).
21600
+ */
21601
+ startDegree: number;
21602
+ /**
21603
+ * Degree within the sign where this kaksha ends.
21604
+ */
21605
+ endDegree: number;
21606
+ /**
21607
+ * Whether this kaksha lord gave the transiting graha a bindu in the sign being transited, which is the Gochara Kaksha verdict: true reads as a favourable stretch of the transit, false as an unfavourable one. Null means the question does not apply rather than that the answer is no, because Rahu and Ketu have no Bhinnashtakavarga to read. Never render null as unfavourable.
21608
+ */
21609
+ bindu: boolean | null;
21610
+ /**
21611
+ * Bindus the transiting graha holds in this whole sign, 0-8, or null for Rahu and Ketu. Context for the verdict, since the same kaksha reads differently in a sign worth 7 than in one worth 1.
21612
+ */
21613
+ binduCount: number | null;
21614
+ };
20342
21615
  }>;
20343
21616
  /**
20344
21617
  * Highlighted transits from slow-moving planets (Jupiter, Saturn, Rahu, Ketu), most impactful for Gochar analysis.
@@ -20694,7 +21967,7 @@ export type PostVedicAstrologyParallelsResponses = {
20694
21967
  */
20695
21968
  200: {
20696
21969
  /**
20697
- * UTC datetime used for declination calculation (ISO 8601).
21970
+ * Datetime used for the declination calculation, echoed as the local civil date and time supplied in the request (YYYY-MM-DDTHH:MM:SS). The timezone field of the request is what converts it to the instant the declinations are computed for.
20698
21971
  */
20699
21972
  datetime: string;
20700
21973
  /**
@@ -21602,21 +22875,136 @@ export type GetVedicAstrologyNakshatrasByIdErrors = {
21602
22875
  code: string;
21603
22876
  };
21604
22877
  };
21605
- export type GetVedicAstrologyNakshatrasByIdError = GetVedicAstrologyNakshatrasByIdErrors[keyof GetVedicAstrologyNakshatrasByIdErrors];
21606
- export type GetVedicAstrologyNakshatrasByIdResponses = {
22878
+ export type GetVedicAstrologyNakshatrasByIdError = GetVedicAstrologyNakshatrasByIdErrors[keyof GetVedicAstrologyNakshatrasByIdErrors];
22879
+ export type GetVedicAstrologyNakshatrasByIdResponses = {
22880
+ /**
22881
+ * Single nakshatra with zodiac range, ruling planet, presiding deity, symbol, personality characteristics, and traditional remedies (mantras, gemstones, rituals).
22882
+ */
22883
+ 200: NakshatraResponse;
22884
+ };
22885
+ export type GetVedicAstrologyNakshatrasByIdResponse = GetVedicAstrologyNakshatrasByIdResponses[keyof GetVedicAstrologyNakshatrasByIdResponses];
22886
+ export type PostVedicAstrologyUpagrahaData = {
22887
+ body?: UpagrahaRequest;
22888
+ path?: never;
22889
+ query?: never;
22890
+ url: '/vedic-astrology/upagraha';
22891
+ };
22892
+ export type PostVedicAstrologyUpagrahaErrors = {
22893
+ /**
22894
+ * Validation error. `issues[]` lists every failed field.
22895
+ */
22896
+ 400: {
22897
+ /**
22898
+ * First issue summary.
22899
+ */
22900
+ error: string;
22901
+ code: 'validation_error';
22902
+ /**
22903
+ * Every validation failure. Use this to rebuild a valid request.
22904
+ */
22905
+ issues: Array<{
22906
+ /**
22907
+ * Dot-separated field path, or "(root)" for top-level.
22908
+ */
22909
+ path: string;
22910
+ message: string;
22911
+ /**
22912
+ * Zod issue code (invalid_type, too_small, too_big, invalid_string, ...).
22913
+ */
22914
+ code?: string;
22915
+ /**
22916
+ * Expected type for invalid_type.
22917
+ */
22918
+ expected?: string;
22919
+ /**
22920
+ * Minimum bound for too_small issues.
22921
+ */
22922
+ minimum?: number | string;
22923
+ /**
22924
+ * Maximum bound for too_big issues.
22925
+ */
22926
+ maximum?: number | string;
22927
+ inclusive?: boolean;
22928
+ /**
22929
+ * Format name for string issues (regex, email, url, uuid).
22930
+ */
22931
+ format?: string;
22932
+ /**
22933
+ * Regex pattern when format is regex.
22934
+ */
22935
+ pattern?: string;
22936
+ }>;
22937
+ };
22938
+ /**
22939
+ * Invalid or missing API key
22940
+ */
22941
+ 401: {
22942
+ /**
22943
+ * Human-readable error message. May change wording.
22944
+ */
22945
+ error: string;
22946
+ /**
22947
+ * Machine-readable error code. Stable identifier.
22948
+ */
22949
+ code: string;
22950
+ };
22951
+ /**
22952
+ * Method not allowed. The path exists but only responds to the methods listed in `allow[]` and the `Allow` response header.
22953
+ */
22954
+ 405: {
22955
+ error: string;
22956
+ code: 'method_not_allowed';
22957
+ /**
22958
+ * Allowed HTTP methods for this path. Mirrors the Allow response header.
22959
+ */
22960
+ allow: Array<string>;
22961
+ /**
22962
+ * Link to the product page for this domain.
22963
+ */
22964
+ docs?: string;
22965
+ };
22966
+ /**
22967
+ * Monthly rate limit exceeded
22968
+ */
22969
+ 429: {
22970
+ /**
22971
+ * Human-readable error message. May change wording.
22972
+ */
22973
+ error: string;
22974
+ /**
22975
+ * Machine-readable error code. Stable identifier.
22976
+ */
22977
+ code: string;
22978
+ };
22979
+ /**
22980
+ * Internal server error
22981
+ */
22982
+ 500: {
22983
+ /**
22984
+ * Human-readable error message. May change wording.
22985
+ */
22986
+ error: string;
22987
+ /**
22988
+ * Machine-readable error code. Stable identifier.
22989
+ */
22990
+ code: string;
22991
+ };
22992
+ };
22993
+ export type PostVedicAstrologyUpagrahaError = PostVedicAstrologyUpagrahaErrors[keyof PostVedicAstrologyUpagrahaErrors];
22994
+ export type PostVedicAstrologyUpagrahaResponses = {
21607
22995
  /**
21608
- * Single nakshatra with zodiac range, ruling planet, presiding deity, symbol, personality characteristics, and traditional remedies (mantras, gemstones, rituals).
22996
+ * All 11 upagraha positions with rashi, nakshatra, and pada details.
21609
22997
  */
21610
- 200: NakshatraResponse;
22998
+ 200: UpagrahaResponse;
21611
22999
  };
21612
- export type GetVedicAstrologyNakshatrasByIdResponse = GetVedicAstrologyNakshatrasByIdResponses[keyof GetVedicAstrologyNakshatrasByIdResponses];
21613
- export type PostVedicAstrologyUpagrahaData = {
21614
- body?: UpagrahaRequest;
23000
+ export type PostVedicAstrologyUpagrahaResponse = PostVedicAstrologyUpagrahaResponses[keyof PostVedicAstrologyUpagrahaResponses];
23001
+ export type PostVedicAstrologyAshtakavargaData = {
23002
+ body?: AshtakavargaRequest;
21615
23003
  path?: never;
21616
23004
  query?: never;
21617
- url: '/vedic-astrology/upagraha';
23005
+ url: '/vedic-astrology/ashtakavarga';
21618
23006
  };
21619
- export type PostVedicAstrologyUpagrahaErrors = {
23007
+ export type PostVedicAstrologyAshtakavargaErrors = {
21620
23008
  /**
21621
23009
  * Validation error. `issues[]` lists every failed field.
21622
23010
  */
@@ -21717,21 +23105,26 @@ export type PostVedicAstrologyUpagrahaErrors = {
21717
23105
  code: string;
21718
23106
  };
21719
23107
  };
21720
- export type PostVedicAstrologyUpagrahaError = PostVedicAstrologyUpagrahaErrors[keyof PostVedicAstrologyUpagrahaErrors];
21721
- export type PostVedicAstrologyUpagrahaResponses = {
23108
+ export type PostVedicAstrologyAshtakavargaError = PostVedicAstrologyAshtakavargaErrors[keyof PostVedicAstrologyAshtakavargaErrors];
23109
+ export type PostVedicAstrologyAshtakavargaResponses = {
21722
23110
  /**
21723
- * All 11 upagraha positions with rashi, nakshatra, and pada details.
23111
+ * Complete Ashtakavarga with Bhinnashtakavarga, Sarvashtakavarga (337-point), Reduced Ashtakavarga (Trikona + Ekadipati Shodhana), and Shodhya Pinda planetary strength.
21724
23112
  */
21725
- 200: UpagrahaResponse;
23113
+ 200: AshtakavargaResponse;
21726
23114
  };
21727
- export type PostVedicAstrologyUpagrahaResponse = PostVedicAstrologyUpagrahaResponses[keyof PostVedicAstrologyUpagrahaResponses];
21728
- export type PostVedicAstrologyAshtakavargaData = {
21729
- body?: AshtakavargaRequest;
23115
+ export type PostVedicAstrologyAshtakavargaResponse = PostVedicAstrologyAshtakavargaResponses[keyof PostVedicAstrologyAshtakavargaResponses];
23116
+ export type PostVedicAstrologyShadbalaData = {
23117
+ body?: ShadbalaRequest;
21730
23118
  path?: never;
21731
- query?: never;
21732
- url: '/vedic-astrology/ashtakavarga';
23119
+ query?: {
23120
+ /**
23121
+ * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
23122
+ */
23123
+ lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
23124
+ };
23125
+ url: '/vedic-astrology/shadbala';
21733
23126
  };
21734
- export type PostVedicAstrologyAshtakavargaErrors = {
23127
+ export type PostVedicAstrologyShadbalaErrors = {
21735
23128
  /**
21736
23129
  * Validation error. `issues[]` lists every failed field.
21737
23130
  */
@@ -21832,21 +23225,30 @@ export type PostVedicAstrologyAshtakavargaErrors = {
21832
23225
  code: string;
21833
23226
  };
21834
23227
  };
21835
- export type PostVedicAstrologyAshtakavargaError = PostVedicAstrologyAshtakavargaErrors[keyof PostVedicAstrologyAshtakavargaErrors];
21836
- export type PostVedicAstrologyAshtakavargaResponses = {
23228
+ export type PostVedicAstrologyShadbalaError = PostVedicAstrologyShadbalaErrors[keyof PostVedicAstrologyShadbalaErrors];
23229
+ export type PostVedicAstrologyShadbalaResponses = {
21837
23230
  /**
21838
- * Complete Ashtakavarga with Bhinnashtakavarga, Sarvashtakavarga (337-point), Reduced Ashtakavarga (Trikona + Ekadipati Shodhana), and Shodhya Pinda planetary strength.
23231
+ * Complete Shadbala with 6 strength components, Ishta/Kashta Phala, strength ratios, and relative ranking for all 7 planets.
21839
23232
  */
21840
- 200: AshtakavargaResponse;
23233
+ 200: ShadbalaResponse;
21841
23234
  };
21842
- export type PostVedicAstrologyAshtakavargaResponse = PostVedicAstrologyAshtakavargaResponses[keyof PostVedicAstrologyAshtakavargaResponses];
21843
- export type PostVedicAstrologyShadbalaData = {
21844
- body?: ShadbalaRequest;
23235
+ export type PostVedicAstrologyShadbalaResponse = PostVedicAstrologyShadbalaResponses[keyof PostVedicAstrologyShadbalaResponses];
23236
+ export type GetVedicAstrologyAvasthasData = {
23237
+ body?: never;
21845
23238
  path?: never;
21846
- query?: never;
21847
- url: '/vedic-astrology/shadbala';
23239
+ query?: {
23240
+ /**
23241
+ * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
23242
+ */
23243
+ lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
23244
+ /**
23245
+ * Return only the states of one system: "baladi" (5), "jagradadi" (3) or "deeptadi" (9). Omit for all 17.
23246
+ */
23247
+ system?: 'baladi' | 'jagradadi' | 'deeptadi';
23248
+ };
23249
+ url: '/vedic-astrology/avasthas';
21848
23250
  };
21849
- export type PostVedicAstrologyShadbalaErrors = {
23251
+ export type GetVedicAstrologyAvasthasErrors = {
21850
23252
  /**
21851
23253
  * Validation error. `issues[]` lists every failed field.
21852
23254
  */
@@ -21947,30 +23349,52 @@ export type PostVedicAstrologyShadbalaErrors = {
21947
23349
  code: string;
21948
23350
  };
21949
23351
  };
21950
- export type PostVedicAstrologyShadbalaError = PostVedicAstrologyShadbalaErrors[keyof PostVedicAstrologyShadbalaErrors];
21951
- export type PostVedicAstrologyShadbalaResponses = {
23352
+ export type GetVedicAstrologyAvasthasError = GetVedicAstrologyAvasthasErrors[keyof GetVedicAstrologyAvasthasErrors];
23353
+ export type GetVedicAstrologyAvasthasResponses = {
21952
23354
  /**
21953
- * Complete Shadbala with 6 strength components, Ishta/Kashta Phala, strength ratios, and relative ranking for all 7 planets.
23355
+ * Avastha states with their labels and interpretations, in system order.
21954
23356
  */
21955
- 200: ShadbalaResponse;
23357
+ 200: Array<{
23358
+ /**
23359
+ * Unique slug for the avastha state. It is the lowercased form of the state name the birth chart returns, so a chart value maps straight onto this record.
23360
+ */
23361
+ id: string;
23362
+ /**
23363
+ * Sanskrit name of the state, exactly as it appears in the `awastha`, `jagradadi` or `deeptadi` field of a birth chart.
23364
+ */
23365
+ name: string;
23366
+ /**
23367
+ * Which avastha system the state belongs to, and therefore which birth-chart field it appears in. "baladi" is the five-fold age state set by degree within the sign and appears in `awastha`. "jagradadi" is the three-fold waking state set by sign dignity. "deeptadi" is the nine-fold dispositional state. Baladi applies to every body; the other two apply to the seven classical grahas only.
23368
+ */
23369
+ system: 'baladi' | 'jagradadi' | 'deeptadi';
23370
+ /**
23371
+ * Short label for the state, sized for a table cell beside the graha.
23372
+ */
23373
+ meaning: string;
23374
+ /**
23375
+ * What the state means for the results the graha delivers, which is the whole purpose of reading an avastha: the chart says where a graha is, the avastha says how much of its promise it can keep.
23376
+ */
23377
+ interpretation: string;
23378
+ }>;
21956
23379
  };
21957
- export type PostVedicAstrologyShadbalaResponse = PostVedicAstrologyShadbalaResponses[keyof PostVedicAstrologyShadbalaResponses];
21958
- export type GetVedicAstrologyAvasthasData = {
23380
+ export type GetVedicAstrologyAvasthasResponse = GetVedicAstrologyAvasthasResponses[keyof GetVedicAstrologyAvasthasResponses];
23381
+ export type GetVedicAstrologyAvasthasByIdData = {
21959
23382
  body?: never;
21960
- path?: never;
23383
+ path: {
23384
+ /**
23385
+ * Avastha slug. Baladi: bala, kumara, yuva, vriddha, mrita. Jagradadi: jagrat, swapna, sushupti. Deeptadi: dipta, svastha, pramudita, shanta, dina, duhkhita, vikala, khala, kopa.
23386
+ */
23387
+ id: 'bala' | 'kumara' | 'yuva' | 'vriddha' | 'mrita' | 'jagrat' | 'swapna' | 'sushupti' | 'dipta' | 'svastha' | 'pramudita' | 'shanta' | 'dina' | 'duhkhita' | 'vikala' | 'khala' | 'kopa';
23388
+ };
21961
23389
  query?: {
21962
23390
  /**
21963
23391
  * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
21964
23392
  */
21965
23393
  lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
21966
- /**
21967
- * Return only the states of one system: "baladi" (5), "jagradadi" (3) or "deeptadi" (9). Omit for all 17.
21968
- */
21969
- system?: 'baladi' | 'jagradadi' | 'deeptadi';
21970
23394
  };
21971
- url: '/vedic-astrology/avasthas';
23395
+ url: '/vedic-astrology/avasthas/{id}';
21972
23396
  };
21973
- export type GetVedicAstrologyAvasthasErrors = {
23397
+ export type GetVedicAstrologyAvasthasByIdErrors = {
21974
23398
  /**
21975
23399
  * Validation error. `issues[]` lists every failed field.
21976
23400
  */
@@ -22029,6 +23453,19 @@ export type GetVedicAstrologyAvasthasErrors = {
22029
23453
  */
22030
23454
  code: string;
22031
23455
  };
23456
+ /**
23457
+ * No avastha state matches that slug.
23458
+ */
23459
+ 404: {
23460
+ /**
23461
+ * Human-readable error message. May change wording — do not parse programmatically.
23462
+ */
23463
+ error: string;
23464
+ /**
23465
+ * Machine-readable error code. Stable identifier for programmatic error handling.
23466
+ */
23467
+ code: string;
23468
+ };
22032
23469
  /**
22033
23470
  * Method not allowed. The path exists but only responds to the methods listed in `allow[]` and the `Allow` response header.
22034
23471
  */
@@ -22071,12 +23508,12 @@ export type GetVedicAstrologyAvasthasErrors = {
22071
23508
  code: string;
22072
23509
  };
22073
23510
  };
22074
- export type GetVedicAstrologyAvasthasError = GetVedicAstrologyAvasthasErrors[keyof GetVedicAstrologyAvasthasErrors];
22075
- export type GetVedicAstrologyAvasthasResponses = {
23511
+ export type GetVedicAstrologyAvasthasByIdError = GetVedicAstrologyAvasthasByIdErrors[keyof GetVedicAstrologyAvasthasByIdErrors];
23512
+ export type GetVedicAstrologyAvasthasByIdResponses = {
22076
23513
  /**
22077
- * Avastha states with their labels and interpretations, in system order.
23514
+ * The avastha state with its system, label and interpretation.
22078
23515
  */
22079
- 200: Array<{
23516
+ 200: {
22080
23517
  /**
22081
23518
  * Unique slug for the avastha state. It is the lowercased form of the state name the birth chart returns, so a chart value maps straight onto this record.
22082
23519
  */
@@ -22097,26 +23534,141 @@ export type GetVedicAstrologyAvasthasResponses = {
22097
23534
  * What the state means for the results the graha delivers, which is the whole purpose of reading an avastha: the chart says where a graha is, the avastha says how much of its promise it can keep.
22098
23535
  */
22099
23536
  interpretation: string;
22100
- }>;
23537
+ };
22101
23538
  };
22102
- export type GetVedicAstrologyAvasthasResponse = GetVedicAstrologyAvasthasResponses[keyof GetVedicAstrologyAvasthasResponses];
22103
- export type GetVedicAstrologyAvasthasByIdData = {
22104
- body?: never;
22105
- path: {
23539
+ export type GetVedicAstrologyAvasthasByIdResponse = GetVedicAstrologyAvasthasByIdResponses[keyof GetVedicAstrologyAvasthasByIdResponses];
23540
+ export type PostVedicAstrologyArudhaData = {
23541
+ body?: ArudhaRequest;
23542
+ path?: never;
23543
+ query?: {
22106
23544
  /**
22107
- * Avastha slug. Baladi: bala, kumara, yuva, vriddha, mrita. Jagradadi: jagrat, swapna, sushupti. Deeptadi: dipta, svastha, pramudita, shanta, dina, duhkhita, vikala, khala, kopa.
23545
+ * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
22108
23546
  */
22109
- id: 'bala' | 'kumara' | 'yuva' | 'vriddha' | 'mrita' | 'jagrat' | 'swapna' | 'sushupti' | 'dipta' | 'svastha' | 'pramudita' | 'shanta' | 'dina' | 'duhkhita' | 'vikala' | 'khala' | 'kopa';
23547
+ lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
22110
23548
  };
23549
+ url: '/vedic-astrology/arudha';
23550
+ };
23551
+ export type PostVedicAstrologyArudhaErrors = {
23552
+ /**
23553
+ * Validation error. `issues[]` lists every failed field.
23554
+ */
23555
+ 400: {
23556
+ /**
23557
+ * First issue summary.
23558
+ */
23559
+ error: string;
23560
+ code: 'validation_error';
23561
+ /**
23562
+ * Every validation failure. Use this to rebuild a valid request.
23563
+ */
23564
+ issues: Array<{
23565
+ /**
23566
+ * Dot-separated field path, or "(root)" for top-level.
23567
+ */
23568
+ path: string;
23569
+ message: string;
23570
+ /**
23571
+ * Zod issue code (invalid_type, too_small, too_big, invalid_string, ...).
23572
+ */
23573
+ code?: string;
23574
+ /**
23575
+ * Expected type for invalid_type.
23576
+ */
23577
+ expected?: string;
23578
+ /**
23579
+ * Minimum bound for too_small issues.
23580
+ */
23581
+ minimum?: number | string;
23582
+ /**
23583
+ * Maximum bound for too_big issues.
23584
+ */
23585
+ maximum?: number | string;
23586
+ inclusive?: boolean;
23587
+ /**
23588
+ * Format name for string issues (regex, email, url, uuid).
23589
+ */
23590
+ format?: string;
23591
+ /**
23592
+ * Regex pattern when format is regex.
23593
+ */
23594
+ pattern?: string;
23595
+ }>;
23596
+ };
23597
+ /**
23598
+ * Invalid or missing API key
23599
+ */
23600
+ 401: {
23601
+ /**
23602
+ * Human-readable error message. May change wording.
23603
+ */
23604
+ error: string;
23605
+ /**
23606
+ * Machine-readable error code. Stable identifier.
23607
+ */
23608
+ code: string;
23609
+ };
23610
+ /**
23611
+ * Method not allowed. The path exists but only responds to the methods listed in `allow[]` and the `Allow` response header.
23612
+ */
23613
+ 405: {
23614
+ error: string;
23615
+ code: 'method_not_allowed';
23616
+ /**
23617
+ * Allowed HTTP methods for this path. Mirrors the Allow response header.
23618
+ */
23619
+ allow: Array<string>;
23620
+ /**
23621
+ * Link to the product page for this domain.
23622
+ */
23623
+ docs?: string;
23624
+ };
23625
+ /**
23626
+ * Monthly rate limit exceeded
23627
+ */
23628
+ 429: {
23629
+ /**
23630
+ * Human-readable error message. May change wording.
23631
+ */
23632
+ error: string;
23633
+ /**
23634
+ * Machine-readable error code. Stable identifier.
23635
+ */
23636
+ code: string;
23637
+ };
23638
+ /**
23639
+ * Internal server error
23640
+ */
23641
+ 500: {
23642
+ /**
23643
+ * Human-readable error message. May change wording.
23644
+ */
23645
+ error: string;
23646
+ /**
23647
+ * Machine-readable error code. Stable identifier.
23648
+ */
23649
+ code: string;
23650
+ };
23651
+ };
23652
+ export type PostVedicAstrologyArudhaError = PostVedicAstrologyArudhaErrors[keyof PostVedicAstrologyArudhaErrors];
23653
+ export type PostVedicAstrologyArudhaResponses = {
23654
+ /**
23655
+ * All twelve Arudha padas with derivation detail, plus the Arudha Lagna and Upapada lifted to the top level.
23656
+ */
23657
+ 200: ArudhaResponse;
23658
+ };
23659
+ export type PostVedicAstrologyArudhaResponse = PostVedicAstrologyArudhaResponses[keyof PostVedicAstrologyArudhaResponses];
23660
+ export type PostVedicAstrologyCharaKarakasData = {
23661
+ body?: CharaKarakaRequest;
23662
+ path?: never;
22111
23663
  query?: {
22112
23664
  /**
22113
23665
  * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
22114
23666
  */
22115
23667
  lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
22116
23668
  };
22117
- url: '/vedic-astrology/avasthas/{id}';
23669
+ url: '/vedic-astrology/chara-karakas';
22118
23670
  };
22119
- export type GetVedicAstrologyAvasthasByIdErrors = {
23671
+ export type PostVedicAstrologyCharaKarakasErrors = {
22120
23672
  /**
22121
23673
  * Validation error. `issues[]` lists every failed field.
22122
23674
  */
@@ -22175,19 +23727,6 @@ export type GetVedicAstrologyAvasthasByIdErrors = {
22175
23727
  */
22176
23728
  code: string;
22177
23729
  };
22178
- /**
22179
- * No avastha state matches that slug.
22180
- */
22181
- 404: {
22182
- /**
22183
- * Human-readable error message. May change wording — do not parse programmatically.
22184
- */
22185
- error: string;
22186
- /**
22187
- * Machine-readable error code. Stable identifier for programmatic error handling.
22188
- */
22189
- code: string;
22190
- };
22191
23730
  /**
22192
23731
  * Method not allowed. The path exists but only responds to the methods listed in `allow[]` and the `Allow` response header.
22193
23732
  */
@@ -22230,47 +23769,154 @@ export type GetVedicAstrologyAvasthasByIdErrors = {
22230
23769
  code: string;
22231
23770
  };
22232
23771
  };
22233
- export type GetVedicAstrologyAvasthasByIdError = GetVedicAstrologyAvasthasByIdErrors[keyof GetVedicAstrologyAvasthasByIdErrors];
22234
- export type GetVedicAstrologyAvasthasByIdResponses = {
23772
+ export type PostVedicAstrologyCharaKarakasError = PostVedicAstrologyCharaKarakasErrors[keyof PostVedicAstrologyCharaKarakasErrors];
23773
+ export type PostVedicAstrologyCharaKarakasResponses = {
22235
23774
  /**
22236
- * The avastha state with its system, label and interpretation.
23775
+ * Karaka offices in descending rank with the ranking degree for each, plus the Atmakaraka and Darakaraka lifted to the top level.
22237
23776
  */
22238
- 200: {
23777
+ 200: CharaKarakaResponse;
23778
+ };
23779
+ export type PostVedicAstrologyCharaKarakasResponse = PostVedicAstrologyCharaKarakasResponses[keyof PostVedicAstrologyCharaKarakasResponses];
23780
+ export type PostVedicAstrologyBhavaBalaData = {
23781
+ body?: BhavaBalaRequest;
23782
+ path?: never;
23783
+ query?: {
22239
23784
  /**
22240
- * Unique slug for the avastha state. It is the lowercased form of the state name the birth chart returns, so a chart value maps straight onto this record.
23785
+ * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
22241
23786
  */
22242
- id: string;
23787
+ lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
22243
23788
  /**
22244
- * Sanskrit name of the state, exactly as it appears in the `awastha`, `jagradadi` or `deeptadi` field of a birth chart.
23789
+ * Which signification vocabulary the houseThemes map returns. "general" gives the classical bhava significations (self, wealth, siblings, home, and so on). "finance" gives the money reading of the same twelve bhavas, so house 2 returns income and savings, 5 speculation and risk appetite, 8 sudden money and leverage, 11 gains and profits, and 12 expenses and capital outflow. Use "finance" for wealth, income, business and market timing questions in Krishnamurti Paddhati, where the significator house groups 2, 6, 10, 11 for earned income and 5, 8, 11 for speculation are read against a running dasha. Defaults to "general".
22245
23790
  */
22246
- name: string;
23791
+ focus?: 'general' | 'finance';
23792
+ };
23793
+ url: '/vedic-astrology/bhava-bala';
23794
+ };
23795
+ export type PostVedicAstrologyBhavaBalaErrors = {
23796
+ /**
23797
+ * Validation error. `issues[]` lists every failed field.
23798
+ */
23799
+ 400: {
22247
23800
  /**
22248
- * Which avastha system the state belongs to, and therefore which birth-chart field it appears in. "baladi" is the five-fold age state set by degree within the sign and appears in `awastha`. "jagradadi" is the three-fold waking state set by sign dignity. "deeptadi" is the nine-fold dispositional state. Baladi applies to every body; the other two apply to the seven classical grahas only.
23801
+ * First issue summary.
22249
23802
  */
22250
- system: 'baladi' | 'jagradadi' | 'deeptadi';
23803
+ error: string;
23804
+ code: 'validation_error';
22251
23805
  /**
22252
- * Short label for the state, sized for a table cell beside the graha.
23806
+ * Every validation failure. Use this to rebuild a valid request.
22253
23807
  */
22254
- meaning: string;
23808
+ issues: Array<{
23809
+ /**
23810
+ * Dot-separated field path, or "(root)" for top-level.
23811
+ */
23812
+ path: string;
23813
+ message: string;
23814
+ /**
23815
+ * Zod issue code (invalid_type, too_small, too_big, invalid_string, ...).
23816
+ */
23817
+ code?: string;
23818
+ /**
23819
+ * Expected type for invalid_type.
23820
+ */
23821
+ expected?: string;
23822
+ /**
23823
+ * Minimum bound for too_small issues.
23824
+ */
23825
+ minimum?: number | string;
23826
+ /**
23827
+ * Maximum bound for too_big issues.
23828
+ */
23829
+ maximum?: number | string;
23830
+ inclusive?: boolean;
23831
+ /**
23832
+ * Format name for string issues (regex, email, url, uuid).
23833
+ */
23834
+ format?: string;
23835
+ /**
23836
+ * Regex pattern when format is regex.
23837
+ */
23838
+ pattern?: string;
23839
+ }>;
23840
+ };
23841
+ /**
23842
+ * Invalid or missing API key
23843
+ */
23844
+ 401: {
22255
23845
  /**
22256
- * What the state means for the results the graha delivers, which is the whole purpose of reading an avastha: the chart says where a graha is, the avastha says how much of its promise it can keep.
23846
+ * Human-readable error message. May change wording.
22257
23847
  */
22258
- interpretation: string;
23848
+ error: string;
23849
+ /**
23850
+ * Machine-readable error code. Stable identifier.
23851
+ */
23852
+ code: string;
23853
+ };
23854
+ /**
23855
+ * Method not allowed. The path exists but only responds to the methods listed in `allow[]` and the `Allow` response header.
23856
+ */
23857
+ 405: {
23858
+ error: string;
23859
+ code: 'method_not_allowed';
23860
+ /**
23861
+ * Allowed HTTP methods for this path. Mirrors the Allow response header.
23862
+ */
23863
+ allow: Array<string>;
23864
+ /**
23865
+ * Link to the product page for this domain.
23866
+ */
23867
+ docs?: string;
23868
+ };
23869
+ /**
23870
+ * Monthly rate limit exceeded
23871
+ */
23872
+ 429: {
23873
+ /**
23874
+ * Human-readable error message. May change wording.
23875
+ */
23876
+ error: string;
23877
+ /**
23878
+ * Machine-readable error code. Stable identifier.
23879
+ */
23880
+ code: string;
23881
+ };
23882
+ /**
23883
+ * Internal server error
23884
+ */
23885
+ 500: {
23886
+ /**
23887
+ * Human-readable error message. May change wording.
23888
+ */
23889
+ error: string;
23890
+ /**
23891
+ * Machine-readable error code. Stable identifier.
23892
+ */
23893
+ code: string;
22259
23894
  };
22260
23895
  };
22261
- export type GetVedicAstrologyAvasthasByIdResponse = GetVedicAstrologyAvasthasByIdResponses[keyof GetVedicAstrologyAvasthasByIdResponses];
22262
- export type PostVedicAstrologyArudhaData = {
22263
- body?: ArudhaRequest;
23896
+ export type PostVedicAstrologyBhavaBalaError = PostVedicAstrologyBhavaBalaErrors[keyof PostVedicAstrologyBhavaBalaErrors];
23897
+ export type PostVedicAstrologyBhavaBalaResponses = {
23898
+ /**
23899
+ * Bhava Bala for all twelve houses with the three components, totals in virupas and rupas, ranking, and the localized house-theme legend.
23900
+ */
23901
+ 200: BhavaBalaResponse;
23902
+ };
23903
+ export type PostVedicAstrologyBhavaBalaResponse = PostVedicAstrologyBhavaBalaResponses[keyof PostVedicAstrologyBhavaBalaResponses];
23904
+ export type PostVedicAstrologyBhavChalitData = {
23905
+ body?: BhavChalitRequest;
22264
23906
  path?: never;
22265
23907
  query?: {
22266
23908
  /**
22267
23909
  * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
22268
23910
  */
22269
23911
  lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
23912
+ /**
23913
+ * Which signification vocabulary the houseThemes map returns. "general" gives the classical bhava significations (self, wealth, siblings, home, and so on). "finance" gives the money reading of the same twelve bhavas, so house 2 returns income and savings, 5 speculation and risk appetite, 8 sudden money and leverage, 11 gains and profits, and 12 expenses and capital outflow. Use "finance" for wealth, income, business and market timing questions in Krishnamurti Paddhati, where the significator house groups 2, 6, 10, 11 for earned income and 5, 8, 11 for speculation are read against a running dasha. Defaults to "general".
23914
+ */
23915
+ focus?: 'general' | 'finance';
22270
23916
  };
22271
- url: '/vedic-astrology/arudha';
23917
+ url: '/vedic-astrology/bhav-chalit';
22272
23918
  };
22273
- export type PostVedicAstrologyArudhaErrors = {
23919
+ export type PostVedicAstrologyBhavChalitErrors = {
22274
23920
  /**
22275
23921
  * Validation error. `issues[]` lists every failed field.
22276
23922
  */
@@ -22371,26 +24017,21 @@ export type PostVedicAstrologyArudhaErrors = {
22371
24017
  code: string;
22372
24018
  };
22373
24019
  };
22374
- export type PostVedicAstrologyArudhaError = PostVedicAstrologyArudhaErrors[keyof PostVedicAstrologyArudhaErrors];
22375
- export type PostVedicAstrologyArudhaResponses = {
24020
+ export type PostVedicAstrologyBhavChalitError = PostVedicAstrologyBhavChalitErrors[keyof PostVedicAstrologyBhavChalitErrors];
24021
+ export type PostVedicAstrologyBhavChalitResponses = {
22376
24022
  /**
22377
- * All twelve Arudha padas with derivation detail, plus the Arudha Lagna and Upapada lifted to the top level.
24023
+ * Bhav Chalit chart with the twelve Sripati bhavas, every graha in both frames, and the localized house-theme legend.
22378
24024
  */
22379
- 200: ArudhaResponse;
24025
+ 200: BhavChalitResponse;
22380
24026
  };
22381
- export type PostVedicAstrologyArudhaResponse = PostVedicAstrologyArudhaResponses[keyof PostVedicAstrologyArudhaResponses];
22382
- export type PostVedicAstrologyCharaKarakasData = {
22383
- body?: CharaKarakaRequest;
24027
+ export type PostVedicAstrologyBhavChalitResponse = PostVedicAstrologyBhavChalitResponses[keyof PostVedicAstrologyBhavChalitResponses];
24028
+ export type PostVedicAstrologyHeliacalData = {
24029
+ body?: HeliacalRequest;
22384
24030
  path?: never;
22385
- query?: {
22386
- /**
22387
- * Response language (ISO 639-1). Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. Languages without translations yet return English.
22388
- */
22389
- lang?: 'en' | 'tr' | 'de' | 'es' | 'hi' | 'pt' | 'fr' | 'ru';
22390
- };
22391
- url: '/vedic-astrology/chara-karakas';
24031
+ query?: never;
24032
+ url: '/vedic-astrology/heliacal';
22392
24033
  };
22393
- export type PostVedicAstrologyCharaKarakasErrors = {
24034
+ export type PostVedicAstrologyHeliacalErrors = {
22394
24035
  /**
22395
24036
  * Validation error. `issues[]` lists every failed field.
22396
24037
  */
@@ -22491,14 +24132,14 @@ export type PostVedicAstrologyCharaKarakasErrors = {
22491
24132
  code: string;
22492
24133
  };
22493
24134
  };
22494
- export type PostVedicAstrologyCharaKarakasError = PostVedicAstrologyCharaKarakasErrors[keyof PostVedicAstrologyCharaKarakasErrors];
22495
- export type PostVedicAstrologyCharaKarakasResponses = {
24135
+ export type PostVedicAstrologyHeliacalError = PostVedicAstrologyHeliacalErrors[keyof PostVedicAstrologyHeliacalErrors];
24136
+ export type PostVedicAstrologyHeliacalResponses = {
22496
24137
  /**
22497
- * Karaka offices in descending rank with the ranking degree for each, plus the Atmakaraka and Darakaraka lifted to the top level.
24138
+ * Heliacal visibility and the surrounding udaya and asta events for each graha.
22498
24139
  */
22499
- 200: CharaKarakaResponse;
24140
+ 200: HeliacalResponse;
22500
24141
  };
22501
- export type PostVedicAstrologyCharaKarakasResponse = PostVedicAstrologyCharaKarakasResponses[keyof PostVedicAstrologyCharaKarakasResponses];
24142
+ export type PostVedicAstrologyHeliacalResponse = PostVedicAstrologyHeliacalResponses[keyof PostVedicAstrologyHeliacalResponses];
22502
24143
  export type PostForecastTimelineData = {
22503
24144
  body?: {
22504
24145
  /**
@@ -23546,20 +25187,50 @@ export type PostForecastDigestResponses = {
23546
25187
  * Count of events in this window broken down by domain. Only domains with at least one event in the window are present. The values sum to count.
23547
25188
  */
23548
25189
  byDomain: {
25190
+ /**
25191
+ * Number of events in this window produced by this forecast domain. Absent when the domain contributed nothing, so a zero is never written.
25192
+ */
23549
25193
  western?: number;
25194
+ /**
25195
+ * Number of events in this window produced by this forecast domain. Absent when the domain contributed nothing, so a zero is never written.
25196
+ */
23550
25197
  vedic?: number;
25198
+ /**
25199
+ * Number of events in this window produced by this forecast domain. Absent when the domain contributed nothing, so a zero is never written.
25200
+ */
23551
25201
  biorhythm?: number;
23552
25202
  };
23553
25203
  /**
23554
25204
  * Count of events in this window broken down by event type. Only types with at least one event in the window are present. The values sum to count.
23555
25205
  */
23556
25206
  byType: {
25207
+ /**
25208
+ * Number of events in this window of this event type. Absent when the type did not occur, so a zero is never written.
25209
+ */
23557
25210
  'transit-aspect'?: number;
25211
+ /**
25212
+ * Number of events in this window of this event type. Absent when the type did not occur, so a zero is never written.
25213
+ */
23558
25214
  'sign-ingress'?: number;
25215
+ /**
25216
+ * Number of events in this window of this event type. Absent when the type did not occur, so a zero is never written.
25217
+ */
23559
25218
  'retrograde-station'?: number;
25219
+ /**
25220
+ * Number of events in this window of this event type. Absent when the type did not occur, so a zero is never written.
25221
+ */
23560
25222
  eclipse?: number;
25223
+ /**
25224
+ * Number of events in this window of this event type. Absent when the type did not occur, so a zero is never written.
25225
+ */
23561
25226
  'lunar-phase'?: number;
25227
+ /**
25228
+ * Number of events in this window of this event type. Absent when the type did not occur, so a zero is never written.
25229
+ */
23562
25230
  'dasha-change'?: number;
25231
+ /**
25232
+ * Number of events in this window of this event type. Absent when the type did not occur, so a zero is never written.
25233
+ */
23563
25234
  'critical-day'?: number;
23564
25235
  };
23565
25236
  /**
@@ -25570,7 +27241,7 @@ export type GetHumanDesignGatesByNumberData = {
25570
27241
  /**
25571
27242
  * Gate number from 1 to 64.
25572
27243
  */
25573
- number: number;
27244
+ number: number | null;
25574
27245
  };
25575
27246
  query?: {
25576
27247
  /**
@@ -26667,7 +28338,13 @@ export type PostHumanDesignVariablesResponses = {
26667
28338
  * Cognition, the strongest sense, read off the Determination Tone. Present on the determination arrow ONLY: no authority supports reading Cognition from the other three arrows, so it is omitted rather than invented.
26668
28339
  */
26669
28340
  cognition?: {
28341
+ /**
28342
+ * Name of the Cognition, the strongest sense. One of six read off the Determination Tone: Smell, Taste, Outer Vision, Inner Vision, Feeling, Touch.
28343
+ */
26670
28344
  label: string;
28345
+ /**
28346
+ * How this Cognition discriminates what is correct for the body, and the conditions that sharpen it. Renderable as the Cognition paragraph of a Variables or Primary Health System report.
28347
+ */
26671
28348
  description: string;
26672
28349
  };
26673
28350
  /**
@@ -29877,7 +31554,7 @@ export type PostNumerologyChartResponses = {
29877
31554
  /**
29878
31555
  * Age when this phase ends. Null for the 4th Pinnacle (lasts rest of life).
29879
31556
  */
29880
- endAge: number;
31557
+ endAge: number | null;
29881
31558
  /**
29882
31559
  * Meaning and interpretation for this Pinnacle number.
29883
31560
  */
@@ -29919,7 +31596,7 @@ export type PostNumerologyChartResponses = {
29919
31596
  /**
29920
31597
  * Age when this period ends. Null for the 4th Challenge.
29921
31598
  */
29922
- endAge: number;
31599
+ endAge: number | null;
29923
31600
  /**
29924
31601
  * Meaning and resolution guidance for this Challenge number.
29925
31602
  */
@@ -30642,7 +32319,7 @@ export type PostNumerologyChaldeanResponses = {
30642
32319
  /**
30643
32320
  * The interpretable compound number (10 to 52), the hidden influence behind the name, or null when the total resolves below 10.
30644
32321
  */
30645
- compound: number;
32322
+ compound: number | null;
30646
32323
  /**
30647
32324
  * The single-digit root (1 to 9), the outward expression. Chaldean does not preserve master numbers.
30648
32325
  */
@@ -30662,7 +32339,7 @@ export type PostNumerologyChaldeanResponses = {
30662
32339
  /**
30663
32340
  * Classical symbolic title from Cheiro, or null when the number has no named symbol.
30664
32341
  */
30665
- name: string;
32342
+ name: string | null;
30666
32343
  /**
30667
32344
  * Overall tenor of the compound. "mixed" covers conditional numbers that are fortunate only alongside a favorable single number or in a specific domain.
30668
32345
  */
@@ -30675,7 +32352,7 @@ export type PostNumerologyChaldeanResponses = {
30675
32352
  * For numbers 33 to 52, the lower compound in the same series whose meaning this number shares.
30676
32353
  */
30677
32354
  sameAs?: number;
30678
- };
32355
+ } | null;
30679
32356
  };
30680
32357
  /**
30681
32358
  * The Soul Urge number from the vowels, revealing inner desire. Root may be 0 when the name has no vowels.
@@ -30688,7 +32365,7 @@ export type PostNumerologyChaldeanResponses = {
30688
32365
  /**
30689
32366
  * The interpretable compound number (10 to 52), the hidden influence behind the name, or null when the total resolves below 10.
30690
32367
  */
30691
- compound: number;
32368
+ compound: number | null;
30692
32369
  /**
30693
32370
  * The single-digit root (1 to 9), the outward expression. Chaldean does not preserve master numbers.
30694
32371
  */
@@ -30708,7 +32385,7 @@ export type PostNumerologyChaldeanResponses = {
30708
32385
  /**
30709
32386
  * Classical symbolic title from Cheiro, or null when the number has no named symbol.
30710
32387
  */
30711
- name: string;
32388
+ name: string | null;
30712
32389
  /**
30713
32390
  * Overall tenor of the compound. "mixed" covers conditional numbers that are fortunate only alongside a favorable single number or in a specific domain.
30714
32391
  */
@@ -30721,7 +32398,7 @@ export type PostNumerologyChaldeanResponses = {
30721
32398
  * For numbers 33 to 52, the lower compound in the same series whose meaning this number shares.
30722
32399
  */
30723
32400
  sameAs?: number;
30724
- };
32401
+ } | null;
30725
32402
  };
30726
32403
  /**
30727
32404
  * The Personality number from the consonants, revealing the outer impression. Root may be 0 when the name has no consonants.
@@ -30734,7 +32411,7 @@ export type PostNumerologyChaldeanResponses = {
30734
32411
  /**
30735
32412
  * The interpretable compound number (10 to 52), the hidden influence behind the name, or null when the total resolves below 10.
30736
32413
  */
30737
- compound: number;
32414
+ compound: number | null;
30738
32415
  /**
30739
32416
  * The single-digit root (1 to 9), the outward expression. Chaldean does not preserve master numbers.
30740
32417
  */
@@ -30754,7 +32431,7 @@ export type PostNumerologyChaldeanResponses = {
30754
32431
  /**
30755
32432
  * Classical symbolic title from Cheiro, or null when the number has no named symbol.
30756
32433
  */
30757
- name: string;
32434
+ name: string | null;
30758
32435
  /**
30759
32436
  * Overall tenor of the compound. "mixed" covers conditional numbers that are fortunate only alongside a favorable single number or in a specific domain.
30760
32437
  */
@@ -30767,7 +32444,7 @@ export type PostNumerologyChaldeanResponses = {
30767
32444
  * For numbers 33 to 52, the lower compound in the same series whose meaning this number shares.
30768
32445
  */
30769
32446
  sameAs?: number;
30770
- };
32447
+ } | null;
30771
32448
  };
30772
32449
  numberMeaning: {
30773
32450
  /**
@@ -30936,7 +32613,7 @@ export type GetNumerologyCompoundNumberByNumberResponses = {
30936
32613
  /**
30937
32614
  * Classical symbolic title from Cheiro, or null when none is given.
30938
32615
  */
30939
- name: string;
32616
+ name: string | null;
30940
32617
  /**
30941
32618
  * Overall tenor of the number. "mixed" marks conditional numbers, fortunate only with a favorable single number or in one domain.
30942
32619
  */
@@ -31109,7 +32786,7 @@ export type PostNumerologyDualResponses = {
31109
32786
  /**
31110
32787
  * Chaldean compound number (10 to 52), the hidden influence, or null.
31111
32788
  */
31112
- compound: number;
32789
+ compound: number | null;
31113
32790
  /**
31114
32791
  * Chaldean root (1 to 9).
31115
32792
  */
@@ -31145,7 +32822,7 @@ export type PostNumerologyDualResponses = {
31145
32822
  /**
31146
32823
  * Symbolic title.
31147
32824
  */
31148
- name: string;
32825
+ name: string | null;
31149
32826
  /**
31150
32827
  * Tenor of the compound.
31151
32828
  */
@@ -31158,7 +32835,7 @@ export type PostNumerologyDualResponses = {
31158
32835
  * Series equivalent for 33 to 52.
31159
32836
  */
31160
32837
  sameAs?: number;
31161
- };
32838
+ } | null;
31162
32839
  };
31163
32840
  /**
31164
32841
  * True when both systems reduce to the same single-digit energy (Pythagorean number reduced to one digit equals the Chaldean root). Agreement is read as a name whose vibrations are in harmony.
@@ -31305,7 +32982,7 @@ export type PostNumerologyBusinessNameResponses = {
31305
32982
  /**
31306
32983
  * Chaldean compound number (10 to 52), the hidden influence, or null.
31307
32984
  */
31308
- compound: number;
32985
+ compound: number | null;
31309
32986
  /**
31310
32987
  * Single-digit business root (1 to 9), the outward commercial expression.
31311
32988
  */
@@ -31345,7 +33022,7 @@ export type PostNumerologyBusinessNameResponses = {
31345
33022
  /**
31346
33023
  * Symbolic title, if any.
31347
33024
  */
31348
- name: string;
33025
+ name: string | null;
31349
33026
  /**
31350
33027
  * Tenor of the compound.
31351
33028
  */
@@ -31358,7 +33035,7 @@ export type PostNumerologyBusinessNameResponses = {
31358
33035
  * Series equivalent for 33 to 52.
31359
33036
  */
31360
33037
  sameAs?: number;
31361
- };
33038
+ } | null;
31362
33039
  /**
31363
33040
  * One-line plain-language verdict for the business name.
31364
33041
  */
@@ -31381,7 +33058,7 @@ export type GetTarotCardsData = {
31381
33058
  /**
31382
33059
  * Number of items to skip for pagination. Default 0.
31383
33060
  */
31384
- offset?: number;
33061
+ offset?: number | null;
31385
33062
  /**
31386
33063
  * Filter by arcana type. Major arcana (0-21) represents life lessons and spiritual themes. Minor arcana (Ace-King in 4 suits) represents daily situations and practical matters.
31387
33064
  */
@@ -31393,7 +33070,7 @@ export type GetTarotCardsData = {
31393
33070
  /**
31394
33071
  * Filter by card number. Major Arcana: 0 (The Fool) through 21 (The World). Minor Arcana: 1 (Ace) through 14 (King). Combine with arcana or suit filters for precise results.
31395
33072
  */
31396
- number?: number;
33073
+ number?: number | null;
31397
33074
  };
31398
33075
  url: '/tarot/cards';
31399
33076
  };
@@ -32284,7 +33961,7 @@ export type PostTarotSpreadsThreeCardResponses = {
32284
33961
  card: DrawnCard;
32285
33962
  }>;
32286
33963
  /**
32287
- * AI-generated narrative connecting all cards in the spread into a cohesive reading.
33964
+ * Narrative summary that connects the cards drawn across the spread positions into one cohesive reading.
32288
33965
  */
32289
33966
  summary?: string;
32290
33967
  };
@@ -32292,7 +33969,13 @@ export type PostTarotSpreadsThreeCardResponses = {
32292
33969
  export type PostTarotSpreadsThreeCardResponse = PostTarotSpreadsThreeCardResponses[keyof PostTarotSpreadsThreeCardResponses];
32293
33970
  export type PostTarotSpreadsCelticCrossData = {
32294
33971
  body: {
33972
+ /**
33973
+ * Optional querent question to focus the Celtic Cross. It is echoed back on the reading and gives the ten positions their context. Omit for a general reading of the situation.
33974
+ */
32295
33975
  question?: string;
33976
+ /**
33977
+ * Optional seed for reproducible results. The same seed always draws the same ten cards into the same Celtic Cross positions, which is what lets a reading be shared or re-rendered. Omit for a random draw.
33978
+ */
32296
33979
  seed?: string;
32297
33980
  };
32298
33981
  path?: never;
@@ -32442,7 +34125,7 @@ export type PostTarotSpreadsCelticCrossResponses = {
32442
34125
  card: DrawnCard;
32443
34126
  }>;
32444
34127
  /**
32445
- * AI-generated narrative connecting all cards in the spread into a cohesive reading.
34128
+ * Narrative summary that connects the cards drawn across the spread positions into one cohesive reading.
32446
34129
  */
32447
34130
  summary?: string;
32448
34131
  };
@@ -32450,7 +34133,13 @@ export type PostTarotSpreadsCelticCrossResponses = {
32450
34133
  export type PostTarotSpreadsCelticCrossResponse = PostTarotSpreadsCelticCrossResponses[keyof PostTarotSpreadsCelticCrossResponses];
32451
34134
  export type PostTarotSpreadsLoveData = {
32452
34135
  body: {
34136
+ /**
34137
+ * Optional querent question to focus the love spread. It is echoed back on the reading and gives the five relationship positions their context. Omit for general relationship guidance.
34138
+ */
32453
34139
  question?: string;
34140
+ /**
34141
+ * Optional seed for reproducible results. The same seed always draws the same five cards into the same love positions, which is what lets a reading be shared or re-rendered. Omit for a random draw.
34142
+ */
32454
34143
  seed?: string;
32455
34144
  };
32456
34145
  path?: never;
@@ -32600,7 +34289,7 @@ export type PostTarotSpreadsLoveResponses = {
32600
34289
  card: DrawnCard;
32601
34290
  }>;
32602
34291
  /**
32603
- * AI-generated narrative connecting all cards in the spread into a cohesive reading.
34292
+ * Narrative summary that connects the cards drawn across the spread positions into one cohesive reading.
32604
34293
  */
32605
34294
  summary?: string;
32606
34295
  };
@@ -32608,7 +34297,13 @@ export type PostTarotSpreadsLoveResponses = {
32608
34297
  export type PostTarotSpreadsLoveResponse = PostTarotSpreadsLoveResponses[keyof PostTarotSpreadsLoveResponses];
32609
34298
  export type PostTarotSpreadsCareerData = {
32610
34299
  body: {
34300
+ /**
34301
+ * Optional querent question to focus the career spread. It is echoed back on the reading and gives the five career positions their context. Omit for general work and vocation guidance.
34302
+ */
32611
34303
  question?: string;
34304
+ /**
34305
+ * Optional seed for reproducible results. The same seed always draws the same five cards into the same career positions, which is what lets a reading be shared or re-rendered. Omit for a random draw.
34306
+ */
32612
34307
  seed?: string;
32613
34308
  };
32614
34309
  path?: never;
@@ -32758,7 +34453,7 @@ export type PostTarotSpreadsCareerResponses = {
32758
34453
  card: DrawnCard;
32759
34454
  }>;
32760
34455
  /**
32761
- * AI-generated narrative connecting all cards in the spread into a cohesive reading.
34456
+ * Narrative summary that connects the cards drawn across the spread positions into one cohesive reading.
32762
34457
  */
32763
34458
  summary?: string;
32764
34459
  };
@@ -32938,10 +34633,6 @@ export type PostTarotSpreadsCustomResponses = {
32938
34633
  interpretation: string;
32939
34634
  card: DrawnCard;
32940
34635
  }>;
32941
- /**
32942
- * AI-generated narrative connecting all cards in the spread into a cohesive reading.
32943
- */
32944
- summary?: string;
32945
34636
  };
32946
34637
  };
32947
34638
  export type PostTarotSpreadsCustomResponse = PostTarotSpreadsCustomResponses[keyof PostTarotSpreadsCustomResponses];
@@ -33567,7 +35258,7 @@ export type PostBiorhythmCriticalDaysResponses = {
33567
35258
  /**
33568
35259
  * Date where all 3 primary cycles cross zero simultaneously. Extremely rare event. Null if none found in range.
33569
35260
  */
33570
- tripleCriticalDay: string;
35261
+ tripleCriticalDay: string | null;
33571
35262
  };
33572
35263
  };
33573
35264
  export type PostBiorhythmCriticalDaysResponse = PostBiorhythmCriticalDaysResponses[keyof PostBiorhythmCriticalDaysResponses];
@@ -34656,7 +36347,7 @@ export type GetIchingHexagramsData = {
34656
36347
  /**
34657
36348
  * Number of items to skip for pagination. Default 0.
34658
36349
  */
34659
- offset?: number;
36350
+ offset?: number | null;
34660
36351
  };
34661
36352
  url: '/iching/hexagrams';
34662
36353
  };
@@ -35620,7 +37311,7 @@ export type GetCrystalsZodiacBySignData = {
35620
37311
  /**
35621
37312
  * Number of items to skip for pagination. Default 0.
35622
37313
  */
35623
- offset?: number;
37314
+ offset?: number | null;
35624
37315
  };
35625
37316
  url: '/crystals/zodiac/{sign}';
35626
37317
  };
@@ -35762,11 +37453,11 @@ export type GetCrystalsZodiacBySignResponses = {
35762
37453
  /**
35763
37454
  * URL to crystal photograph for visual identification.
35764
37455
  */
35765
- imageUrl: string;
37456
+ imageUrl: string | null;
35766
37457
  /**
35767
37458
  * Primary colors of this crystal variety. Null when color data is unavailable.
35768
37459
  */
35769
- colors: Array<string>;
37460
+ colors: Array<string> | null;
35770
37461
  }>;
35771
37462
  };
35772
37463
  };
@@ -35791,7 +37482,7 @@ export type GetCrystalsChakraByChakraData = {
35791
37482
  /**
35792
37483
  * Number of items to skip for pagination. Default 0.
35793
37484
  */
35794
- offset?: number;
37485
+ offset?: number | null;
35795
37486
  };
35796
37487
  url: '/crystals/chakra/{chakra}';
35797
37488
  };
@@ -35933,11 +37624,11 @@ export type GetCrystalsChakraByChakraResponses = {
35933
37624
  /**
35934
37625
  * URL to crystal photograph for visual identification.
35935
37626
  */
35936
- imageUrl: string;
37627
+ imageUrl: string | null;
35937
37628
  /**
35938
37629
  * Primary colors of this crystal variety. Null when color data is unavailable.
35939
37630
  */
35940
- colors: Array<string>;
37631
+ colors: Array<string> | null;
35941
37632
  }>;
35942
37633
  };
35943
37634
  };
@@ -35962,7 +37653,7 @@ export type GetCrystalsElementByElementData = {
35962
37653
  /**
35963
37654
  * Number of items to skip for pagination. Default 0.
35964
37655
  */
35965
- offset?: number;
37656
+ offset?: number | null;
35966
37657
  };
35967
37658
  url: '/crystals/element/{element}';
35968
37659
  };
@@ -36104,11 +37795,11 @@ export type GetCrystalsElementByElementResponses = {
36104
37795
  /**
36105
37796
  * URL to crystal photograph for visual identification.
36106
37797
  */
36107
- imageUrl: string;
37798
+ imageUrl: string | null;
36108
37799
  /**
36109
37800
  * Primary colors of this crystal variety. Null when color data is unavailable.
36110
37801
  */
36111
- colors: Array<string>;
37802
+ colors: Array<string> | null;
36112
37803
  }>;
36113
37804
  };
36114
37805
  };
@@ -36263,11 +37954,11 @@ export type GetCrystalsBirthstoneByMonthResponses = {
36263
37954
  /**
36264
37955
  * URL to crystal photograph for visual identification.
36265
37956
  */
36266
- imageUrl: string;
37957
+ imageUrl: string | null;
36267
37958
  /**
36268
37959
  * Primary colors of this crystal variety. Null when color data is unavailable.
36269
37960
  */
36270
- colors: Array<string>;
37961
+ colors: Array<string> | null;
36271
37962
  }>;
36272
37963
  };
36273
37964
  };
@@ -36291,7 +37982,7 @@ export type GetCrystalsSearchData = {
36291
37982
  /**
36292
37983
  * Number of items to skip for pagination. Default 0.
36293
37984
  */
36294
- offset?: number;
37985
+ offset?: number | null;
36295
37986
  };
36296
37987
  url: '/crystals/search';
36297
37988
  };
@@ -36433,11 +38124,11 @@ export type GetCrystalsSearchResponses = {
36433
38124
  /**
36434
38125
  * URL to crystal photograph for visual identification.
36435
38126
  */
36436
- imageUrl: string;
38127
+ imageUrl: string | null;
36437
38128
  /**
36438
38129
  * Primary colors of this crystal variety. Null when color data is unavailable.
36439
38130
  */
36440
- colors: Array<string>;
38131
+ colors: Array<string> | null;
36441
38132
  }>;
36442
38133
  };
36443
38134
  };
@@ -36605,7 +38296,7 @@ export type GetCrystalsPairingsByIdResponses = {
36605
38296
  /**
36606
38297
  * URL to paired crystal photograph.
36607
38298
  */
36608
- imageUrl: string;
38299
+ imageUrl: string | null;
36609
38300
  /**
36610
38301
  * Brief overview of the paired crystal.
36611
38302
  */
@@ -36617,7 +38308,7 @@ export type GetCrystalsPairingsByIdResponses = {
36617
38308
  /**
36618
38309
  * Healing property keywords for the paired crystal. Null when keyword data is unavailable.
36619
38310
  */
36620
- keywords: Array<string>;
38311
+ keywords: Array<string> | null;
36621
38312
  }>;
36622
38313
  };
36623
38314
  };
@@ -36768,7 +38459,7 @@ export type PostCrystalsDailyResponses = {
36768
38459
  /**
36769
38460
  * URL to crystal photograph. Use for daily crystal card display and visual features.
36770
38461
  */
36771
- imageUrl: string;
38462
+ imageUrl: string | null;
36772
38463
  /**
36773
38464
  * Overview of the crystal covering primary healing purpose and benefits.
36774
38465
  */
@@ -36780,7 +38471,7 @@ export type PostCrystalsDailyResponses = {
36780
38471
  /**
36781
38472
  * Zodiac signs this crystal is traditionally associated with. Null when zodiac data is unavailable.
36782
38473
  */
36783
- zodiacSigns: Array<string>;
38474
+ zodiacSigns: Array<string> | null;
36784
38475
  /**
36785
38476
  * Positive affirmation aligned with the selected crystal. Use for daily affirmation features and meditation guidance.
36786
38477
  */
@@ -36917,7 +38608,7 @@ export type GetCrystalsRandomResponses = {
36917
38608
  /**
36918
38609
  * URL to crystal photograph for visual display.
36919
38610
  */
36920
- imageUrl: string;
38611
+ imageUrl: string | null;
36921
38612
  /**
36922
38613
  * Overview of the crystal covering primary healing purpose and benefits.
36923
38614
  */
@@ -36929,7 +38620,7 @@ export type GetCrystalsRandomResponses = {
36929
38620
  /**
36930
38621
  * Zodiac signs this crystal is traditionally associated with. Null when zodiac data is unavailable.
36931
38622
  */
36932
- zodiacSigns: Array<string>;
38623
+ zodiacSigns: Array<string> | null;
36933
38624
  /**
36934
38625
  * Positive affirmation aligned with the selected crystal energy.
36935
38626
  */
@@ -37220,7 +38911,7 @@ export type GetCrystalsData = {
37220
38911
  /**
37221
38912
  * Number of items to skip for pagination. Default 0.
37222
38913
  */
37223
- offset?: number;
38914
+ offset?: number | null;
37224
38915
  };
37225
38916
  url: '/crystals';
37226
38917
  };
@@ -37358,11 +39049,11 @@ export type GetCrystalsResponses = {
37358
39049
  /**
37359
39050
  * URL to crystal photograph for visual identification.
37360
39051
  */
37361
- imageUrl: string;
39052
+ imageUrl: string | null;
37362
39053
  /**
37363
39054
  * Primary colors of this crystal variety. Null when color data is unavailable.
37364
39055
  */
37365
- colors: Array<string>;
39056
+ colors: Array<string> | null;
37366
39057
  /**
37367
39058
  * Chakra energy centers this crystal resonates with. One of: Root, Sacral, Solar Plexus, Heart, Throat, Third Eye, Crown.
37368
39059
  */
@@ -37518,7 +39209,7 @@ export type GetCrystalsByIdResponses = {
37518
39209
  /**
37519
39210
  * URL to a high-quality crystal photograph. Use for visual crystal guides, product listings, and crystal identification features.
37520
39211
  */
37521
- imageUrl: string;
39212
+ imageUrl: string | null;
37522
39213
  /**
37523
39214
  * Overview of the crystal covering its primary healing purpose, spiritual significance, and key benefits.
37524
39215
  */
@@ -37530,7 +39221,7 @@ export type GetCrystalsByIdResponses = {
37530
39221
  /**
37531
39222
  * Spiritual and metaphysical healing properties including energy work, meditation benefits, and higher consciousness connections. Null when spiritual interpretation is unavailable.
37532
39223
  */
37533
- spiritual: string;
39224
+ spiritual: string | null;
37534
39225
  /**
37535
39226
  * Emotional healing properties including stress relief, relationship support, and emotional balance benefits.
37536
39227
  */
@@ -37538,7 +39229,7 @@ export type GetCrystalsByIdResponses = {
37538
39229
  /**
37539
39230
  * Physical healing associations traditionally attributed to this crystal in crystal healing practice. Null when physical healing data is unavailable.
37540
39231
  */
37541
- physical: string;
39232
+ physical: string | null;
37542
39233
  };
37543
39234
  /**
37544
39235
  * Chakra energy centers this crystal resonates with. One of: Root, Sacral, Solar Plexus, Heart, Throat, Third Eye, Crown.
@@ -37547,19 +39238,19 @@ export type GetCrystalsByIdResponses = {
37547
39238
  /**
37548
39239
  * Zodiac signs this crystal is traditionally associated with. Null when zodiac data is unavailable. Useful for personalized crystal recommendations based on birth chart.
37549
39240
  */
37550
- zodiacSigns: Array<string>;
39241
+ zodiacSigns: Array<string> | null;
37551
39242
  /**
37552
39243
  * Ruling planet or celestial body associated with this crystal in astrological tradition. Null when planetary association is unavailable.
37553
39244
  */
37554
- planet: string;
39245
+ planet: string | null;
37555
39246
  /**
37556
39247
  * Elemental associations (Earth, Water, Fire, Air, Storm) connecting the crystal to natural forces and energy types. Null when elemental data is unavailable.
37557
39248
  */
37558
- elements: Array<string>;
39249
+ elements: Array<string> | null;
37559
39250
  /**
37560
39251
  * Primary colors of this crystal variety. Null when color data is unavailable. Useful for color-based crystal selection and filtering.
37561
39252
  */
37562
- colors: Array<string>;
39253
+ colors: Array<string> | null;
37563
39254
  /**
37564
39255
  * Mohs hardness scale rating (1-10). Indicates durability for jewelry use. Quartz family is 7, Diamond is 10, Selenite is 2.
37565
39256
  */
@@ -37569,13 +39260,13 @@ export type GetCrystalsByIdResponses = {
37569
39260
  */
37570
39261
  numericalVibration: number;
37571
39262
  /**
37572
- * Five to nine keywords capturing the core healing properties and spiritual themes of this crystal. Null when keyword data is unavailable.
39263
+ * Keywords capturing the core healing properties and spiritual themes of this crystal. The count varies by stone, from a single keyword up to twenty. Null when keyword data is unavailable.
37573
39264
  */
37574
- keywords: Array<string>;
39265
+ keywords: Array<string> | null;
37575
39266
  /**
37576
39267
  * Birth month (1-12) if this crystal is a traditional birthstone. Null if not a birthstone. January is 1, December is 12.
37577
39268
  */
37578
- birthMonth: number;
39269
+ birthMonth: number | null;
37579
39270
  /**
37580
39271
  * Positive affirmation aligned with this crystal energy. Use for meditation, journaling, or daily affirmation features.
37581
39272
  */
@@ -37606,7 +39297,7 @@ export type GetDreamsSymbolsData = {
37606
39297
  /**
37607
39298
  * Number of items to skip for pagination. Default 0.
37608
39299
  */
37609
- offset?: number;
39300
+ offset?: number | null;
37610
39301
  };
37611
39302
  url: '/dreams/symbols';
37612
39303
  };
@@ -38287,7 +39978,7 @@ export type GetAngelNumbersNumbersData = {
38287
39978
  /**
38288
39979
  * Number of items to skip for pagination. Default 0.
38289
39980
  */
38290
- offset?: number;
39981
+ offset?: number | null;
38291
39982
  /**
38292
39983
  * Filter results by angel number pattern type. "repeating" returns numbers like 111, 444, 7777. "sequential" returns patterns like 1234. "mirror" returns palindrome or alternating patterns like 1212, 717. "master" returns 11, 22, 33. "root" returns single digits 0-9. "compound" returns mixed sequences with no pure pattern like 911, 1122.
38293
39984
  */
@@ -38870,7 +40561,7 @@ export type GetAngelNumbersLookupResponses = {
38870
40561
  * Actionable steps when you see this number.
38871
40562
  */
38872
40563
  actionSteps: Array<string>;
38873
- };
40564
+ } | null;
38874
40565
  /**
38875
40566
  * The foundational meaning of this number based on its digit root. Every number reduces to a root digit (0-9) or master number (11, 22, 33), which provides the base interpretation even for unknown sequences.
38876
40567
  */
@@ -38891,10 +40582,25 @@ export type GetAngelNumbersLookupResponses = {
38891
40582
  * Full life-area interpretation of the underlying root digit. For an unknown sequence this is the substantive reading to display, so a synchronicity app never dead-ends on an arbitrary number.
38892
40583
  */
38893
40584
  meaning: {
40585
+ /**
40586
+ * Spiritual interpretation of the root digit, covering divine guidance, higher purpose, and metaphysical significance.
40587
+ */
38894
40588
  spiritual: string;
40589
+ /**
40590
+ * Love and relationship interpretation of the root digit, for singles, couples, and those healing from past relationships.
40591
+ */
38895
40592
  love: string;
40593
+ /**
40594
+ * Career and vocation guidance for the root digit. Money and finances are returned separately in the money field.
40595
+ */
38896
40596
  career: string;
40597
+ /**
40598
+ * Money, finances, and material abundance guidance for the root digit, kept distinct from career.
40599
+ */
38897
40600
  money: string;
40601
+ /**
40602
+ * Twin flame interpretation of the root digit, covering union, separation, and spiritual growth.
40603
+ */
38898
40604
  twinFlame: string;
38899
40605
  };
38900
40606
  /**
@@ -38905,7 +40611,7 @@ export type GetAngelNumbersLookupResponses = {
38905
40611
  * Affirmation for the root digit.
38906
40612
  */
38907
40613
  affirmation: string;
38908
- };
40614
+ } | null;
38909
40615
  /**
38910
40616
  * Present only when the context query parameter is supplied. A short reading layered on top of the meaning that accounts for WHERE the number was seen (clock, receipt, license plate, phone, address, price), since the place of a sighting shifts its emphasis.
38911
40617
  */
@@ -39135,7 +40841,7 @@ export type GetLocationSearchData = {
39135
40841
  /**
39136
40842
  * Number of items to skip for pagination. Default 0.
39137
40843
  */
39138
- offset?: number;
40844
+ offset?: number | null;
39139
40845
  };
39140
40846
  url: '/location/search';
39141
40847
  };
@@ -39313,7 +41019,7 @@ export type GetLocationCountriesData = {
39313
41019
  /**
39314
41020
  * Number of items to skip for pagination. Default 0.
39315
41021
  */
39316
- offset?: number;
41022
+ offset?: number | null;
39317
41023
  };
39318
41024
  url: '/location/countries';
39319
41025
  };
@@ -39476,7 +41182,7 @@ export type GetLocationCountriesByIso2Data = {
39476
41182
  /**
39477
41183
  * Number of items to skip for pagination. Default 0.
39478
41184
  */
39479
- offset?: number;
41185
+ offset?: number | null;
39480
41186
  };
39481
41187
  url: '/location/countries/{iso2}';
39482
41188
  };
@@ -39762,12 +41468,33 @@ export type GetUsageResponses = {
39762
41468
  * Usage statistics retrieved
39763
41469
  */
39764
41470
  200: {
41471
+ /**
41472
+ * Name of the subscription plan the API key belongs to. One flat plan covers every domain and the Remote MCP servers, so this is a quota tier, never a per product entitlement.
41473
+ */
39765
41474
  plan: string;
41475
+ /**
41476
+ * Billable requests counted against the current calendar month. Read from the same counter the rate limiter enforces on, so it never reports a rosier number than the limit that will 429 you. Cached responses still count.
41477
+ */
39766
41478
  usedThisMonth: number;
41479
+ /**
41480
+ * Monthly request allowance for the plan. One request, API or MCP, equals one unit: there is no credit weighting and no per domain fee.
41481
+ */
39767
41482
  requestsPerMonth: number;
41483
+ /**
41484
+ * Requests left before the monthly allowance is exhausted, floored at zero. Equal to requestsPerMonth minus usedThisMonth.
41485
+ */
39768
41486
  remainingThisMonth: number;
41487
+ /**
41488
+ * Billing email the subscription is registered under.
41489
+ */
39769
41490
  email: string;
41491
+ /**
41492
+ * Subscription lifecycle state. Values: active, cancelled (no longer renewing but usable until endDate), suspended (payment failed, usable until endDate), expired (past endDate), pending (checkout started, payment not captured).
41493
+ */
39770
41494
  status: string;
41495
+ /**
41496
+ * ISO 8601 timestamp when the current billing period ends. A renewal extends this date in place. API access survives a cancelled or suspended status until this moment passes.
41497
+ */
39771
41498
  endDate: string;
39772
41499
  };
39773
41500
  };