Rashid14313 3laykum salaam. No, the API is not down, but the calendar portion got a major rewrite with https://github.com/islamic-network/calendar. Docs are coming soon, but the API interface is the same, except for 2 differences:
Extra fields in the Hijri response:
"hijri": {
"date": "01-09-1446",
"format": "DD-MM-YYYY",
"day": 1,
"weekday": {
"en": "Al Sabt",
"ar": "السبت"
},
"month": {
"number": 9,
"en": "Ramaḍān",
"ar": "رَمَضان",
"days": 29 // THIS IS NEW
},
"year": 1446,
"designation": {
"abbreviated": "AH",
"expanded": "Anno Hegirae"
},
"holidays": [
"1st Day of Ramadan"
],
"method": "HJCoSA" // THIS IS NEW
}
☝️ is a non breaking change, unless you use something like Spring in strict mode to generate your API client which fails if the response contains extra fields.
The default calendar is now a method called the High Judiciary Council of Saudi Arabia, which is basically the astronomical Umm Al Qura calendar modified with actual moon sightings. This means the adjustment parameter won't work anymore. If you still want the old calendar, you can pass a calendarMethod=MATHEMATICAL
query parameter which will use the old calendar and will accept the adjustment query parameter too. The limitation with the new method is that it does not work with dates after the Hijri year 1500 and before the Hijri year 1356. See https://api.aladhan.com/v1/islamicCalendar/methods for supported methods. For this change I didn't realise how many people use the API to actually get prayer times and calendar dates for years outside of this range (probably 1 request a second is doing this). Later today I will add a patch, inshaAllah, which detects that if the range is outside of the one specified, the method will change to MATHEMATICAL automatically. This will allow backward compatibility.
Documentation and a write up is coming soon.