دسترسی عمومی به قیمت لحظهای بیش از ۱۰۰ ابزار مالی بازار ایران و جهان — بدون کلید، بدون ثبتنام. فقط درخواست بزنید و JSON بگیرید.
همه درخواستها GET هستند و پاسخ application/json; charset=utf-8 برمیگردانند. آدرس پایه:
# همه قیمتها curl https://ibahoosham.ir/arzprice/w-api/prices/ # فقط دسته طلا curl https://ibahoosham.ir/arzprice/w-api/category/gold # تاریخچه ۷ روزه دلار curl "https://ibahoosham.ir/arzprice/w-api/history/?symbol=USD&range=7d"
اندپوینت را انتخاب (یا مسیر دلخواهتان را بنویسید) و «اجرا» بزنید — پاسخ واقعی همین لحظه از سرور ارزپرایس برمیگردد:
💡 مسیرها نسبت به w-api/ هستند (مثلاً prices/ یا history/?symbol=USD&range=7d). این کنسول مستقیم از مرورگر شما به API وصل میشود — همان محدودیت نرخ ۱۲۰ درخواست/دقیقه اعمال میشود.
قیمتهای زنده ارزپرایس را با دو خط کد در هر سایت یا وبلاگی نمایش دهید — iframe امن، ریسپانسیو و با بهروزرسانی خودکار هر ۶۰ ثانیه. پیشنمایش واقعی همینجا (با همان لودر widget.js):
<script src="https://ibahoosham.ir/arzprice/widget.js" async></script>
<div data-arzprice-widget
data-symbols="دلار آمریکا,یورو,بیتکوین"
data-theme="dark"
data-rows="6"
data-height="420"></div>
| پارامتر | مقادیر | توضیح |
|---|---|---|
data-symbols | نامهای ابزار با کاما | فارسی یا لاتین («دلار آمریکا» یا «USD») — خالی = انتخاب پیشفرض |
data-theme | auto | light | dark | پوسته ویجت (پیشفرض: پوسته بازدیدکننده) |
data-rows | ۱ تا ۱۲ | حداکثر ردیفها (پیشفرض ۸) |
data-title | متن دلخواه | عنوان هدر ویجت (پیشفرض «ارزپرایس») |
data-height | ۲۲۰ تا ۱۲۰۰ | ارتفاع iframe به پیکسل (پیشفرض ۴۲۰) |
پیشنمایش مستقیم آدرس هم ممکن است: /arzprice/embed/?symbols=USD,EUR&theme=dark&rows=6 — فید RSS اخبار: /rss 📡
| اندپوینت | توضیح |
|---|---|
w-api/prices/ | همه ابزارها (۱۰۰+) با قیمت، درصد تغییر، OHLC — کش ~۶۰ ثانیه |
w-api/category/{cat} | ابزارهای یک دسته — cat: gold · silver · currency · crypto · commodity · energy |
w-api/instrument/{cat}/{slug} | جزئیات یک ابزار + تنظیمات سئو |
w-api/history/?symbol=&range= | تاریخچه قیمت — range: 1h | 24h | 7d | 30d (حداکثر ۲۴۰ نقطه) |
w-api/stats/ | آمار عمومی (تعداد کاربران، بازدید کل) |
w-api/news/?cat=&limit=&page= | جدید v4.15 — لینکدونی اخبار (فقط لینک، بدون محتوا) — cat: gold|silver|currency|crypto|commodity|energy یا خالی=همه؛ POST با توکن ادمین = بهروزرسانی منابع |
w-api/sitemap/ | لیست همه URL ها برای crawler ها |
og/{cat}/{slug}.png | تصویر OG با قیمت لحظهای (۱۲۰۰×۶۳۰) برای اشتراکگذاری |
{
"ok": true,
"count": 106,
"items": [
{
"symbol": "USD",
"name": "دلار آمریکا",
"category": "currency",
"price": 2643050,
"unit": "rial", // rial | usd
"changePercent": -0.3,
"high": 2646100, "low": 2643050, "open": 2643050,
"timestamp": "2026-10-11T20:23:41",
"emoji": "🇺🇸",
"slug": "USD",
"url": "https://ibahoosham.ir/arzprice/p/currency/USD"
}
]
}
rial یعنی قیمت به ریال است (تومان = ریال ÷ ۱۰) و usd یعنی قیمت به دلار (ابزارهای جهانی مثل انس طلا و بیتکوین/USDT).اینها با session کوکی مرورگر کاربر کار میکنند و برای استفاده مستقیم مناسب نیستند:
| اندپوینت | متد | توضیح |
|---|---|---|
w-api/favorites/ | GET / POST | لیست / toggle علاقهمندیها (body: {"symbol":"USD"}) |
w-api/alerts/ | GET / POST / DELETE | مدیریت آلارم قیمت (body: {"symbol","direction","target"}) — جدید v4.5: بهجای target میتوانید {"percent":3} بفرستید تا هدف از قیمت لحظهای محاسبه شود |
w-api/push-prefs/ | GET / POST | جدید v4.6 — تنظیمات اعلانها: دستههای فعال {"cats":["gold","currency"]}، آستانه نوسان {"min_change_pct":3} و کلید هشدار خودکار {"volatility_on":true} |
w-api/portfolio/ | GET / POST / DELETE | بهروز v4.8 — سبد دارایی: GET داراییها با ارزش لحظهای، جمع کل و سود/زیان (pnl_rial، pnl_pct، cost_rial)؛ جدید v4.8: GET ?history=1&days=30 تاریخچه روزانه ارزش سبد (points با ymd/label/total/cost/pnl/pnl_pct — برچسب تاریخ شمسی)؛ POST ثبت/بهروزرسانی {"symbol","amount","note","buy_price"} (قیمت خرید اختیاری برای محاسبه سود/زیان؛ buy_price:null پاک میکند؛ کلید را نفرستید تا حفظ شود؛ amount=0 حذف)؛ جابهجایی تکردیفی با {"action":"move","id":X,"dir":"up"|"down"} یا ترتیب کامل بعد از کشیدنورهاکردن با {"action":"reorder","ids":[…]} (جدید v4.8)؛ DELETE ?id= |
w-api/webhooks/ | GET / POST / DELETE | v4.9 · ۳ رویداد v4.10 — مدیریت وبهوک: GET فهرست + ۳۰ تحویل اخیر؛ POST ثبت/ویرایش {"url","secret","symbols":[…],"min_change_pct":2,"active":true} یا {"action":"toggle","id","active"} یا {"action":"test","id"}؛ DELETE ?id= — سقف ۵ وبهوک؛ صفحه مدیریت: /webhooks |
بهجای polling، رویدادهای بازار را بهصورت POST با JSON دریافت کنید: جابهجایی قیمت، نوسان مهم و آلارم کاربران. مدیریت وبهوکها از صفحه /webhooks 🪝 (نیازمند ورود) — تا ۵ وبهوک برای هر حساب.
X-ArzPrice-Event)| رویداد | چه زمانی؟ | فیلترها |
|---|---|---|
price_change | جابهجایی |۲۴ساعته| هر ابزار ≥ آستانه وبهوک شما | دامنه ابزار + آستانه — حداکثر ۳ ابزار per hook per اجرا |
volatility | موتور نوسان، ابزار منتخب کاربران (علاقهمندیها) را پرچمگذاری کند | دامنه ابزار + آستانه — حداکثر ۳ per اجرا؛ یک بار در روز per ابزار |
alert_triggered | آلارم قیمتی هر کاربری به هدفش برسد (بالا/پایین) | فقط دامنه ابزار (بدون آستانه) — حداکثر ۵ per اجرا؛ یک بار در روز per ابزار |
test | دکمه «⚡ تست» در صفحه مدیریت | — |
| ویژگی | مقدار |
|---|---|
| آستانه تغییر | ۰.۱٪ تا ۵۰٪ — تغییر ۲۴ ساعته هر ابزار مقایسه میشود (روی price_change و volatility) |
| دامنه ابزارها | همه ابزارها یا حداکثر ۶۰ ابزار منتخب |
| Dedup | هر رویداد+ابزار در هر روز (تقویم تهران) حداکثر یک ارسال |
| Retry (v4.11 · per-hook v4.12) | خطای شبکه یا پاسخ ۵xx تا ۳ بار (پیشفرض) با وقفه نمایی (۰.۴ و ۱.۲ ثانیه) تکرار میشود؛ خطای ۴xx تکرار نمیشود — از v4.12 سقف تلاش هر وبهوک جداگانه قابل تنظیم است (۱ تا ۴، فیلد «حداکثر تلاش ارسال» در /webhooks) و تعداد تلاشها در گزارش تحویل ثبت میشود |
| امنیت | جدید v4.11: هدر X-ArzPrice-Signature: t=<unix>,v1=HMAC_SHA256("<t>.<body>", secret) (امضای زماندار ضد replay) + هدر قدیمی X-ArzPrice-Signature-Body: sha256=HMAC_SHA256(body, secret) برای سازگاری گیرندههای قبلی — اگر secret ثبت کرده باشید |
| مهلت پاسخ | ۶ ثانیه per تلاش — پاسخ 2xx یعنی موفق؛ گزارش کامل در صفحه مدیریت |
{
"event": "price_change",
"source": "arzprice",
"symbol": "BTC/IRT",
"name": "بیت کوین",
"category": "crypto",
"price": 219020000030,
"price_fmt": "۲۱۹٬۰۲۰٬۰۰۰٬۰۳۰ ریال",
"unit": "rial",
"change_pct": -0.16,
"direction": "down",
"high": 21999779998, "low": 21901695369, "open": 21936648987,
"instrument_url": "https://ibahoosham.ir/arzprice/p/crypto/btcirt",
"sent_at": "2026-10-12T09:00:00Z"
}
تأیید امضا سمت شما — روش جدید زماندار (توصیهشده؛ جلوگیری از replay attack):
// $body = file_get_contents('php://input'); $m = []; if (!preg_match('/t=(\d+),v1=([a-f0-9]+)/', $_SERVER['HTTP_X_ARZPRICE_SIGNATURE'] ?? '', $m)) { http_response_code(401); exit; } // ۱) امضا معتبر؟ ۲) فاصله زمانی کمتر از ۵ دقیقه؟ (جلوگیری از replay) $expected = hash_hmac('sha256', $m[1] . '.' . $body, $secret); if (!hash_equals($expected, $m[2]) || abs(time() - (int)$m[1]) > 300) { http_response_code(401); exit; // امضا نامعتبر یا منقضی }
روش قدیمی (بدون timestamp) هم همچنان روی هدر X-ArzPrice-Signature-Body ارسال میشود تا گیرندههای قبلی بدون تغییر کار کنند:
$expected = 'sha256=' . hash_hmac('sha256', $body, $secret); if (!hash_equals($expected, $_SERVER['HTTP_X_ARZPRICE_SIGNATURE_BODY'] ?? '')) { http_response_code(401); exit; // امضا نامعتبر }
نمونه رویداد alert_triggered:
{
"event": "alert_triggered",
"source": "arzprice",
"hook_id": 1,
"symbol": "BTC/IRT",
"alert_id": 42,
"condition": "above",
"target_price": 7000000000,
"target_price_fmt": "۷٬۰۰۰٬۰۰۰٬۰۰۰ ریال",
"triggered_price": 7042000000,
"triggered_price_fmt": "۷٬۰۴۲٬۰۰۰٬۰۰۰ ریال",
"change_pct": 1.8,
"instrument_url": "https://ibahoosham.ir/arzprice/p/crypto/btcirt",
"sent_at": "2026-10-12T09:00:00Z"
}
• استفاده رایگان برای مصارف غیرتجاری با ذکر منبع «ارزپرایس» — برای تجاری با ما تماس بگیرید.
• محدودیت نرخ (جدید v4.5): GET حداکثر ۱۲۰ درخواست در دقیقه و درخواستهای نوشتن حداکثر ۳۰ در دقیقه از هر IP — در صورت عبور، پاسخ 429 با هدر Retry-After میگیرید. پاسخهای قیمت از سمت ما ~۶۰ ثانیه کش میشوند، سمت خودتان هم کش کنید.
• دادهها «چنانکه هست» ارائه میشوند؛ برای تصمیمهای مالی به منابع رسمی هم مراجعه کنید.
• نسخه فعلی API: v4.39.0 — تغییرات ناسازگار با نسخه جدید اعلام میشوند.