Fazilet Takvimi APIfazilettakvimi.com ↗
Access Islamic prayer times, Ramadan imsakiye schedules, Hijri/Rumi dates, and Turkish religious holidays for locations worldwide via the Fazilet Takvimi API.
What is the Fazilet Takvimi API?
This API covers 7 endpoints that expose Islamic prayer times, monthly Ramadan timetables, and religious/official holiday data sourced from Fazilet Takvimi. Starting with list_countries, you can drill down through countries, cities, and districts to retrieve daily prayer windows — imsak, sabah, gunes, ogle, ikindi, aksam, and yatsi — alongside Hijri and Rumi calendar dates, moon phase images, and Kandil night observances for any supported location.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/66791d4a-3a57-42ee-9a23-f5c807f44fed/list_countries' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace fazilettakvimi-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: Fazilet Takvimi SDK — prayer times, calendars, holidays."""
from parse_apis.fazilet_takvimi_api import FaziletTakvimi, NotFoundError
client = FaziletTakvimi()
# List all supported countries
for country in client.countries.list(limit=5):
print(country.id, country.adi)
# Navigate from Turkey (id=1) into its cities
turkey = client.country(id=1)
for city in turkey.cities.list(limit=3):
print(city.id, city.adi, city.has_sub_district)
# Drill into Istanbul's districts
istanbul = client.city(id=31)
for district in istanbul.districts.list(limit=3):
print(district.id, district.adi)
# Get daily prayer times for Fatih district
fatih = client.district(id=1508)
daily = fatih.daily_prayer_times()
print(daily.region_name, daily.timezone)
for day in daily.prayer_times:
print(day.date, day.hicri_tarih, day.times.imsak, day.times.aksam)
# Get the monthly Ramadan timetable
monthly = fatih.monthly_prayer_times()
print(monthly.region_name, monthly.ramadan_day, monthly.eid_prayer_time)
for entry in monthly.timetable[:3]:
print(entry.miladi_tarih, entry.imsak, entry.aksam)
# Retrieve religious and official holidays with error handling
try:
calendar = client.holidaycalendars.get(year=2026)
print(calendar.year)
for holiday in calendar.holidays[:5]:
print(holiday.type, holiday.name, holiday.date)
except NotFoundError as exc:
print(f"Calendar not found: {exc}")
print("exercised: countries.list / cities.list / districts.list / daily_prayer_times / monthly_prayer_times / holidaycalendars.get")
List all supported countries for prayer times. Returns every country available in the Fazilet Takvimi system with its integer ID and Turkish name. Use the country ID to drill into cities via list_cities.
No input parameters required.
{
"type": "object",
"fields": {
"countries": "array of country objects with id and adi (name)"
},
"sample": {
"data": {
"countries": [
{
"id": 1,
"adi": "Türkiye"
},
{
"id": 57,
"adi": "ABD"
},
{
"id": 14,
"adi": "Almanya"
}
]
},
"status": "success"
}
}About the Fazilet Takvimi API
Location Hierarchy
The API uses a three-level geographic hierarchy: country → city → district. list_countries returns every supported country with its integer id and Turkish adi (name). Pass that country_id to list_cities to get city-level records, each of which carries a hasSubDistrict boolean indicating whether the city has finer-grained districts. Where districts exist, list_districts accepts a city_id and returns district objects with id and adi. Both city IDs and district IDs are accepted by all prayer-time endpoints.
Prayer Times and Calendar Data
get_daily_prayer_times returns a prayer_times array covering today and the next few days. Each entry includes the Gregorian date, hicri_tarih (Hijri date), rumi_tarih (Rumi/Julian date), a statistics field, chronology entries for historical Islamic events on that day, a moon_phase_image URL, and the seven named prayer times. The endpoint also returns the IANA timezone string and region_name for the requested location. get_calendar_date_info exposes the same response shape and accepts the same district_id parameter — useful when calendar metadata is the primary concern rather than prayer scheduling.
Monthly Imsakiye and Ramadan Schedule
get_monthly_prayer_times provides a full month-long timetable intended for Ramadan planning. Each row in the timetable array contains hicri_tarih, miladi_tarih, and all seven prayer times in HH:MM local time. The response also exposes ramadan_day (an integer that is 0 outside Ramadan) and eid_prayer_time so you can surface the Eid al-Fitr prayer time directly.
Religious and Official Holidays
get_religious_and_official_days accepts an optional year integer (defaulting to the current year) and returns a holidays array for Turkey. Each holiday object has a type of either 'official' or 'religious', a name, and a date in Turkish description format. Religious entries include Kandil nights, the start of Ramadan, Kadir Gecesi, Hicri new year, and Ashura. Official entries cover national public holidays and Bayram breaks.
The Fazilet Takvimi API is a managed, monitored endpoint for fazilettakvimi.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when fazilettakvimi.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official fazilettakvimi.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Display daily prayer schedules in a mobile app by querying get_daily_prayer_times with a district ID
- Generate printable Ramadan imsakiye calendars using the full monthly timetable from get_monthly_prayer_times
- Build a Hijri/Rumi date converter by reading hicri_tarih and rumi_tarih fields from prayer-time responses
- Show moon phase imagery alongside prayer times using the moon_phase_image URL returned per day
- Populate a Turkish public holiday calendar by filtering get_religious_and_official_days results by type='official'
- Alert users to upcoming Kandil nights and Kadir Gecesi by watching get_religious_and_official_days type='religious' entries
- Let users search prayer times by country and city name without knowing numeric IDs by chaining list_countries → list_cities → list_districts
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.