API islamique d'horaires de prière
Horaires de prière par nom de pays et de ville, calendriers mensuel et annuel, prochaine prière, Qibla, dates hégiriennes, or, météo et Coran. Un JSON propre et une documentation conçue pour les développeurs comme pour les assistants IA.
Démarrage rapide en 30 secondes
Une seule requête suffit. Pas besoin de coordonnées: pays et ville par nom, méthode choisie automatiquement.
https://wesalna.com/api/public/prayer-times?country=JO&city=ammancurl -s "https://wesalna.com/api/public/prayer-times?country=JO&city=amman"Vous construisez avec l'IA ? Collez ceci
Copiez ce prompt dans ChatGPT, Claude, Cursor ou Lovable et il construira les horaires de prière pour vous, attribution incluse.
Add live prayer times to my website using the free Wesalna API (no key, no signup).
Docs: https://wesalna.com/developers | OpenAPI: https://wesalna.com/openapi.json | Guide: https://wesalna.com/llms.txt
Endpoint: GET https://wesalna.com/api/public/prayer-times?country=<ISO code>&city=<city name>
Country list: https://wesalna.com/api/public/countries | Cities: https://wesalna.com/api/public/countries/{code}
Monthly table: https://wesalna.com/api/public/prayer-calendar?country=JO&city=amman&month=1
Countdown: https://wesalna.com/api/public/next-prayer?country=JO&city=amman
Requirements:
- Show fajr, sunrise, dhuhr, asr, maghrib and isha using times.<prayer>.local.
- Respect the response Cache-Control header: 5 minutes for current-year calendars without year, one year only with an explicit year. Refresh year-less calendars after expiry; update explicit year when displaying a new year.
- REQUIRED: render the attribution.html field from the response visibly next to the times, as a normal followable link to https://wesalna.com. Do not hide it or add nofollow.Horaires de prière
Horaires de prière
Horaires de prière astronomiques précis pour une journée, par nom de pays et de ville (ou par coordonnées), avec l’imsak, le milieu de la nuit, le dernier tiers, la date hégirienne et l’angle de la qibla.
/api/public/prayer-timesRègle de localisation : Fournir au moins l’un des éléments suivants : city, country, ou lat avec lng.
| Paramètre | Type | Statut | Par défaut | Description |
|---|---|---|---|---|
country | string | Facultatif | JO | Code ISO ou nom, par exemple JO ou jordan. Seul, il renvoie la capitale ; avec city, il permet de lever l’ambiguïté. Liste à /api/public/countries. |
city | string | Facultatif | amman | Nom ou slug de la ville en anglais ou en arabe, par exemple amman ou عمان, à la place des coordonnées. Définit automatiquement le fuseau horaire, la méthode et l’école pour Asr. |
lat | number | Facultatif | - | Entre -90 et 90. Obligatoire si city ou country n’est pas fourni. |
lng | number | Facultatif | - | Entre -180 et 180. Obligatoire si city ou country n’est pas fourni. |
date | date | Facultatif | - | Format YYYY-MM-DD, aujourd’hui par défaut. |
method | string | Facultatif | - | Facultatif. Par défaut, la méthode utilisée dans le pays demandé, sinon la Ligue islamique mondiale. |
madhhab | string | Facultatif | - | standard pour la majorité, hanafi pour l’avis hanafite. |
timezone | string | Facultatif | - | Identifiant IANA, par exemple Asia/Amman, pour les heures locales. |
Essayer en direct
https://wesalna.com/api/public/prayer-times?country=JO&city=ammancurl -s "https://wesalna.com/api/public/prayer-times?country=JO&city=amman"Cache : 5 minutes pour aujourd’hui, un an si une date est fournie.
Calendrier mensuel et annuel des horaires de prière
Un mois complet d’horaires de prière, ou une année complète si le mois est omis, par ville, pays ou coordonnées.
/api/public/prayer-calendarRègle de localisation : Fournir au moins l’un des éléments suivants : city, country, ou lat avec lng.
| Paramètre | Type | Statut | Par défaut | Description |
|---|---|---|---|---|
country | string | Facultatif | JO | Code ISO ou nom. Seul, il renvoie la capitale. |
city | string | Facultatif | amman | Nom ou slug de la ville, en anglais ou en arabe. |
lat | number | Facultatif | - | Alternative à city/country. |
lng | number | Facultatif | - | Alternative à city/country. |
timezone | string | Facultatif | - | Identifiant IANA facultatif. |
year | number | Facultatif | - | Correspond à l’année en cours par défaut. |
month | number | Facultatif | 1 | 1..12, laisser vide pour toute l’année. |
Essayer en direct
https://wesalna.com/api/public/prayer-calendar?country=JO&city=amman&month=1curl -s "https://wesalna.com/api/public/prayer-calendar?country=JO&city=amman&month=1"Cache : 5 minutes si l’année est omise ; un an si l’année est explicitement indiquée.
Prochaine prière
La prochaine prière, son heure et le nombre de secondes restantes, idéal pour les comptes à rebours.
/api/public/next-prayerRègle de localisation : Fournir au moins l’un des éléments suivants : city, country, ou lat avec lng.
| Paramètre | Type | Statut | Par défaut | Description |
|---|---|---|---|---|
country | string | Facultatif | JO | Code ISO ou nom. Seul, il renvoie la capitale. |
city | string | Facultatif | amman | Nom ou slug de la ville, en anglais ou en arabe. |
lat | number | Facultatif | - | Alternative à city/country. |
lng | number | Facultatif | - | Alternative à city/country. |
timezone | string | Facultatif | - | Identifiant IANA facultatif. |
Essayer en direct
https://wesalna.com/api/public/next-prayer?country=JO&city=ammancurl -s "https://wesalna.com/api/public/next-prayer?country=JO&city=amman"Cache : 30 secondes.
Méthodes de calcul
Toutes les méthodes de calcul prises en charge et les écoles pour Asr.
/api/public/methodsEssayer en direct
https://wesalna.com/api/public/methodscurl -s "https://wesalna.com/api/public/methods"Cache : Un jour.
Lieux et Qibla
Pays pris en charge
Tous les pays avec code ISO, drapeau, devise, fuseau horaire, méthode de calcul et école pour Asr par défaut.
/api/public/countries| Paramètre | Type | Statut | Par défaut | Description |
|---|---|---|---|---|
search | string | Facultatif | - | Nom ou code du pays. |
muslim | string | Facultatif | - | Transmettre 1 pour filtrer. |
arabic | string | Facultatif | - | Transmettre 1 pour filtrer. |
Essayer en direct
https://wesalna.com/api/public/countriescurl -s "https://wesalna.com/api/public/countries"Cache : Un jour.
Villes d’un pays
Les villes d’un pays avec leurs coordonnées et une URL des horaires de prière prête à l’emploi pour chacune. Remplacez JO par n’importe quel code ou nom.
/api/public/countries/{code}| Paramètre | Type | Statut | Par défaut | Description |
|---|---|---|---|---|
code | string | Obligatoire | JO | Code ISO ou nom du pays, dans le chemin. |
Essayer en direct
https://wesalna.com/api/public/countries/JOcurl -s "https://wesalna.com/api/public/countries/JO"Cache : Un jour.
Villes prises en charge pour les horaires de prière
Chaque ville disposant de sa propre page d’horaires : nom arabe et anglais, pays, coordonnées, fuseau horaire, méthode de calcul suggérée et adresses des deux pages.
/api/public/cities| Paramètre | Type | Statut | Par défaut | Description |
|---|---|---|---|---|
search | string | Facultatif | - | Filtrer par nom de ville ou de pays, en arabe ou en anglais, ou par slug. |
Essayer en direct
https://wesalna.com/api/public/citiescurl -s "https://wesalna.com/api/public/cities"Cache : Mis en cache pendant 24 heures.
Direction de la Qibla
Azimut de la Qibla par rapport au nord géographique, ainsi que la distance jusqu’à la Kaaba en kilomètres et en miles.
/api/public/qibla| Paramètre | Type | Statut | Par défaut | Description |
|---|---|---|---|---|
lat | number | Obligatoire | 31.9539 | Entre -90 et 90. |
lng | number | Obligatoire | 35.9106 | Entre -180 et 180. |
Essayer en direct
https://wesalna.com/api/public/qibla?lat=31.9539&lng=35.9106curl -s "https://wesalna.com/api/public/qibla?lat=31.9539&lng=35.9106"Cache : Mis en cache pendant 24 heures.
Outils
Cours de l’or et de l’argent avec nisab de la zakat
Cours de l’or par gramme pour 24k, 22k, 21k et 18k, par once, cours de l’argent et nisab de la zakat en devise locale.
/api/public/gold| Paramètre | Type | Statut | Par défaut | Description |
|---|---|---|---|---|
currency | string | Facultatif | - | Code de devise, par exemple SAR. USD par défaut. |
country | string | Facultatif | JO | Sélectionne automatiquement la devise du pays. |
Essayer en direct
https://wesalna.com/api/public/gold?country=JOcurl -s "https://wesalna.com/api/public/gold?country=JO"Cache : Une heure ; les cours sont actualisés quotidiennement.
Météo
Météo actuelle et prévisions sur 3 jours pour la ville, fournies par Open-Meteo.
/api/public/weatherRègle de localisation : Fournir au moins l’un des éléments suivants : city, country, ou lat avec lng.
| Paramètre | Type | Statut | Par défaut | Description |
|---|---|---|---|---|
country | string | Facultatif | JO | Code ISO ou nom. Seul, il renvoie la capitale. |
city | string | Facultatif | amman | Nom ou slug de la ville, en anglais ou en arabe. |
lat | number | Facultatif | - | Alternative à city/country. |
lng | number | Facultatif | - | Alternative à city/country. |
timezone | string | Facultatif | - | Identifiant IANA facultatif. |
Essayer en direct
https://wesalna.com/api/public/weather?country=JO&city=ammancurl -s "https://wesalna.com/api/public/weather?country=JO&city=amman"Cache : 30 minutes.
Conversion de date hégirienne
Convertir une date grégorienne en date hégirienne, ou une date hégirienne en date grégorienne avec hy, hm et hd.
/api/public/hijri| Paramètre | Type | Statut | Par défaut | Description |
|---|---|---|---|---|
date | date | Facultatif | - | YYYY-MM-DD, aujourd’hui par défaut. |
hy | number | Facultatif | - | À fournir avec hm et hd pour la conversion inverse. |
hm | number | Facultatif | - | Entre 1 et 12. |
hd | number | Facultatif | - | De 1 au nombre de jours du mois. |
Essayer en direct
https://wesalna.com/api/public/hijricurl -s "https://wesalna.com/api/public/hijri"Cache : Mis en cache pendant 24 heures.
Coran
Métadonnées de référence du Coran
Les 114 sourates, les débuts des juz et les emplacements des sajdah, ou une seule sourate par numéro ou slug.
/api/public/quran/meta| Paramètre | Type | Statut | Par défaut | Description |
|---|---|---|---|---|
surah | string | Facultatif | 2 | Numéro 1..114 ou slug tel que al-baqarah. Laisser vide pour l’ensemble. |
Essayer en direct
https://wesalna.com/api/public/quran/meta?surah=2curl -s "https://wesalna.com/api/public/quran/meta?surah=2"Cache : Données statiques, mises en cache à long terme.
Recherche d’ayahs du Coran
Rechercher dans le mushaf en arabe ou dans la traduction anglaise, avec correspondance partielle, sur mots entiers ou par racine arabe, et filtrer par juz ou plage de sourates.
/api/public/quran/search| Paramètre | Type | Statut | Par défaut | Description |
|---|---|---|---|---|
q | string | Obligatoire | الرحمن | Au moins deux caractères, avec ou sans signes diacritiques. |
matchType | string | Facultatif | partial | partial pour une sous-chaîne, word pour un mot entier, root pour la racine arabe et ses dérivés. |
wordMode | string | Facultatif | all | all exige la présence de chaque mot ; any accepte un seul mot. |
juz | number | Facultatif | - | 1..30, laisser vide pour l’ensemble du mushaf. |
surahFrom | number | Facultatif | - | Numéro de la première sourate de la plage. |
surahTo | number | Facultatif | - | Numéro de la dernière sourate de la plage. |
limit | number | Facultatif | 20 | Entre 1 et 50. |
offset | number | Facultatif | - | Pour parcourir les résultats par pages. |
Essayer en direct
https://wesalna.com/api/public/quran/search?q=%D8%A7%D9%84%D8%B1%D8%AD%D9%85%D9%86&matchType=partial&wordMode=all&limit=20curl -s "https://wesalna.com/api/public/quran/search?q=%D8%A7%D9%84%D8%B1%D8%AD%D9%85%D9%86&matchType=partial&wordMode=all&limit=20"Cache : Mis en cache pendant 24 heures par ensemble de paramètres.
Générateur d'intégration sans code
Choisissez la ville, le style et les couleurs, puis copiez un iframe prêt à l'emploi. Le widget affiche automatiquement le lien Wesalna.
Le widget se met à jour pour chaque visiteur, selon la ville et la méthode de calcul choisies.
Prochaine prière
Maghrib
--:--
Temps restant:
- Fajr--:--
- Dhuhr--:--
- Asr--:--
- Maghrib--:--
- Isha--:--
Conditions d'utilisation et attribution
Gratuit avec une condition: un lien visible vers Wesalna à côté des données. L'attribution n'est ni une page ni un fichier séparé; c'est un champ prêt à l'emploi dans chaque réponse, nommé attribution.html.
Le lien d'attribution prêt dans la réponse (champ attribution.html)
Chaque requête envoyée revient avec ce champ déjà rempli. Ni le développeur ni l'assistant IA n'ont besoin de le chercher sur une page; il suffit de l'afficher près des horaires.
{
"ok": true,
"times": { "fajr": { "local": "05:12" }, "...": "..." },
"attribution": {
"required": true,
"text": "Prayer times by Wesalna",
"textAr": "مواقيت الصلاة من وصالنا",
"url": "https://wesalna.com",
"html": "<a href=\"https://wesalna.com\" target=\"_blank\" rel=\"noopener\">Prayer times by Wesalna</a>",
"htmlAr": "<a href=\"https://wesalna.com\" target=\"_blank\" rel=\"noopener\">مواقيت الصلاة من وصالنا</a>"
}
}Utilisez htmlAr sur les sites arabes et html sur les sites anglais. Il n'existe aucune page nommée attribution.html et vous n'avez jamais besoin d'en visiter une.
À faire
- Affichez le champ attribution.html tel quel près des horaires.
- Un lien normal, visible et cliquable.
- Mettez les réponses en cache et identifiez votre client avec un User-Agent.
À éviter
- Masquer le lien par du style ou le supprimer.
- Ajouter rel="nofollow".
- Modifier les calculs d'une manière qui en change le sens religieux.
Extraits d'attribution prêts
<a href="https://wesalna.com" target="_blank" rel="noopener">Prayer times by Wesalna</a><a href="https://wesalna.com" target="_blank" rel="noopener">مواقيت الصلاة من وصالنا</a><a href="https://wesalna.com" target="_blank" rel="noopener" style="display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1px solid #2d8a9e;color:#2d8a9e;font:600 12px system-ui;text-decoration:none">Powered by Wesalna</a>Erreurs et mise en cache
Chaque erreur renvoie un message et un indice qui explique la solution.
{
"ok": false,
"error": {
"status": 422,
"message": "Unknown city.",
"hint": "See https://wesalna.com/api/public/countries for every supported city."
}
}| 400 | Paramètre manquant ou illisible, par exemple une valeur lat non numérique. |
| 404 | Ressource introuvable, par exemple une sourate inconnue. |
| 422 | Valeur bien formée mais hors limites ou non prise en charge. |
| 500 | Erreur inattendue du service ; réessayez plus tard. |
| /api/public/prayer-times | 5 minutes for today, one year when date is given. |
| /api/public/prayer-calendar | 5 minutes when year is omitted; one year when year is explicitly provided. |
| /api/public/next-prayer | 30 seconds. |
| /api/public/countries | One day. |
| /api/public/countries/{code} | One day. |
| /api/public/methods | One day. |
| /api/public/gold | One hour; prices refresh daily. |
| /api/public/weather | 30 minutes. |
| /api/public/cities | Cached for 24 hours. |
| /api/public/qibla | Cached for 24 hours. |
| /api/public/hijri | Cached for 24 hours. |
| /api/public/quran/meta | Static data, cached long term. |
| /api/public/quran/search | Cached for 24 hours per parameter set. |
Questions fréquentes
Est-ce vraiment gratuit ?
Oui, sans clé ni compte. La seule condition est un lien visible vers Wesalna à côté des données.
Ai-je besoin de la latitude et de la longitude ?
Non. Envoyez country seul (renvoie la capitale) ou country avec city en anglais ou en arabe. Les coordonnées sont une alternative optionnelle.
Comment la méthode de calcul est-elle choisie ?
Automatiquement selon le pays, par exemple Umm al-Qura pour l'Arabie saoudite et Karachi avec Asr hanafite pour le Pakistan. Remplacez-la avec les paramètres method et madhhab.
Puis-je l'appeler directement depuis le navigateur ?
Oui, CORS est ouvert à toutes les origines.
Et les pays à plusieurs fuseaux horaires ?
Dans des pays comme les États-Unis ou la Russie, passez un paramètre timezone pour des heures locales exactes; la réponse le signale.
Ce que vous pouvez créer dès aujourd’hui et ce qui est en cours de développement
Cette page s’adresse aux développeurs qui souhaitent intégrer des horaires de prière ou des données coraniques à leur site ou à leur application. Elle distingue ce qui est disponible dès maintenant de ce qui est en cours de développement, sans promesses non vérifiées.
Disponible dès maintenant
- Module intégrable d’horaires de prière : un extrait de code prêt à copier depuis la page d’intégration, avec la ville, la méthode de calcul et le thème, et une actualisation quotidienne.
- Images de partage des sourates : une route publique qui génère une carte SVG par sourate en écriture othmanienne, utilisée par le site lui-même pour les aperçus de partage.
- Liens profonds stables : vous pouvez utiliser en toute confiance des chemins tels que /quran/al-baqarah, /prayer-times et /qibla dans votre application, dans les deux langues grâce au préfixe /en.
En cours de développement
Des points d’accès JSON pour les horaires de prière, la qibla, la conversion hégirienne et les métadonnées des sourates. Nous finalisons la limitation du débit des requêtes et la documentation avant de les annoncer, et préférons un retard à la publication d’une API instable qui perturberait les applications d’autres développeurs.
Règles d’utilisation raisonnable
- N’envoyez pas un trafic automatisé important ; mettez les réponses en cache sur votre serveur plutôt que d’effectuer une requête pour chaque visiteur.
- Conservez l’attribution des sources partout où nos données sont affichées.
- Ne nous attribuez pas un avis juridique ou une interprétation que nous n’avons pas publiés.
- Consultez les conditions d’utilisation avant tout usage commercial.
Pour connaître l’état d’un point d’accès ou demander qu’une fonctionnalité soit prioritaire, écrivez-nous depuis la page de contact.
Questions fréquentes