نمایک، نیاز اول کسب و کارها
پرش به محتوای اصلی

مرجع API عمومی

API سمت سرور با کلید محرمانه: اطلاعات پروژه، گزارش مصرف، وضعیت حساب و موجودی و مدیریت کامل وب‌هوک‌ها.

در این صفحه

نشانی و احراز هویت

نشانی پایه
https://api.namayek.com/v1
احراز هویت
فقط کلید محرمانه در سرآیند X-Namayek-Key یا Authorization: Bearer
پروژه
همیشه پروژه همان کلید؛ از ورودی خوانده نمی‌شود
CORS
ندارد؛ این API فقط برای سرور است
هزینه
رایگان (فقط محدودیت نرخ)
مسیرهای API عمومی
روشمسیردسترسیکار
GET/v1/projectهر دسترسیشناسه، نام، slug، سقف‌ها و وضعیت پروژه کلید.
GET/v1/usageهر دسترسیسری مصرف ساعتی یا روزانه پروژه.
GET/v1/billing/summaryهر دسترسیموجودی، بدهی، وضعیت توقف، پایان مهلت و هزینه ماه حساب صاحب کلید.
GET/v1/webhookswebhooks:manageفهرست وب‌هوک‌ها و سقف تعداد.
POST/v1/webhookswebhooks:manageساخت وب‌هوک؛ راز فقط همین یک بار برمی‌گردد.
GET/v1/webhooks/{endpointId}webhooks:manageجزئیات و نمونه کد تایید.
PATCH/v1/webhooks/{endpointId}webhooks:manageتغییر نشانی، توضیح، رویدادها یا وضعیت.
DELETE/v1/webhooks/{endpointId}webhooks:manageحذف وب‌هوک.
POST/v1/webhooks/{endpointId}/rotate-secretwebhooks:manageراز تازه با دوره هم‌پوشانی ۰ تا ۷۲ ساعت.
POST/v1/webhooks/{endpointId}/testwebhooks:manageفرستادن رویداد webhook.test.
GET/v1/webhooks/{endpointId}/deliverieswebhooks:manageفهرست تحویل‌ها با صفحه‌بندی cursor.
POST/v1/webhooks/{endpointId}/deliveries/{deliveryId}/resendwebhooks:manageارسال دوباره یک تحویل.

محدودیت نرخ

هر کلید در هر گروه مسیر سقف درخواست در دقیقه دارد (پیش‌فرض ۶۰)؛ مقدار را مدیر سامانه تنظیم می‌کند و در سرآیند X-RateLimit-Limit برمی‌گردد. پس از آن پاسخ ۴۲۹ با Retry-After می‌گیرید. سقف مسیرهای پشتیبان‌گیری جداست؛ API پشتیبان‌گیری. کارهای تغییردهنده در گزارش امنیتی حساب ثبت می‌شوند.

اطلاعات پروژه

اطلاعات پروژه‌ای که کلید به آن تعلق دارد، شامل سقف‌های هزینه و وضعیت:

curl -sS "https://api.namayek.com/v1/project" \  -H "X-Namayek-Key: $NAMAYEK_SECRET_KEY"

گزارش مصرف

پارامترهای GET /v1/usage
پارامترنوعلزومپیش‌فرضتوضیح
fromYYYY-MM-DDلازم—روز شروع به تقویم میلادی و ساعت تهران.
toYYYY-MM-DDلازم—روز پایان (شامل)؛ ساعتی تا ۷ روز و روزانه تا ۴۰۰ روز.
granularityhour | dayلازم—دانه‌بندی سری.
servicescsvاختیاری—تا ۱۶ سرویس، مثلا maps.tiles,maps.search.
keyIduuidاختیاری—فقط مصرف یک کلید از همین پروژه.
curl -sS "https://api.namayek.com/v1/usage?from=2026-10-01&to=2026-10-23&granularity=day&services=maps.tiles,maps.search" \  -H "X-Namayek-Key: $NAMAYEK_SECRET_KEY"
فیلدهای پاسخ مصرف
فیلدنوع / مقدارتوضیح
points[]{ t, service, units }t زمان شروع بازه به ISO؛ units رشته عددی (ممکن است از 2^53 بزرگ‌تر شود).
totals[]{ service, units }جمع هر سرویس در بازه.
freshness.foldedUntilISO 8601تا این دقیقه کامل شمرده شده است.

