احراز هویت

اولین قدم برای اتصال به api‌های پذیرش۲۴، پیاده‌سازی دریافت access_token در ابزارک شماست. بدین منظور ابتدا ابزارک خود را بسازید و پس از آن با انجام مراحل پایین دسترسی‌های لازم را از او بگیرید و سپس می‌توانید به عنوان وکیل کاربر به منابع تحت مالکیت او دسترسی داشته باشید.

پیش‌نیازها

دریافت دسترسی

گرفتن session_token در فرانت‌اند

در فرانت‌اند، با SDK توکن سشن را بگیرید:

window.hamdast.initialize({ app_key: "YOUR_APP_KEY" });
 
const sessionToken = await window.hamdast.getSessionToken({
  scope: ["provider.profile.read"],
});

خروجی این مرحله session_token است.

تبدیل session_token به access_token در بک‌اند

در این مرحله، بک‌اند شما باید session_token را به access_token تبدیل کند.

الگوی endpoint به شکل زیر است:

POST https://hamdast.paziresh24.com/api/v1/apps/{app_key}/oauth/access_token
  • app_key: کلید اپ شما در مسیر URL
  • x-api-key: کلید توسعه‌دهنده (فقط در بک‌اند)
  • session_token: توکن سشنی که از SDK گرفته‌اید

نمونه درخواست:

curl --request POST "https://hamdast.paziresh24.com/api/v1/apps/YOUR_APP_KEY/oauth/access_token" \
  --header "Content-Type: application/json" \
  --header "x-api-key: YOUR_DEVELOPER_API_KEY" \
  --data '{
    "session_token": "SESSION_TOKEN_FROM_SDK"
  }'

در صورت موفقیت، پاسخ نمونه:

{
  "access_token": "eyJ...",
  "token_type": "Bearer",
}

استفاده از access_token در درخواست‌های بعدی

بعد از دریافت توکن دسترسی، آن را در هدر درخواست‌های بعدی قرار دهید:

Authorization: Bearer {access_token}

خطاهای رایج

خطاتوضیحراهکار
USER_CLOSED_POPUPکاربر پنجره را بسته استgetSessionToken() را دوباره اجرا کنید
INVALID_SESSION_TOKENسشن‌توکن نامعتبر یا منقضی شدهیک session_token جدید بگیرید و دوباره تبدیل کنید
DEVELOPER_NOT_AUTHORIZEDکلید توسعه‌دهنده برای اپ مجاز نیستx-api-key و دسترسی اپ را بررسی کنید

نکات امنیتی

  • x-api-key را فقط در بک‌اند نگهداری کنید.
  • تبدیل توکن را فقط در بک‌اند انجام دهید.
  • توکن‌ها را در لاگ عمومی چاپ نکنید.