curl -X POST https://api.occultapi.com/api/vrat-upavas/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"year":2026,"month":9,"keys":["ekadashi","amavasya","pradosham"]}'Les vrats et upavas sont les jours de jeûne et d’observance qui reviennent chaque mois hindou, chacun lié à une tithi particulière. Cet endpoint renvoie toutes les occurrences des types demandés sur une année entière, lues dans une table précalculée au lieu d’être calculées à chaque requête : une année de dix-huit types d’observance tient donc en une seule requête indexée. Chaque type est défini uniquement par les numéros de tithi auxquels il correspond, dans le schéma 1-30 où 1-15 vont de Shukla Pratipada à Purnima, 16-29 de Krishna Pratipada à Chaturdashi, et 30 correspond à Amavasya. Ainsi, `ekadashi` renvoie les deux ekadashis de chaque mois, `pradosham` les deux Trayodashis, `shivarathri` la Krishna Chaturdashi de chaque mois (la Masik Shivaratri mensuelle, pas seulement la Maha Shivaratri), `sashti`, `durgashtami` et `vinayaka_chathurthi` les sixième, huitième et quatrième jours Shukla, `kaalashtami` et `sankatahara_chathurthi` leurs équivalents Krishna, `amavasya` et `pournami` les nouvelles et pleines lunes, `sathyanarayana_puja` la pleine lune, `chandra_dharshan` et `moondraam_pirai` les premier et troisième jours de la lune croissante, et `srartha_yoga`, `ashtaka`, `manvaadhi` et `yugadhi` leurs propres petits ensembles de tithis. Attention : `mahalaya_paksha` correspond à toutes les tithis de 15 à 30, c’est-à-dire à toute la quinzaine sombre de chaque mois lunaire, et non au seul Pitru Paksha de Bhadrapada. `year` et `keys` sont obligatoires. Si vous passez aussi `latitude`, `longitude` et `timezone_as_float`, deux champs calculés à la volée s’ajoutent à chaque événement : `moonrise`, le lever de la lune du soir qui tombe dans la plage de la tithi de l’événement, pour votre lieu, et, pour les lignes `vinayaka_chathurthi` uniquement, `puja_muhurat` avec `start`, `end` et `duration_minutes` pour la plage de la Madhyahna Ganesha Puja. Les deux valent null s’ils ne peuvent pas être calculés, et aucun des deux n’apparaît si vous omettez les coordonnées. La réponse est `{data}`, avec une clé par type demandé, chacune contenant une liste chronologique de `{date, month, tithi, paksha, start_time, end_time}`, où les heures sont les instants exacts où la tithi commence et finit. Les dates sont précalculées de 2006 à 2046 inclus ; pour une année hors de cette plage, la réponse contient des listes vides et non une erreur.
| Champ | Type | Obligatoire | Remarques |
|---|---|---|---|
| keys | array | obligatoire | Les calculs à renvoyer, sous forme de liste de noms. Consultez le tableau des clés de cet endpoint ; un nom non reconnu fait rejeter toute la requête. Un appel coûte un crédit quel que soit le nombre de clés demandées : demandez donc tout ce dont vous avez besoin en une seule fois plutôt que de faire plusieurs appels. amavasyaashtakachandra_dharshandurgashtamiekadashikaalashtamimahalaya_pakshamanvaadhimoondraam_piraipournamipradoshamsankatahara_chathurthiLes observances à renvoyer. Demandez-en plusieurs en un seul appel - la réponse a une clé par type, et le coût ne change pas. |
| year | integer | obligatoire | Année de naissance sous forme de nombre, p. ex. 1990. Quatre chiffres. Année à quatre chiffres. Les dates sont précalculées pour 2006 à 2046 ; hors de cette plage, la réponse est vide. |
| latitude | number (double) | facultatif | Latitude du lieu, en degrés décimaux. Positive au nord, négative au sud. Exemple : 26.9124 pour Jaipur, 40.7128 pour New York. Les minutes et les secondes ne sont pas acceptées - convertissez d’abord. |
| longitude | number (double) | facultatif | Longitude du lieu, en degrés décimaux. Positive à l’est, négative à l’ouest. Exemple : 75.7873 pour Jaipur, -74.0060 pour New York. Attention au signe : sans le moins, New York se retrouve en Chine. |
| timezone_as_float | number (double) | facultatif | Décalage UTC du lieu, en heures, sous forme décimale. Exemple : 5.5 pour l’Inde (UTC+05:30), -5 pour New York en hiver, 5.75 pour le Népal. Cette valeur n’est PAS contrôlée par rapport à date_time - si les deux divergent, vous obtenez une réponse réussie pour le mauvais moment ; tirez donc les deux de la même source. Utilisez le décalage en vigueur à cette date, pas celui d’aujourd’hui : une naissance en été dans un pays qui applique l’heure d’été exige le décalage d’été. |