وضعیت حساب و موجودی

وضعیت حساب صاحب پروژه کلید: موجودی، بدهی، توقف و هزینه ماه. سرور شما پیش از کار سنگین یا در زمان‌بندی خودش می‌تواند ببیند حساب در مهلت تسویه است یا متوقف شده؛ حساب متوقف هم همین پاسخ را می‌گیرد. داده تا ۱۵ ثانیه کش می‌شود و با هر کسر هزینه، شارژ یا تسویه تازه می‌شود. برای خبر لحظه‌ای رویدادهای wallet.charged، billing.outstanding_created، billing.suspended و billing.statement_ready را در وب‌هوک‌ها بگیرید.

curl -sS "https://api.namayek.com/v1/billing/summary" \  -H "X-Namayek-Key: $NAMAYEK_SECRET_KEY"
فیلدهای وضعیت حساب
فیلدنوع / مقدارتوضیح
currency"TOMAN"واحد همه مبلغ‌ها؛ مبلغ‌ها رشته عددی‌اند.
stateactive | grace | suspendedفعال، در مهلت تسویه بدهی، یا متوقف (درخواست‌های مصرفی کلیدها رد می‌شود ولی همین API پاسخ می‌دهد).
suspensionReasonbalance | admin | nullدلیل توقف: بدهی تسویه‌نشده یا تصمیم پشتیبانی.
balanceTomanstringموجودی کل کیف پول.
availableTomanstringموجودی قابل استفاده برای هزینه مصرف.
outstandingTomanstringبدهی تسویه‌نشده؛ شارژ کیف پول اول آن را تسویه می‌کند.
graceEndsAtISO 8601 | nullاگر بدهی تا این زمان تسویه نشود سرویس‌ها متوقف می‌شوند.
outstandingSince / suspendedAtISO 8601 | nullزمان ثبت بدهی و زمان توقف.
lowBalance{ thresholdToman, isLow, daysLeft }آستانه هشدار، کم بودن موجودی و روزهای باقی با مصرف هفت روز اخیر (null یعنی مصرفی نبوده).
month{ period, billedToman, unbilledEstimateToman, projectedToman }ماه شمسی جاری (مثلا 140508): صورت‌حساب‌شده، برآورد هنوز صورت‌حساب‌نشده و پیش‌بینی کل ماه.

مدیریت وب‌هوک‌ها

با دسترسی webhooks:manage همه کارهای پنل را با API انجام دهید. راز ساخته‌شده فقط در پاسخ ساخت یا چرخش برمی‌گردد و API هیچ راهی برای دیدن دوباره آن ندارد. قالب رویدادها و تایید امضا در وب‌هوک‌ها.

بدنه POST /v1/webhooks
پارامترنوعلزومپیش‌فرضتوضیح
urlstringلازم—نشانی https عمومی تا ۲۰۴۸ نویسه؛ نشانی شبکه داخلی رد می‌شود.
descriptionstringاختیاری—توضیح تا ۲۰۰ نویسه.
eventsstring[]لازم—۱ تا ۶۴ رویداد بی تکرار از جدول رویدادها.
ساخت وب‌هوک
curl -sS -X POST "https://api.namayek.com/v1/webhooks" \  -H "X-Namayek-Key: $NAMAYEK_SECRET_KEY" \  -H "Content-Type: application/json" \  -d '{"url":"https://example.com/hooks/namayek","events":["billing.low_balance","api_key.revoked"]}'

قالب پاسخ

پاسخ موفق در پاکت { statusCode, data, timestamp } است و خطا این شکل را دارد:

قالب خطا
{  "success": false,  "statusCode": 403,  "code": "ORIGIN_NOT_ALLOWED",  "message": "این دامنه برای کلید مجاز نیست"}
  • برنامه شما باید روی code تصمیم بگیرد، نه روی متن پیام؛ پیام فارسی برای نمایش است.
  • فهرست کدها در خطاها و محدودیت‌ها.

آخرین به‌روزرسانی: