{"openapi":"3.0.3","info":{"title":"ASTRYXION API","version":"2.5.0","description":"Welcome to the **Astryxion API** Developer Portal.\n\n### Authentication\nAll API requests require a **Bearer Token** (Authorize padlock in Swagger UI).\n- Obtain an API key from the [Developer Portal](/portal)."},"components":{"securitySchemes":{"ApiKeyAuth":{"type":"http","scheme":"bearer","description":"Bearer: API key from /portal."}},"schemas":{}},"paths":{"/api/v1/horoscope/{sign}":{"get":{"summary":"Get Western Horoscope","tags":["Horoscope"],"parameters":[{"schema":{"type":"string","minLength":1},"in":"path","name":"sign","required":true},{"schema":{"type":"string","enum":["daily","weekly","monthly"],"default":"daily"},"in":"path","name":"period","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/api/v1/vedic-horoscope/{nakshatra}":{"get":{"summary":"Get Vedic Horoscope by Nakshatra","tags":["Horoscope"],"parameters":[{"schema":{"type":"string","minLength":1},"in":"path","name":"nakshatra","required":true},{"schema":{"type":"string","enum":["daily","weekly","monthly"],"default":"daily"},"in":"path","name":"period","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/api/v1/vedic/horoscope":{"post":{"summary":"Get Vedic Horoscope (POST version)","tags":["Horoscope"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["nakshatra"],"properties":{"nakshatra":{"type":"string"},"period":{"type":"string","enum":["daily","weekly","monthly"],"default":"daily"},"lang":{"type":"string","enum":["pt","en","es","hi"]}}}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/natal-chart":{"post":{"summary":"Calculate Complete Natal Chart","tags":["Western"],"description":"Generates planetary positions, houses, aspects, and patterns for a specific date and location.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"lang":{"type":"string","enum":["en","pt","es","hi"]}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/natal/llm-context":{"post":{"summary":"Natal chart as LLM context (XML)","tags":["Western"],"description":"Computes the same tropical natal as `/api/v1/natal-chart` and returns a compact XML document for LLM system prompts (HTTP alternative to MCP).","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"lang":{"type":"string","enum":["en","pt","es","hi"]},"maxAspects":{"type":"integer","minimum":5,"maximum":120,"default":40},"response":{"type":"string","enum":["json","xml"],"default":"json"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/planets":{"get":{"summary":"Planetary positions for specific date","tags":["Western"],"parameters":[{"schema":{"type":"string"},"in":"query","name":"date","required":true,"description":"ISO Date"},{"schema":{"type":"string"},"in":"query","name":"timeUtc","required":true,"description":"HH:mm:ss"}],"responses":{"200":{"description":"Default Response"}}}},"/api/v1/ascendant":{"get":{"summary":"Calculate Ascendant","tags":["Western"],"parameters":[{"schema":{"type":"string"},"in":"query","name":"date","required":true},{"schema":{"type":"string"},"in":"query","name":"timeUtc","required":true},{"schema":{"type":"number"},"in":"query","name":"lat","required":true},{"schema":{"type":"number"},"in":"query","name":"lon","required":true},{"schema":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"]},"in":"query","name":"houseSystem","required":false}],"responses":{"200":{"description":"Default Response"}}}},"/api/v1/natal/planets":{"post":{"summary":"Planetary positions (POST version)","tags":["Western"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string"},"timeUtc":{"type":"string"},"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/chart/natal-svg":{"post":{"summary":"Natal wheel as SVG","tags":["Western"],"description":"Returns a tropical natal chart wheel as an SVG string (JSON) or raw `image/svg+xml`. Optional `splitChart` adds a tabular `chartGrid` SVG. Themes: lavender/light, dark, minimal. Planets are filtered to the main set unless `includeAllBodies` is true.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"lang":{"type":"string","enum":["en","pt","es","hi"]},"size":{"type":"integer","minimum":200,"maximum":800,"default":400},"transparentBackground":{"type":"boolean","default":false},"includeAllBodies":{"type":"boolean","default":false},"theme":{"type":"string","enum":["lavender","light","dark","minimal"],"default":"lavender"},"splitChart":{"type":"boolean","default":false},"drawWheelAspects":{"type":"boolean"},"gridWidth":{"type":"integer","minimum":280,"maximum":720,"default":420},"format":{"type":"string","enum":["json","svg"],"default":"json"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/chart/synastry-svg":{"post":{"summary":"Two natal wheels for synastry context","tags":["Western"],"description":"Computes two separate natal wheels (person1 and person2) for side-by-side embedding. Does not draw aspect lines between charts (use `/api/v1/synastry` for inter-chart aspects).","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"person1":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false},"person2":{"$ref":"#/properties/person1"},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"size":{"type":"integer","minimum":200,"maximum":800,"default":360},"transparentBackground":{"type":"boolean","default":false},"includeAllBodies":{"type":"boolean","default":false},"theme":{"type":"string","enum":["lavender","light","dark","minimal"],"default":"lavender"}},"required":["person1","person2"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/solar-return":{"post":{"tags":["Advanced"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"year":{"type":"integer","minimum":1900,"maximum":2100},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"}},"required":["date","timeUtc","latitude","longitude","year"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/progressions":{"post":{"tags":["Advanced"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"daysProgressed":{"type":"integer","minimum":1,"maximum":36500},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"}},"required":["date","timeUtc","latitude","longitude","daysProgressed"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/transits":{"post":{"tags":["Advanced"],"responses":{"200":{"description":"Default Response"}}}},"/api/v1/synastry":{"post":{"tags":["Advanced"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"person1":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false},"person2":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"}},"required":["person1","person2"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/composite":{"post":{"tags":["Advanced"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"person1":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false},"person2":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"}},"required":["person1","person2"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/eclipses":{"post":{"tags":["Advanced"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"year":{"type":"integer","minimum":1900,"maximum":2100}},"required":["year"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/astrocartography":{"post":{"tags":["Advanced"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/annual-predictions":{"post":{"tags":["Advanced"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"year":{"type":"integer","minimum":2020,"maximum":2050},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"lang":{"type":"string","enum":["en","pt","es","hi"]}},"required":["date","timeUtc","latitude","longitude","year"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/solar-arc":{"post":{"tags":["Advanced"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"directedDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"directedTimeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}(:\\d{2})?$","default":"12:00:00"},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"}},"required":["date","timeUtc","latitude","longitude","directedDate"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/vedic-chart":{"post":{"tags":["Advanced"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/rectification":{"post":{"tags":["Advanced"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"timeRange":{"type":"object","properties":{"start":{"type":"string","pattern":"^\\d{2}:\\d{2}$"},"end":{"type":"string","pattern":"^\\d{2}:\\d{2}$"}},"required":["start","end"],"additionalProperties":false},"events":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string","minLength":1},"description":{"type":"string","minLength":1}},"required":["date","description"],"additionalProperties":false},"minItems":1,"maxItems":20}},"required":["date","latitude","longitude","timeRange","events"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/compatibility":{"post":{"tags":["Advanced"],"responses":{"200":{"description":"Default Response"}}}},"/api/v1/numerology/complete":{"post":{"summary":"Universal Numerology Engine","tags":["Esotericism"],"description":"Four Numerology Traditions. One Integration. Calculates Life Path, Expression, Soul Urge, Destiny, Personal Year, Lo Shu Grid, Name Correction, and Compatibility Numbers across Pythagorean, Chaldean, Vedic, and Kabbalah systems.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"fullName":{"type":"string","minLength":2},"dateOfBirth":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"comparisonName":{"type":"string","description":"Second name for compatibility analysis."},"targetYear":{"type":"integer","minimum":2000,"maximum":2099,"description":"Year to calculate the Personal Year number."}},"required":["fullName","dateOfBirth"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/palmistry/interpret":{"post":{"summary":"Palmistry Interpretation","tags":["Esotericism"],"description":"Analyzes the provided palm line profile and returns a diagnostic synthesis.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"lifeLine":{"type":"string","enum":["long_deep","short_faint","chained","broken"]},"heartLine":{"type":"string","enum":["curved","straight","chained","forked_end"]},"headLine":{"type":"string","enum":["long_straight","short","curved_down","forked"]},"fateLine":{"type":"string","enum":["strong","weak_broken","absent"]}},"additionalProperties":false}}}},"parameters":[{"schema":{"type":"string","enum":["pt","en","es","hi"],"default":"en"},"in":"query","name":"lang","required":false}],"responses":{"200":{"description":"Default Response"}}}},"/api/v1/tarot/draw":{"post":{"summary":"Tarot Draw","tags":["Esotericism"],"description":"Complete Tarot Engine. Supports Virtual card draws, contextual AI interpretations (Love, Career, Spiritual), and advanced spreads like Celtic Cross.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spread":{"type":"string","enum":["single","3_card","9_card","celtic_cross"],"default":"single"},"context":{"type":"string","enum":["general","love","career","spiritual"],"default":"general"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/runes/draw":{"post":{"summary":"Runes Draw","tags":["Esotericism"],"description":"Draws runes from the Elder Futhark deck.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spread":{"type":"string","enum":["single","three_norns"],"default":"single"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/iching/consult":{"post":{"summary":"I Ching Consultation","tags":["Esotericism"],"description":"Simulates drawing 3 coins to generate a Hexagram and its Changing Lines.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"question":{"type":"string"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/reports/natal-pdf":{"post":{"summary":"Astryxion Natal Monograph PDF (Multilingual)","tags":["Reports"],"description":"Generate a professional natal chart PDF report with visual chart map, planet positions, and QR code verification. Cached for 24 hours.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"fullName":{"type":"string","default":"Consultant"},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}(:\\d{2})?$"},"latitude":{"type":"number"},"longitude":{"type":"number"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/reports/mini-horoscope":{"post":{"summary":"Daily Cosmic Snapshot PDF (Multilingual)","tags":["Reports"],"description":"Generate a quick daily horoscope PDF with essential planetary positions. Cached for 6 hours.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"fullName":{"type":"string","default":"Consultant"},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}(:\\d{2})?$"},"latitude":{"type":"number"},"longitude":{"type":"number"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/reports/annual-forecast-pdf":{"post":{"summary":"Annual forecast PDF (multilingual)","tags":["Reports"],"description":"Generates a year-ahead symbolic forecast PDF (same data family as /annual-predictions). Cached 24h.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}(:\\d{2})?$"},"latitude":{"type":"number"},"longitude":{"type":"number"},"year":{"type":"integer","minimum":2020,"maximum":2050},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","timeUtc","latitude","longitude","year"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/reports/matchmaking":{"post":{"summary":"Relationship Resonance Profile PDF (Multilingual)","tags":["Reports"],"description":"Generate a detailed compatibility report between two people with scoring visualization and analysis. Cached for 24 hours.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"personA":{"type":"object","properties":{"fullName":{"type":"string","default":"Partner 1"},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}(:\\d{2})?$"},"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false},"personB":{"type":"object","properties":{"fullName":{"type":"string","default":"Partner 2"},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}(:\\d{2})?$"},"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["personA","personB"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/reports/health":{"get":{"summary":"PDF Service Health Check","tags":["Reports"],"description":"Check the status of the PDF generation service including browser pool and cache metrics.","responses":{"200":{"description":"Default Response"}}}},"/api/v1/chinese/animals":{"get":{"tags":["Astrologia Chinesa"],"parameters":[{"schema":{"type":"string","enum":["pt","en","es","hi"],"default":"en"},"in":"query","name":"lang","required":false},{"schema":{"type":"string"},"in":"query","name":"name","required":false}],"responses":{"200":{"description":"Default Response"}}}},"/api/v1/chinese/zodiac":{"post":{"tags":["Astrologia Chinesa"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"year":{"type":"integer","minimum":1900,"maximum":2100},"lang":{"type":"string","enum":["pt","en","es","hi"]}},"required":["year"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/chinese/compatibility":{"post":{"tags":["Astrologia Chinesa"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"animal1":{"type":"string","minLength":1},"animal2":{"type":"string","minLength":1},"detailed":{"type":"boolean","default":false},"lang":{"type":"string","enum":["pt","en","es","hi"]}},"required":["animal1","animal2"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/chinese/horoscope":{"post":{"tags":["Astrologia Chinesa"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"animal":{"type":"string","minLength":1},"period":{"type":"string","enum":["daily","weekly","monthly","yearly"],"default":"daily"},"category":{"type":"string","enum":["love","health","career","finance","general"],"default":"general"},"lang":{"type":"string","enum":["pt","en","es","hi"]}},"required":["animal"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/chinese/iching":{"get":{"tags":["Astrologia Chinesa"],"parameters":[{"schema":{"type":"string","enum":["pt","en","es","hi"]},"in":"query","name":"lang","required":false}],"responses":{"200":{"description":"Default Response"}}}},"/api/v1/chinese/feng-shui":{"get":{"summary":"Feng Shui / Flying Stars (perfil anual)","tags":["Astrologia Chinesa"],"description":"Metadados anuais: estrela central, direções, cores e dicas. Opcionalmente inclui grelha 9 palácios (anual). Não é grelha mensal completa.","parameters":[{"schema":{"type":"integer","minimum":2000,"maximum":2100},"in":"query","name":"year","required":false},{"schema":{"type":"string","enum":["pt","en","es","hi"]},"in":"query","name":"lang","required":false},{"schema":{"type":"string","enum":["true","false"]},"in":"query","name":"grid","required":false,"description":"Incluir grelha 9 palácios anual"}],"responses":{"200":{"description":"Default Response"}}},"post":{"tags":["Astrologia Chinesa"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"year":{"type":"integer","minimum":2000,"maximum":2100},"lang":{"type":"string","enum":["pt","en","es","hi"]},"includeGrid":{"type":"boolean","default":false}},"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/chinese/bazi":{"post":{"tags":["Astrologia Chinesa"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"birthDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"birthTimeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}(:\\d{2})?$"},"timezoneOffsetMinutes":{"type":"integer","minimum":-840,"maximum":840,"default":0},"lang":{"type":"string","enum":["pt","en","es","hi"]}},"required":["birthDate","birthTimeUtc"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/chinese/numerology":{"post":{"tags":["Astrologia Chinesa"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"birthDate":{"type":"string","minLength":1},"lang":{"type":"string","enum":["pt","en","es","hi"]}},"required":["birthDate"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/chinese/kua":{"post":{"tags":["Astrologia Chinesa"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"birthYear":{"type":"integer","minimum":1900,"maximum":2100},"gender":{"type":"string","enum":["male","female"]},"lang":{"type":"string","enum":["pt","en","es","hi"]}},"required":["birthYear","gender"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/chinese/yin-yang":{"post":{"tags":["Astrologia Chinesa"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"birthYear":{"type":"integer","minimum":1900,"maximum":2100},"birthMonth":{"type":"integer","minimum":1,"maximum":12},"birthDay":{"type":"integer","minimum":1,"maximum":31},"lang":{"type":"string","enum":["pt","en","es","hi"]}},"required":["birthYear","birthMonth","birthDay"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/nakshatras":{"get":{"summary":"Lista todos os 27 Nakshatras","tags":["Védico"],"description":"Lista os 27 nakshatras com campos localizáveis (lord, deity, description, symbol, nature, guna, element, favorableActivities, unfavorableActivities) via query lang=en|pt|es|hi.","parameters":[{"schema":{"type":"string","enum":["pt","en","es","hi"],"default":"en"},"in":"query","name":"lang","required":false,"description":"Idioma da resposta"},{"schema":{"type":"string"},"in":"query","name":"name","required":false,"description":"Filtrar por nome do nakshatra"}],"responses":{"200":{"description":"Lista de nakshatras","content":{"application/json":{"schema":{"description":"Lista de nakshatras"}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"description":"Não autorizado"}}}},"429":{"description":"Limite excedido","content":{"application/json":{"schema":{"description":"Limite excedido"}}}}}}},"/api/v1/nakshatra":{"post":{"summary":"Calcula Nakshatra para uma posição","tags":["Védico"],"description":"Nakshatra e pada para uma longitude; mesmos campos localizáveis que GET /nakshatras (lang no body).","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["longitude"],"properties":{"longitude":{"type":"number","minimum":0,"maximum":360,"description":"Longitude eclíptica (0-360°)"},"lang":{"type":"string","enum":["pt","en","es","hi"],"default":"en"}}}}}},"responses":{"200":{"description":"Dados do nakshatra","content":{"application/json":{"schema":{"description":"Dados do nakshatra"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"description":"Não autorizado"}}}}}}},"/api/v1/dasha":{"post":{"summary":"Calcula Vimshottari Dasha","tags":["Védico"],"description":"Calcula o sistema completo de Vimshottari Dasha baseado na posição da Lua no nascimento.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["moonLongitude","birthDate"],"properties":{"moonLongitude":{"type":"number","minimum":0,"maximum":360,"description":"Longitude da Lua no nascimento"},"birthDate":{"type":"string","description":"Data de nascimento (YYYY-MM-DD)"},"yearsToCalculate":{"type":"number","default":120,"description":"Anos para calcular (padrão: 120)"},"lang":{"type":"string","enum":["pt","en","es","hi"],"default":"en"}}}}}},"responses":{"200":{"description":"Sistema Dasha completo","content":{"application/json":{"schema":{"description":"Sistema Dasha completo"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"description":"Não autorizado"}}}}}}},"/api/v1/varga-analysis":{"post":{"summary":"Análise de Divisional Charts (Vargas)","tags":["Védico"],"description":"Calcula e analisa todos os divisional charts (D1, D9, D10, etc.) para avaliação de força planetária.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["planets","ascendantLongitude"],"properties":{"planets":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"longitude":{"type":"number"},"sign":{"type":"string"},"house":{"type":"number"}}},"description":"Lista de planetas com posições"},"ascendantLongitude":{"type":"number","description":"Longitude do Ascendente"},"lang":{"type":"string","enum":["pt","en","es","hi"],"default":"en"}}}}}},"responses":{"200":{"description":"Análise de Vargas completa","content":{"application/json":{"schema":{"description":"Análise de Vargas completa"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"description":"Não autorizado"}}}}}}},"/api/v1/yogas":{"post":{"summary":"Calcula Yogas Planetários","tags":["Védico"],"description":"Identifica todas as combinações planetárias auspiciosas e desafiadoras no mapa.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["planets","houses"],"properties":{"planets":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"longitude":{"type":"number"},"sign":{"type":"string"},"house":{"type":"number"}}},"description":"Lista de planetas com posições"},"houses":{"type":"array","items":{"type":"object","properties":{"house":{"type":"number"},"longitude":{"type":"number"},"sign":{"type":"string"}}},"description":"Lista de casas com cúspides"},"lang":{"type":"string","enum":["pt","en","es","hi"],"default":"en"}}}}}},"responses":{"200":{"description":"Lista de Yogas encontrados","content":{"application/json":{"schema":{"description":"Lista de Yogas encontrados"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"description":"Não autorizado"}}}}}}},"/api/v1/jaimini":{"post":{"summary":"Sistema Jaimini - Karakas e Chara Dasha","tags":["Védico"],"description":"Calcula os Karakas (significadores) e Chara Dasha do sistema Jaimini.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["planets","ascendantSign","birthDate"],"properties":{"planets":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"longitude":{"type":"number"},"sign":{"type":"string"}}},"description":"Lista de planetas com posições"},"ascendantSign":{"type":"string","description":"Signo do Ascendente"},"birthDate":{"type":"string","description":"Data de nascimento"},"yearsToCalculate":{"type":"number","default":100},"lang":{"type":"string","enum":["pt","en","es","hi"],"default":"en"}}}}}},"responses":{"200":{"description":"Dados Jaimini completos","content":{"application/json":{"schema":{"description":"Dados Jaimini completos"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"description":"Não autorizado"}}}}}}},"/api/v1/remedies":{"post":{"summary":"Remédios Védicos","tags":["Védico"],"description":"Calcula gemas, mantras, yantras, doações, jejuns e rituais recomendados.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["planets"],"properties":{"planets":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"longitude":{"type":"number"},"sign":{"type":"string"},"house":{"type":"number"}}},"description":"Lista de planetas com posições"},"houses":{"type":"array","items":{"type":"object"},"description":"Lista de casas"},"yogas":{"type":"array","items":{"type":"object"},"description":"Lista de yogas encontrados"},"dasha":{"type":"object","description":"Sistema Dasha atual"},"lang":{"type":"string","enum":["pt","en","es","hi"],"default":"en"}}}}}},"responses":{"200":{"description":"Remédios védicos recomendados","content":{"application/json":{"schema":{"description":"Remédios védicos recomendados"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"description":"Não autorizado"}}}}}}},"/api/v1/lal-kitab":{"post":{"summary":"Análise Lal Kitab","tags":["Védico"],"description":"Análise baseada no sistema Lal Kitab com remédios simplificados.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["planets","houses"],"properties":{"planets":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"longitude":{"type":"number"},"house":{"type":"number"}}},"description":"Lista de planetas com posições"},"houses":{"type":"array","items":{"type":"object","properties":{"house":{"type":"number"},"longitude":{"type":"number"},"sign":{"type":"string"}}},"description":"Lista de casas"},"lang":{"type":"string","enum":["pt","en","es","hi"],"default":"en"}}}}}},"responses":{"200":{"description":"Análise Lal Kitab completa","content":{"application/json":{"schema":{"description":"Análise Lal Kitab completa"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"description":"Não autorizado"}}}}}}},"/api/v1/tajika":{"post":{"summary":"Tajika - Revolução Solar Védica","tags":["Védico"],"description":"Calcula o chart Tajika (revolução solar védica) com Muntha, Varsheshwar e previsões anuais.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["planets","birthDate","year"],"properties":{"planets":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"longitude":{"type":"number"}}},"description":"Lista de planetas com posições"},"birthDate":{"type":"string","description":"Data de nascimento"},"year":{"type":"number","description":"Ano para calcular a revolução"},"lang":{"type":"string","enum":["pt","en","es","hi"],"default":"en"}}}}}},"responses":{"200":{"description":"Chart Tajika completo","content":{"application/json":{"schema":{"description":"Chart Tajika completo"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"description":"Não autorizado"}}}}}}},"/api/v1/nadi":{"post":{"summary":"Análise Nadi","tags":["Védico"],"description":"Previsões baseadas no sistema Nadi com lições kármicas e caminho espiritual.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["planets","moonLongitude"],"properties":{"planets":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"longitude":{"type":"number"}}},"description":"Lista de planetas com posições"},"moonLongitude":{"type":"number","description":"Longitude da Lua"},"lang":{"type":"string","enum":["pt","en","es","hi"],"default":"en"}}}}}},"responses":{"200":{"description":"Análise Nadi completa","content":{"application/json":{"schema":{"description":"Análise Nadi completa"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"description":"Não autorizado"}}}}}}},"/api/v1/vedic-complete":{"post":{"summary":"Mapa Védico Completo","tags":["Védico"],"description":"Retorna TODAS as informações védicas em uma única chamada: Nakshatra, Dasha, Vargas, Yogas, Karakas, Remédios, Lal Kitab, Tajika e Nadi.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["date","timeUtc","latitude","longitude"],"properties":{"date":{"type":"string","description":"Data de nascimento (YYYY-MM-DD)"},"timeUtc":{"type":"string","description":"Hora UTC (HH:MM:SS)"},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"lang":{"type":"string","enum":["pt","en","es","hi"],"default":"en"},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical","description":"tropical = ecliptic tropical (legacy); sidereal_lahiri = Swiss Ephemeris Lahiri ayanamsa."}}}}}},"responses":{"200":{"description":"Mapa védico completo","content":{"application/json":{"schema":{"description":"Mapa védico completo"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"description":"Não autorizado"}}}},"429":{"description":"Limite excedido","content":{"application/json":{"schema":{"description":"Limite excedido"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/vedic/vargottama":{"post":{"summary":"Vargottama (D1 vs D9)","tags":["Védico"],"description":"Lista planetas cujo signo no mapa principal (D1) coincide com o signo no mesmo modelo divisional D9 usado em `/api/v1/varga-analysis`. Rahu/Ketu excluídos.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}:\\d{2}$"},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Análise de vargottama","content":{"application/json":{"schema":{"description":"Análise de vargottama"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/shadbala":{"post":{"summary":"Shadbala - 6 Forças Planetárias","tags":["Védico"],"description":"Calcula as 6 forças planetárias: Sthana, Dig, Kala, Chesta, Naisargika, Drik Bala.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}:\\d{2}$"},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Análise Shadbala completa","content":{"application/json":{"schema":{"description":"Análise Shadbala completa"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/ashtakavarga":{"post":{"summary":"Ashtakavarga - Sistema de Bindus","tags":["Védico"],"description":"Calcula o sistema Ashtakavarga com bindus (pontos) para cada planeta e casa.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}:\\d{2}$"},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Análise Ashtakavarga completa","content":{"application/json":{"schema":{"description":"Análise Ashtakavarga completa"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/panchanga":{"post":{"summary":"Panchanga - Almanaque Védico","tags":["Védico"],"description":"Calcula os 5 elementos do dia: Tithi, Vara, Nakshatra, Yoga, Karana.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Panchanga completo","content":{"application/json":{"schema":{"description":"Panchanga completo"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/muhurta":{"post":{"summary":"Muhurta - Astrologia Eletiva","tags":["Védico"],"description":"Avalia o momento mais auspicioso para iniciar atividades.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}:\\d{2}$"},"purpose":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","timeUtc","purpose","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Avaliação Muhurta","content":{"application/json":{"schema":{"description":"Avaliação Muhurta"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/graha-yuddha":{"post":{"summary":"Graha Yuddha - Guerra Planetária","tags":["Védico"],"description":"Calcula guerras planetárias quando dois planetas estão no mesmo signo.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}:\\d{2}$"},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Guerras planetárias","content":{"application/json":{"schema":{"description":"Guerras planetárias"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/avasthas":{"post":{"summary":"Avasthas - Estados Planetários","tags":["Védico"],"description":"Calcula os estados planetários (Baladi, Jagradadi, Deeptadi).","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}:\\d{2}$"},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Estados planetários","content":{"application/json":{"schema":{"description":"Estados planetários"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/tara-bala":{"post":{"summary":"Tara Bala - Compatibilidade Nakshatra","tags":["Védico"],"description":"Calcula a compatibilidade entre dois nakshatras usando o sistema Tara Bala.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"nakshatra1":{"type":"number","minimum":0,"maximum":26},"nakshatra2":{"type":"number","minimum":0,"maximum":26},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["nakshatra1","nakshatra2"],"additionalProperties":false}}}},"responses":{"200":{"description":"Compatibilidade Tara Bala","content":{"application/json":{"schema":{"description":"Compatibilidade Tara Bala"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/gochara":{"post":{"summary":"Gochara - Trânsitos Védicos","tags":["Védico"],"description":"Calcula trânsitos planetários avançados baseados na Lua natal.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"birthDate":{"type":"string","minLength":1},"birthTimeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}:\\d{2}$"},"birthLatitude":{"type":"number","minimum":-90,"maximum":90},"birthLongitude":{"type":"number","minimum":-180,"maximum":180},"transitDate":{"type":"string"},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["birthDate","birthTimeUtc","birthLatitude","birthLongitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Trânsitos Gochara","content":{"application/json":{"schema":{"description":"Trânsitos Gochara"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/prasna":{"post":{"summary":"Prasna - Astrologia Horária","tags":["Védico"],"description":"Responde perguntas específicas baseado no momento da consulta.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"question":{"type":"string","minLength":1},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["question","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Resposta Prasna","content":{"application/json":{"schema":{"description":"Resposta Prasna"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/dasha-sandhi":{"post":{"summary":"Dasha Sandhi - Períodos de Junção","tags":["Védico"],"description":"Calcula os períodos de transição entre Mahadashas e Antardashas.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}:\\d{2}$"},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"houseSystem":{"type":"string","enum":["placidus","koch","equal","whole_sign","regiomontanus","campanus","porphyry","alcabitius"],"default":"placidus"},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Períodos Dasha Sandhi","content":{"application/json":{"schema":{"description":"Períodos Dasha Sandhi"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/argala-drishti":{"post":{"summary":"Argala e Drishti - Aspectos Védicos","tags":["Védico"],"description":"Calcula Argala (obstruções) e Drishti (aspectos) védicos para uma casa específica.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","minLength":1},"timeUtc":{"type":"string","pattern":"^\\d{2}:\\d{2}:\\d{2}$"},"latitude":{"type":"number","minimum":-90,"maximum":90},"longitude":{"type":"number","minimum":-180,"maximum":180},"house":{"type":"number","minimum":1,"maximum":12,"default":1},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"},"lang":{"type":"string","enum":["en","pt","es","hi"],"default":"en"}},"required":["date","timeUtc","latitude","longitude"],"additionalProperties":false}}}},"responses":{"200":{"description":"Argala e Drishti","content":{"application/json":{"schema":{"description":"Argala e Drishti"}}}},"400":{"description":"Erro de validação","content":{"application/json":{"schema":{"description":"Erro de validação"}}}},"500":{"description":"Erro interno","content":{"application/json":{"schema":{"description":"Erro interno"}}}}}}},"/api/v1/vedic/panchang-detailed":{"post":{"summary":"Get complete Panchang including daily periods (Rahu Kaal, etc.)","tags":["Vedic"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string"},"latitude":{"type":"number"},"longitude":{"type":"number"},"timezone":{"type":"string"},"zodiacMode":{"type":"string","enum":["tropical","sidereal_lahiri"],"default":"tropical"}},"required":["date","latitude","longitude","timezone"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/vedic/matching":{"post":{"summary":"Calculate relationship compatibility (Ashtakoot/Porutham)","tags":["Vedic"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"boyMoonLon":{"type":"number"},"girlMoonLon":{"type":"number"}},"required":["boyMoonLon","girlMoonLon"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/vedic/doshas":{"post":{"summary":"Generate analysis for Mangal Dosha, Sade Sati, and other afflictions","tags":["Vedic"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"planets":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"house":{"type":"number"},"longitude":{"type":"number"}},"required":["name","house","longitude"],"additionalProperties":false}},"currentSaturnLon":{"type":"number"}},"required":["planets"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/geo/search":{"get":{"responses":{"200":{"description":"Default Response"}}},"post":{"summary":"Search location to get coordinates and timezone (Offline)","tags":["Location"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"location":{"type":"string","minLength":1}},"required":["location"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/api/v1/geo/timezone":{"post":{"summary":"Get timezone offset and DST for a specific date (Offline)","tags":["Location"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"timezone":{"type":"string","minLength":1},"year":{"type":"integer"},"month":{"type":"integer","minimum":1,"maximum":12},"day":{"type":"integer","minimum":1,"maximum":31},"hour":{"type":"integer","minimum":0,"maximum":23},"minute":{"type":"integer","minimum":0,"maximum":59}},"required":["timezone","year","month","day","hour","minute"],"additionalProperties":false}}}},"responses":{"200":{"description":"Default Response"}}}},"/portal":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/dashboard":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/playground":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/status":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/admin":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/":{"get":{"responses":{"200":{"description":"Default Response"}}}},"/features":{"get":{"responses":{"200":{"description":"Default Response"}}}}},"security":[{"ApiKeyAuth":[]}]}