مستندات API نویان مپ
به مستندات رسمی Noyan Map خوش آمدید. در این مستندات با نحوه استفاده از API های نقشه، مسیریابی، تبدیل آدرس به مختصات و سایر سرویسهای مکانی آشنا میشوید.
دریافت API Key
برای شروع، ابتدا از طریق پنل کاربری یک API Key بسازید و سپس اولین درخواست خود را ارسال کنید.
استفاده از API Key در درخواستها
کلید را در هدر Authorization قرار دهید:
GET https://api.noyanmap.ir/v1/{command}/?{parameters}&apikey=your_api_key_here
شروع سریع با Leaflet
در این بخش، نحوه اضافه کردن نقشه نویان مپ به صفحه وب خود را گامبهگام یاد میگیرید.
افزودن CDN در تگ <head>
<!-- استایل Leaflet -->
<link rel="stylesheet" href="https://cdn.noyanmap.ir/leaflet@1.9.4/dist/leaflet.css" crossorigin="" />
<!-- اسکریپت Leaflet -->
<script src="https://cdn.noyanmap.ir/leaflet@1.9.4/dist/leaflet.js" crossorigin=""></script>
افزودن Container نقشه
<!-- در هر جایی از body -->
<div id="map" style="width: 100%; height: 500px; border-radius: 12px;"></div>
راهاندازی نقشه با JavaScript
// ۱. ساخت نقشه با مرکز تهران
const map = L.map('map').setView([35.6892, 51.3890], 13);
// ۲. اضافه کردن لایه کاشیها از Noyan Map
L.tileLayer('https://api.noyanmap.ir/v1/tiles/{z}/{x}/{y}.png', {
attribution: '© Noyan Map',
maxZoom: 19
}).addTo(map);
// ۳. اضافه کردن یک مارکر
L.marker([35.6892, 51.3890]).addTo(map).bindPopup('اینجا تهران است!').openPopup();
مرجع API ها
لیست کامل سرویسهای مکانی نویان مپ
لایههای نقشه
دریافت لایههای رستری نقشه به صورت PNG مناسب برای استفاده در Leaflet، MapLibre، OpenLayers و ...
پارامترها GET
| پارامتر | نوع | اجبار | توضیح |
|---|---|---|---|
| z | integer | بله | سطح زوم (۰ تا ۱۹) |
| x | integer | بله | مختصات X کاشی |
| y | integer | بله | مختصات Y کاشی |
| style | string | بله | day | night |
| apikey | key | بله | کلید دسترسی |
نمونه درخواست
GET https://api.noyanmap.ir/v1/tiles/{z}/{x}/{y}.png?style=day&apikey=NMAP_xxxxx
تبدیل مختصات به آدرس
تبدیل مختصات جغرافیایی به آدرس متنی. مناسب برای نمایش آدرس نقطه انتخاب شده روی نقشه.
پارامترها GET
| پارامتر | نوع | اجبار | توضیح |
|---|---|---|---|
| lat | float | بله | عرض جغرافیایی |
| lon | float | بله | طول جغرافیایی |
| apikey | key | بله | کلید دسترسی |
نمونه درخواست
GET https://api.noyanmap.ir/v1/reverse?lat=35.7165426&lon=51.2814613&apikey=NMAP_xxxxx
نمونه پاسخ
{
lat: "35.7165426",
lon: "51.2814613",
class: "railway",
type: "station",
addresstype: "railway",
name: "ورزشگاه آزادی",
display_name: "ورزشگاه آزادی, بزرگراه حجازی, ورزشگاه آزادی, ناحیه ۲, منطقه ۲۲ شهر تهران, تهران, بخش مرکزی تهران, شهرستان تهران, استان تهران, 13988-38511, ایران",
address: {
railway: "ورزشگاه آزادی",
road: "بزرگراه حجازی",
neighbourhood: "ورزشگاه آزادی",
quarter: "ناحیه ۲",
suburb: "منطقه ۲۲ شهر تهران",
city: "تهران",
municipality: "بخش مرکزی تهران",
county: "شهرستان تهران",
state: "استان تهران",
country: "ایران",
country_code: "ir"
},
status: true,
datetime: 1789385148,
datetime_miladi: "2026-09-14 14:55:48",
datetime_shamsi: "1405/06/23 14:55:48"
}
تبدیل آدرس به مختصات
تبدیل آدرس متنی به مختصات جغرافیایی. پشتیبانی از زبان فارسی و Autocomplete.
پارامترها GET
| پارامتر | نوع | اجبار | توضیح |
|---|---|---|---|
| q | text | بله | عنوان جستجو |
| apikey | key | بله | کلید دسترسی |
نمونه درخواست
GET https://api.noyanmap.ir/v1/geocode?q=میدان آزادی&apikey=NMAP_xxxxx
نمونه پاسخ
{
0: {
lat: "35.6997056",
lon: "51.3375039",
class: "place",
type: "square",
addresstype: "square",
name: "میدان آزادی",
display_name: "میدان آزادی, استاد معین, ناحیه ۱, منطقه ۹ شهر تهران, تهران, بخش مرکزی تهران, شهرستان تهران, استان تهران, ایران",
address: {
square: "میدان آزادی",
neighbourhood: "استاد معین",
quarter: "ناحیه ۱",
suburb: "منطقه ۹ شهر تهران",
city: "تهران",
municipality: "بخش مرکزی تهران",
county: "شهرستان تهران",
state: "استان تهران",
country: "ایران",
country_code: "ir"
}
},...
status: true,
datetime: 1789386341,
datetime_miladi: "2026-09-14 15:15:40",
datetime_shamsi: "1405/06/23 15:15:40"
}
کدهای خطا
لیست کدهای وضعیت HTTP و راهحل هر کدام.
| کد | توضیح | راهحل |
|---|---|---|
| 200 | successful response | |
| 201 | Bad request | پارامتر های وارد شده صحیح نمی باشد |
| 300 | missing API key | کلید دسترسی به وب سرویس وارد نشده است |
| 301 | invalid API key | کلید دسترسی به وب سرویس معتبر نمی باشد |
| 302 | API key is deactivate | کلید دسترسی به وب سرویس فعال نمی باشد |
| 303 | API key does not have permission | کلید دسترسی به این سرویس ندارد |
| 404 | Not Found | Endpoint را بررسی کنید |
| 429 | Too Many Requests | محدودیت نرخ را رعایت کنید |
| 500 | Server Error | با پشتیبانی تماس بگیرید |