Namaztimes.kz logo
 

API Время намазов

REST API


REST API позволяет с помощью простого запроса по HTTPS получить наиболее актуальную и расширенную информацию о временах намазов, используя базу данных Namaztimes.kz
REST API позволяет получить данные в JSON, XML форматах. Все данные в кодировке UTF-8.

Описание


Отправьте GET запрос на

https://namaztimes.kz/api/praytimes[?id={city_id}][&type={format}]

API поддерживает запросы на HTTPS.
Поддерживаемые форматы xml, json.

В {city_id} можно указывать один id города. Список городов можно получить здесь .
Если не указан {city_id} то выводится информация о городе Астана.

В {format} можно указывать формат передачи данных xml, json. Если {format} не указан, то формат автоматически становится json и добавляется функция console.dir.

Поэтому обязательно фильтруйте запросы от поисковых ботов. Это можно сделать простейшим регулярным выражением, вида:

$is_bot = preg_match(
"~(Google|Yahoo|Rambler|Bot|Yandex|Spider|Snoopy|Crawler|Finder|Mail|curl)~i",
$_SERVER['HTTP_USER_AGENT']
);
$geo = !$is_bot ? json_decode(file_get_contents('https://namaztimes.kz/api/praytimes'), true) : [];
var_dump($geo);

Также следует кэшировать результаты запросов для пользователей, чтобы при посещении пользователем 100 страниц сайта, не делать 100 запросов к API.

Примеры использования


GET https://namaztimes.kz/api/praytimes?id=8408&type=json

Выводит информацию (даты по Исламскому календарю, по григорианскому календарю, направление Киблы, магнитное отклонение, градус компаса направления Киблы а также времена намазов на один день) о городе Алматы в формате JSON.

GET https://namaztimes.kz/api/praytimes?id=8359&type=xml

Выводит информацию (даты по Исламскому календарю, по григорианскому календарю, направление Киблы, магнитное отклонение, градус компаса направления Киблы а также времена намазов на один день) о городе Астана в формате XML.

Примеры результатов


Результат обращения к API в JSON

//GET https://namaztimes.kz/api/praytimes?id=8408&type=json
{
	islamic_date: "1440-04-18",
	date: "2018-12-25",
	praytimes: {
		imsak: "6:55",
		bamdat: "7:15",
		kun: "9:10",
		ishraq: "10:20",
		kerahat: "13:01",
		besin: "13:27",
		asriauual: "15:08",
		ekindi: "15:38",
		isfirar: "16:20",
		aqsham: "17:19",
		ishtibaq: "18:31",
		quptan: "19:20",
		ishaisani: "19:33"
	},
	attributes: {
		ID: "8359",
		countryID: "99",
		arzDer: "51",
		arzDak: "9",
		arzYon: "N",
		tulDer: "71",
		tulDak: "28",
		tulYon: "E",
		STulDer: "90",
		STulDak: "0",
		STulYon: "E",
		qiblaangle: "231.52",
		magdeg: "9.71",
		CityName: "Астана"
	}
}
                        

Результат обращения к API в XML

//GET https://namaztimes.kz/api/praytimes?id=8359&type=xml
<response>
	<islamic_date>1440-04-18</islamic_date>
	<date>2018-12-25</date>
	<praytimes>
		<imsak>6:55</imsak>
		<bamdat>7:15</bamdat>
		<kun>9:10</kun>
		<ishraq>10:20</ishraq>
		<kerahat>13:01</kerahat>
		<besin>13:27</besin>
		<asriauual>15:08</asriauual>
		<ekindi>15:38</ekindi>
		<isfirar>16:20</isfirar>
		<aqsham>17:19</aqsham>
		<ishtibaq>18:31</ishtibaq>
		<quptan>19:20</quptan>
		<ishaisani>19:33</ishaisani>
	</praytimes>
	<attributes>
		<ID>8359</ID>
		<countryID>99</countryID>
		<arzDer>51</arzDer>
		<arzDak>9</arzDak>
		<arzYon>N</arzYon>
		<tulDer>71</tulDer>
		<tulDak>28</tulDak>
		<tulYon>E</tulYon>
		<STulDer>90</STulDer>
		<STulDak>0</STulDak>
		<STulYon>E</STulYon>
		<qiblaangle>231.52</qiblaangle>
		<magdeg>9.71</magdeg>
		<CityName>Астана</CityName>
	</attributes>
</response>
                        

Описание результатов


Описание полученных результатов обращения к API

islamic_date - Дата по Исламскому календарю на момент запроса.

date - Дата по григорианскому календарю на момент запроса.

praytimes - Времена намазов. Подробнее о временах намаза можно узнать тут...

attributes - Дополнительные атрибуты(Информация) по городу на момент запроса.

attributes->ID - Id города.

attributes->countryID - Id страны запрашиваемого города.

attributes->CityName - Имя запрашиваемого города.

attributes->Latitude_1 - 1-значение Широты запрашиваемого города.

attributes->Latitude_2 - 2-значение Широты запрашиваемого города.

attributes->Latitude_3 - 3-значение Широты запрашиваемого города.

attributes->Longitude_1 - 1-значение Долготы запрашиваемого города.

attributes->Longitude_2 - 2-значение Долготы запрашиваемого города.

attributes->Longitude_3 - 3-значение Долготы запрашиваемого города.

attributes->QiblaDir - Угол направление Киблы без магнитного отклонения запрашиваемого города.

attributes->MagnetDev - Магнитное отклонение запрашиваемого города.