You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

411 lines
11 KiB
YAML

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

openapi: 3.0.3
info:
title: Diyanet Namaz Vaktim API
version: 1.0.0
description: |
OpenAPI spec derived from decompiled Android app usage.
Base URL and endpoints reflect what the client calls.
servers:
- url: https://namazvakti.diyanet.gov.tr/api
security:
- basicAuth: []
tags:
- name: PrayerTimes
- name: Locations
- name: Content
- name: Mosques
components:
securitySchemes:
basicAuth:
type: http
scheme: basic
schemas:
ResultMessage:
type: object
properties:
messageType:
type: integer
nullable: true
messageContent:
type: string
nullable: true
messageCode:
type: integer
nullable: true
PrayerTime:
type: object
properties:
imsak:
type: string
nullable: true
gunes:
type: string
nullable: true
ogle:
type: string
nullable: true
ikindi:
type: string
nullable: true
aksam:
type: string
nullable: true
yatsi:
type: string
nullable: true
gunes_dogus:
type: string
nullable: true
gunes_batis:
type: string
nullable: true
kible_saati:
type: string
nullable: true
hicri_tarih_uzun:
type: string
nullable: true
hicri_tarih_kisa:
type: string
nullable: true
miladi_tarih_uzun:
type: string
nullable: true
miladi_tarih_uzun_Iso8601:
type: string
nullable: true
miladi_tarih_kisa_Iso8601:
type: string
nullable: true
imsak_bg:
type: string
nullable: true
gunes_bg:
type: string
nullable: true
ogle_bg:
type: string
nullable: true
ikindi_bg:
type: string
nullable: true
aksam_bg:
type: string
nullable: true
yatsi_bg:
type: string
nullable: true
ayin_sekli_url:
type: string
nullable: true
MyLocation:
type: object
description: Location object returned under "konum".
properties:
konum_Id:
type: integer
nullable: true
timezone:
type: string
nullable: true
additionalProperties: true
ResultLocation:
type: object
properties:
konum:
$ref: '#/components/schemas/MyLocation'
namazVakti:
type: array
items:
$ref: '#/components/schemas/PrayerTime'
ResultLocationResponse:
type: object
properties:
success:
type: boolean
resultMessage:
$ref: '#/components/schemas/ResultMessage'
resultObject:
$ref: '#/components/schemas/ResultLocation'
serverTime:
type: string
example:
success: true
resultMessage:
messageType: 1
messageContent: Namaz vakitleri başarıyla oluşturuldu
messageCode: 200
resultObject:
konum:
konum_Id: 9340
timezone: Europe/Istanbul
namazVakti:
- imsak: "2026-02-19T06:19:00.0000000+03:00"
gunes: "2026-02-19T07:43:00.0000000+03:00"
ogle: "2026-02-19T13:20:00.0000000+03:00"
ikindi: "2026-02-19T16:18:00.0000000+03:00"
aksam: "2026-02-19T18:47:00.0000000+03:00"
yatsi: "2026-02-19T20:06:00.0000000+03:00"
gunes_dogus: "2026-02-19T07:50:00.0000000+03:00"
gunes_batis: "2026-02-19T18:40:00.0000000+03:00"
kible_saati: "2026-02-19T11:44:00.0000000+03:00"
hicri_tarih_uzun: 1 Ramazan 1447
hicri_tarih_kisa: 1.9.1447
miladi_tarih_uzun: 19 Şubat 2026 Perşembe
miladi_tarih_uzun_Iso8601: "2026-02-19T00:00:00.0000000+03:00"
miladi_tarih_kisa_Iso8601: 19.02.2026
imsak_bg: "https://namazvakti.diyanet.gov.tr/api/images/main_imsak.png?v=6"
gunes_bg: "https://namazvakti.diyanet.gov.tr/api/images/main_gunes.png?v=6"
ogle_bg: "https://namazvakti.diyanet.gov.tr/api/images/main_ogle.png?v=6"
ikindi_bg: "https://namazvakti.diyanet.gov.tr/api/images/main_ikindi.png?v=6"
aksam_bg: "https://namazvakti.diyanet.gov.tr/api/images/main_aksam.png?v=6"
yatsi_bg: "https://namazvakti.diyanet.gov.tr/api/images/main_yatsi.png?v=6"
ayin_sekli_url: "https://namazvakti.diyanet.gov.tr/images/r1.gif"
serverTime: "20/02/2026 - 23:03"
PrayerTimeVersion:
type: object
additionalProperties: true
PrayerTimeVersionResponse:
type: object
properties:
success:
type: boolean
resultMessage:
$ref: '#/components/schemas/ResultMessage'
resultObject:
$ref: '#/components/schemas/PrayerTimeVersion'
serverTime:
type: string
CityInfo:
type: object
additionalProperties: true
CityInfoResponse:
type: object
properties:
success:
type: boolean
resultMessage:
$ref: '#/components/schemas/ResultMessage'
resultObject:
type: array
items:
$ref: '#/components/schemas/CityInfo'
serverTime:
type: string
Mosque:
type: object
additionalProperties: true
MosquesResponse:
type: object
properties:
success:
type: boolean
resultMessage:
$ref: '#/components/schemas/ResultMessage'
resultObject:
type: array
items:
$ref: '#/components/schemas/Mosque'
serverTime:
type: string
SearchLocation:
type: object
properties:
cityID:
type: integer
cityNameTR:
type: string
stateNameTR:
type: string
countryNameTR:
type: string
cityNameEN:
type: string
stateNameEN:
type: string
countryNameEN:
type: string
latitude:
type: number
format: double
longitude:
type: number
format: double
SearchLocationsResults:
type: object
properties:
results:
type: array
items:
$ref: '#/components/schemas/SearchLocation'
SearchLocationsResponse:
type: object
properties:
success:
type: boolean
resultMessage:
$ref: '#/components/schemas/ResultMessage'
resultObject:
$ref: '#/components/schemas/SearchLocationsResults'
serverTime:
type: string
example:
success: true
resultMessage:
messageType: 1
messageContent: İlçeler başarıyla listelendi
messageCode: 200
resultObject:
results:
- cityID: 9340
cityNameTR: İZNİK
stateNameTR: BURSA
countryNameTR: TÜRKİYE
cityNameEN: IZNIK
stateNameEN: BURSA
countryNameEN: TÜRKİYE
latitude: 40.429
longitude: 29.711
serverTime: "20/02/2026 - 23:01"
VersesHadithsPrayersArrays:
type: object
additionalProperties: true
VersesHadithsPrayersResponse:
type: object
properties:
success:
type: boolean
resultMessage:
$ref: '#/components/schemas/ResultMessage'
resultObject:
$ref: '#/components/schemas/VersesHadithsPrayersArrays'
serverTime:
type: string
paths:
/NamazVakti/Aylik:
get:
tags: [PrayerTimes]
summary: Get monthly prayer times
description: |
Returns monthly prayer times for a location.
Provide either ilceId or latitude/longitude.
parameters:
- in: query
name: ilceId
schema:
type: integer
required: false
- in: query
name: latitude
schema:
type: number
format: double
required: false
- in: query
name: longitude
schema:
type: number
format: double
required: false
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ResultLocationResponse'
/Version:
get:
tags: [PrayerTimes]
summary: Get prayer time version
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PrayerTimeVersionResponse'
/Search/GetByName:
get:
tags: [Locations]
summary: Search locations by name
parameters:
- in: query
name: searchText
schema:
type: string
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SearchLocationsResponse'
/ilce/GetByCoordinat:
get:
tags: [Locations]
summary: Get city/district info by coordinates
parameters:
- in: query
name: latitude
schema:
type: number
format: double
required: true
- in: query
name: longitude
schema:
type: number
format: double
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CityInfoResponse'
/Cami/GetByCoordinat:
get:
tags: [Mosques]
summary: Get mosques near coordinates
parameters:
- in: query
name: latitude
schema:
type: number
format: double
required: true
- in: query
name: longitude
schema:
type: number
format: double
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/MosquesResponse'
/AyetDuaHadis/GetAll:
get:
tags: [Content]
summary: Get verses, hadiths, and prayers
parameters:
- in: query
name: dil
schema:
type: string
required: true
description: Language code (e.g., tr)
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/VersesHadithsPrayersResponse'