{"openapi":"3.1.0","info":{"title":"API نرخ ارز نِت اَرز","version":"1.2.0","description":"نرخ لحظه‌ای دلار و ده‌ها ارز دیگر به تومان، با خرید/فروش، تغییر ۲۴ ساعته، مبدل، تاریخچه و آرشیو روزانه (دلار از ۱۳۶۰)، کندل OHLC، آمار، هشدار قیمت (وبهوک) و استریم زنده.\n\n**احراز هویت:** `Authorization: Bearer fx-ntz-v1-…` — کلید را از پنل کاربری ← «API نرخ ارز» بگیرید. کلید به دامنهٔ ثبت‌شده قفل است: درخواست مرورگر باید از همان دامنه بیاید (Origin/Referer) و درخواست سرور باید از IP مجاز باشد.\n\n**طرح‌ها:** رایگان (نرخ با 15 دقیقه تأخیر، تاریخچه: ندارد، 60 درخواست در دقیقه، 3,000 در روز) و پرو (5 دلار در ماه برای هر اپ: نرخ زنده، تاریخچه و آرشیو روزانه، OHLC، آمار، هشدار، استریم، 600 در دقیقه و 200,000 در روز).\n\n**واحدها:** همهٔ قیمت‌ها تومان (IRT) به‌ازای `unit` واحد از ارز هستند. پاسخ‌ها JSON با UTF-8 هستند.","contact":{"name":"پشتیبانی نِت اَرز","url":"https://netarz.ir"},"termsOfService":"https://netarz.ir/terms"},"servers":[{"url":"https://netarz.ir/api/fx/v1","description":"Production"}],"tags":[{"name":"نرخ‌ها","description":"تابلوی نرخ، تک‌ارز، مبدل و فهرست ارزها"},{"name":"تاریخچه","description":"سری زمانی، کندل، آمار و نرخ در یک لحظه"},{"name":"هشدار و وبهوک","description":"هشدار قیمت با تحویل امضاشده (پرو)"},{"name":"استریم","description":"رویدادهای زنده SSE (پرو)"},{"name":"حساب","description":"وضعیت سرویس و اطلاعات اپ"}],"security":[{"ApiKey":[]}],"paths":{"/rates":{"get":{"tags":["نرخ‌ها"],"summary":"تابلوی کامل نرخ‌ها","operationId":"listRates","parameters":[{"name":"codes","in":"query","schema":{"type":"string","example":"USD,EUR,AED"},"description":"فیلتر کدها (با کاما)"}],"responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Rate"}},"meta":{"$ref":"#/components/schemas/Meta"}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/rates/{code}":{"get":{"tags":["نرخ‌ها"],"summary":"نرخ یک ارز","operationId":"getRate","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","example":"EUR"},"description":"کد سه‌حرفی ارز (ISO 4217)"}],"responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Rate"},"meta":{"$ref":"#/components/schemas/Meta"}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"ارز ویژهٔ پرو در طرح رایگان (pro_required)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"ارز ناشناخته","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/convert":{"get":{"tags":["نرخ‌ها"],"summary":"تبدیل بین دو ارز (یا تومان/ریال)","operationId":"convert","parameters":[{"name":"from","in":"query","required":true,"schema":{"type":"string","example":"USD"}},{"name":"to","in":"query","required":true,"schema":{"type":"string","example":"IRT"}},{"name":"amount","in":"query","schema":{"type":"number","default":1,"example":100}},{"name":"side","in":"query","schema":{"type":"string","enum":["mid","buy","sell"],"default":"mid"}}],"responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"from":{"type":"string"},"to":{"type":"string"},"amount":{"type":"number"},"side":{"type":"string"},"rate":{"type":"number","example":102500},"result":{"type":"number","example":10250000}}},"meta":{"$ref":"#/components/schemas/Meta"}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"400":{"description":"ارز ناشناخته یا پارامتر نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/currencies":{"get":{"tags":["نرخ‌ها"],"summary":"فهرست ارزهای پشتیبانی‌شده","operationId":"listCurrencies","description":"همهٔ ارزها، از جمله ارزهای ویژهٔ پرو که با pro_only: true مشخص شده‌اند.","responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object"}}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/history/{code}":{"get":{"tags":["تاریخچه"],"summary":"سری زمانی نرخ","operationId":"history","description":"پرو (کل آرشیو، دلار از ۱۳۶۰؛ طرح رایگان: ندارد). هر نقطه آخرین نرخ شناخته‌شده در آن لحظه است. interval کمتر از یک روز از ثبت درون‌روزی (2026-07-15 به بعد) و یک روز یا بیشتر از آرشیو روزانه جواب می‌گیرد (meta.resolution).","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","example":"EUR"},"description":"کد سه‌حرفی ارز (ISO 4217)"},{"name":"range","in":"query","schema":{"type":"string","enum":["1h","24h","7d","30d","90d","1y","3y","5y","10y","all"],"default":"24h"},"description":"بازهٔ زمانی؛ به‌جای آن می‌توان from/to داد"},{"name":"from","in":"query","schema":{"type":"string","format":"date-time"},"description":"ISO 8601 یا Unix timestamp"},{"name":"to","in":"query","schema":{"type":"string","format":"date-time"}},{"name":"interval","in":"query","schema":{"type":"string","enum":["5m","15m","30m","1h","4h","1d","1w","1mo"]},"description":"بازهٔ نمونه‌برداری (پیش‌فرض بر اساس بازه)"},{"name":"format","in":"query","schema":{"type":"string","enum":["json","csv"],"default":"json"}}],"responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"t":{"type":"string","format":"date-time"},"v":{"type":"integer","example":102500}}}},"meta":{"type":"object"}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"فقط در طرح پرو","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/archive/{code}":{"get":{"tags":["تاریخچه"],"summary":"آرشیو روزانه (پرو)","operationId":"archive","description":"نرخ پایانی بازار آزاد در هر روز کاری، با تاریخ میلادی و شمسی؛ دلار از ۱۳۶۰. با `date` نرخ یک روز (یا آخرین روز کاری پیش از آن، `exact=false`)، با `from`/`to` بازه‌ای از روزها. تاریخ‌ها YYYY-MM-DD، میلادی یا شمسی (سال کمتر از ۱۷۰۰ شمسی خوانده می‌شود). `source`: market یا derived؛ `resolution`: daily، یا برای دلار پیش از ۱۳۸۰ monthly و پیش از ۱۳۶۴ yearly.","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","example":"EUR"},"description":"کد سه‌حرفی ارز (ISO 4217)"},{"name":"date","in":"query","schema":{"type":"string","example":"1397-07-03"}},{"name":"from","in":"query","schema":{"type":"string","example":"1399-01-01"}},{"name":"to","in":"query","schema":{"type":"string","example":"2021-03-20"}},{"name":"format","in":"query","schema":{"type":"string","enum":["json","csv"],"default":"json"}}],"responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string","example":"2018-09-25"},"jdate":{"type":"string","example":"1397-07-03"},"open":{"type":"integer"},"high":{"type":"integer"},"low":{"type":"integer"},"close":{"type":"integer","example":18670},"source":{"type":"string","enum":["market","derived"]},"resolution":{"type":"string","enum":["daily","monthly","yearly"]}}}},"meta":{"type":"object"}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"فقط در طرح پرو","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"400":{"description":"تاریخ نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"داده‌ای برای این تاریخ نیست","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/ohlc/{code}":{"get":{"tags":["تاریخچه"],"summary":"کندل‌های OHLC (پرو)","operationId":"ohlc","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","example":"EUR"},"description":"کد سه‌حرفی ارز (ISO 4217)"},{"name":"range","in":"query","schema":{"type":"string","enum":["1h","24h","7d","30d","90d","1y","3y","5y","10y","all"],"default":"24h"},"description":"بازهٔ زمانی؛ به‌جای آن می‌توان from/to داد"},{"name":"from","in":"query","schema":{"type":"string","format":"date-time"},"description":"ISO 8601 یا Unix timestamp"},{"name":"to","in":"query","schema":{"type":"string","format":"date-time"}},{"name":"period","in":"query","schema":{"type":"string","enum":["15m","30m","1h","4h","1d","1w","1mo"]},"description":"طول هر کندل؛ از یک روز به بالا از آرشیو روزانه"}],"responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"t":{"type":"string","format":"date-time"},"open":{"type":"integer"},"high":{"type":"integer"},"low":{"type":"integer"},"close":{"type":"integer"},"moves":{"type":"integer","description":"تعداد تغییرات ثبت‌شده در این دوره"}}}},"meta":{"type":"object"}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"فقط در طرح پرو","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/stats/{code}":{"get":{"tags":["تاریخچه"],"summary":"آمار بازه (پرو)","operationId":"stats","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","example":"EUR"},"description":"کد سه‌حرفی ارز (ISO 4217)"},{"name":"range","in":"query","schema":{"type":"string","enum":["1h","24h","7d","30d","90d","1y","3y","5y","10y","all"],"default":"24h"},"description":"بازهٔ زمانی؛ به‌جای آن می‌توان from/to داد"},{"name":"from","in":"query","schema":{"type":"string","format":"date-time"},"description":"ISO 8601 یا Unix timestamp"},{"name":"to","in":"query","schema":{"type":"string","format":"date-time"}}],"responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"open":{"type":"integer"},"close":{"type":"integer"},"high":{"type":"integer"},"low":{"type":"integer"},"average":{"type":"integer"},"change":{"type":"integer"},"change_percent":{"type":"number"},"range_percent":{"type":"number"},"volatility_percent":{"type":"number","nullable":true},"moves":{"type":"integer"}}}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"فقط در طرح پرو","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/snapshot/{code}":{"get":{"tags":["تاریخچه"],"summary":"نرخ در یک لحظهٔ مشخص (پرو)","operationId":"snapshot","parameters":[{"name":"code","in":"path","required":true,"schema":{"type":"string","example":"EUR"},"description":"کد سه‌حرفی ارز (ISO 4217)"},{"name":"at","in":"query","required":true,"schema":{"type":"string","format":"date-time"}}],"responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"at":{"type":"string"},"effective_from":{"type":"string"},"mid":{"type":"integer"}}}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"فقط در طرح پرو","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/stream":{"get":{"tags":["استریم"],"summary":"استریم زندهٔ نرخ‌ها — SSE (پرو)","operationId":"stream","description":"پاسخ text/event-stream. رویدادها: `rate` (هر تغییر نرخ)، `ping` (هر ۱۵ ثانیه)، `reconnect`. هر اتصال حدود یک دقیقه زنده می‌ماند و کلاینت دوباره وصل می‌شود.","parameters":[{"name":"codes","in":"query","schema":{"type":"string","example":"USD,EUR"},"description":"حداکثر ۲۰ کد"}],"responses":{"200":{"description":"رویدادهای SSE","content":{"text/event-stream":{"schema":{"type":"string"}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"فقط در طرح پرو","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/alerts":{"get":{"tags":["هشدار و وبهوک"],"summary":"فهرست هشدارها (پرو)","operationId":"listAlerts","responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Alert"}}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"فقط در طرح پرو","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["هشدار و وبهوک"],"summary":"ساخت هشدار (پرو)","operationId":"createAlert","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["code","type","webhook_url"],"properties":{"code":{"type":"string","example":"USD"},"type":{"type":"string","enum":["above","below","change","update"]},"threshold":{"type":"integer","example":105000,"description":"برای above/below (تومان)"},"percent":{"type":"number","example":1,"description":"برای change (حداقل حرکت درصدی)"},"webhook_url":{"type":"string","format":"uri","example":"https://example.com/hooks/netarz"},"secret":{"type":"string","description":"اختیاری؛ در غیر این صورت تولید و یک‌بار برگردانده می‌شود"},"label":{"type":"string"}}}}}},"responses":{"201":{"description":"ساخته شد (secret فقط همین یک بار)","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Alert"}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"فقط در طرح پرو","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"اعتبارسنجی","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/alerts/{id}":{"get":{"tags":["هشدار و وبهوک"],"summary":"جزئیات هشدار و ۲۰ تحویل اخیر","operationId":"getAlert","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Alert"}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"فقط در طرح پرو","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"یافت نشد","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"patch":{"tags":["هشدار و وبهوک"],"summary":"فعال/غیرفعال، برچسب، آدرس","operationId":"updateAlert","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"is_active":{"type":"boolean"},"label":{"type":"string"},"webhook_url":{"type":"string"}}}}}},"responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Alert"}}}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"فقط در طرح پرو","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"delete":{"tags":["هشدار و وبهوک"],"summary":"حذف هشدار","operationId":"deleteAlert","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"فقط در طرح پرو","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/alerts/{id}/test":{"post":{"tags":["هشدار و وبهوک"],"summary":"ارسال یک تحویل آزمایشی","operationId":"testAlert","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"فقط در طرح پرو","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/status":{"get":{"tags":["حساب"],"summary":"سلامت سرویس و تازگی نرخ","operationId":"status","responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/me":{"get":{"tags":["حساب"],"summary":"اپ فراخوان، طرح و سهمیهٔ امروز","operationId":"me","responses":{"200":{"description":"موفق","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"کلید ارسال نشده یا نامعتبر","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"قفل دامنه: Origin/Referer یا IP مجاز نیست، یا دامنه تأیید نشده","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"محدودیت نرخ یا سهمیهٔ روزانه","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"securitySchemes":{"ApiKey":{"type":"http","scheme":"bearer","bearerFormat":"fx-ntz-v1-…","description":"کلید اپ از پنل «API نرخ ارز». معادل: هدر X-API-Key."}},"schemas":{"Error":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","example":"origin_not_allowed"},"message":{"type":"string","example":"درخواست از این دامنه برای این اپ مجاز نیست."},"status":{"type":"integer","example":403},"docs":{"type":"string","format":"uri"}}}}},"Meta":{"type":"object","properties":{"quote_currency":{"type":"string","example":"IRT"},"usd_irt":{"type":"integer","example":102500,"description":"نرخ بازار دلار به تومان که همهٔ نرخ‌ها از آن ساخته می‌شود"},"as_of":{"type":"string","format":"date-time"},"delayed_minutes":{"type":"integer","example":15,"description":"طرح رایگان: تأخیر نسبت به نرخ زنده؛ پرو: ۰"},"is_delayed":{"type":"boolean"},"plan":{"type":"string","enum":["free","pro"]},"refresh_interval_minutes":{"type":"integer"},"source":{"type":"string","example":"netarz.ir"}}},"Rate":{"type":"object","properties":{"code":{"type":"string","example":"EUR"},"name":{"type":"string","example":"یورو"},"name_en":{"type":"string","example":"Euro"},"symbol":{"type":"string","example":"€"},"unit":{"type":"integer","example":1,"description":"تعداد واحدی که قیمت برای آن است (دینار عراق: ۱۰۰)"},"per_usd":{"type":"number","example":0.86},"is_pegged":{"type":"boolean"},"buy":{"type":"integer","example":118600},"sell":{"type":"integer","example":119800},"mid":{"type":"integer","example":119200},"change_24h_percent":{"type":"number","nullable":true,"example":0.42},"quote_currency":{"type":"string","example":"IRT"}}},"Alert":{"type":"object","properties":{"id":{"type":"integer"},"label":{"type":"string","nullable":true},"code":{"type":"string","example":"USD"},"type":{"type":"string","enum":["above","below","change","update"]},"threshold":{"type":"integer","nullable":true,"example":105000},"percent":{"type":"number","nullable":true,"example":1.5},"webhook_url":{"type":"string","format":"uri"},"is_active":{"type":"boolean"},"armed":{"type":"boolean"},"last_value":{"type":"integer","nullable":true},"last_triggered_at":{"type":"string","format":"date-time","nullable":true},"triggered_count":{"type":"integer"}}}}}}