Namaztimes.kz logo
 

API Қалалар мен елді мекендер тізімі

REST API


REST API Namaztimes.kz сайтының дерекқорын қолдана отырып қарапайым HTTPS сұранысы арқылы Қалалар мен елді мекендер тізімін алуға мүмкіндік береді.
REST API ақпараттарды JSON, XML форматтарында алуды қамтамасыз етеді. Барлық ақпараттар UTF-8 кодировкасы бойынша.

Анықтама


GET сұратымын жіберу

https://namaztimes.kz/ru/api/cities[?id={state}][&type={format}]

API - сұратымды HTTPS протоколында қабылдайды.
Қолданымдағы форматтар JSON, XML.

{state}-ге бір Облыс, аудан 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']
);
$result = !$is_bot ? json_decode(file_get_contents('https://namaztimes.kz/ru/api/cities?id={city_id}'), true) : [];
var_dump($result);

Сондай-ақ тұтынушы тарапынан 100 бет парақталған жағдайда, АРІ-ге 100 рет сұратым жасамау үшін сұратым нәтижелерін КЭШке сақтап алу қажет.

Нәтижелерге мысалдар


API-ге JSON форматы бойынша сұратым нәтижесі

    //GET https://namaztimes.kz/api/cities?id=almaty&type=json
    {
        8408: "Алматы",
        8409: "Бақанас",
        ...
        74900: "Кеген",
        74901: "Жаркент"
    }
    

API-ге XML форматы бойынша сұратым нәтижесі

    //GET https://namaztimes.kz/api/cities?id=almaty&type=xml

    <response>
        <city>
            <id>8408</id>
            <name>Алматы</name>
        </city>
        <city>
            <id>8409</id>
            <name>Бақанас</name>
        </city>
        <city>
            <id>8410</id>
            <name>Бірлік</name>
        </city>
        ...
        <city>
            <id>74901</id>
            <name>Жаркент</name>
        </city>
    </response>
    

Нәтижелердің анықтамасы


API-ге сұратым бойынша JSON форматында алған нәтижелердің анықтамасы.

city_id: name

city_id - Қала идентификаторы (id).

name - Қала аты.

>API-ге сұратым бойынша XML форматында алған нәтижелердің анықтамасы.

response->city->id - Қала идентификаторы (id).

response->city->name - Қала аты.

Қолдану мысалдары


GET https://namaztimes.kz/ru/api/cities?id=almaty&type={format}

API-ге жіберілген {format} JSON,XML форматындағы сұратым нәтижелерін өңдеу. Облысқа қатысты қалалар мен елді мекендер тізімін шақыру {state} = almaty.

//PHP JSON
$json = file_get_contents(
    'https://namaztimes.kz/api/cities?id=almaty&type=json'
);

$json = json_decode($json,true);
print_r($json);

// PHP XML
$xml = simplexml_load_file(
    'https://namaztimes.kz/api/cities?id=almaty&type=xml'
);

$xml = json_encode($xml);
$xml = json_decode($xml,true);
$xml = $xml['city'];
$data = [];

foreach ($xml as $item){
    $data[$item['id']]= $item['name'];
}

unset($xml);
print_r($data);
                                
//PHP JSON
Array
(
    [8408] => Алматы
    [8409] => Бақанас
    [8410] => Бірлік
    ...
    [74900] => Кеген
    [74901] => Жаркент
)

//PHP XML
Array
(
    [8408] => Алматы
    [8409] => Бақанас
    [8410] => Бірлік
    ...
    [74900] => Кеген
    [74901] => Жаркент
)