دریافت اطلاعات جامع کاربر و کنسول با API


یکی از endpointهایی که api.liara.ir ارائه می‌دهد، me/ است. این endpoint شامل اطلاعات زیر است:

  • اطلاعات خود کاربر (مانند نام، ایمیل، شماره موبایل و نوع حساب کاربری)
  • اطلاعات Object Storage کاربر
  • اطلاعات امنیتی حساب کاربری (مانند وضعیت رمز عبور و تایید ایمیل و موبایل)
  • اطلاعات مرتبط با سطح کاربری فعلی کاربر
  • امکانات فعال حساب کاربری (مانند شبکه خصوصی)
  • نسخه‌های قابل ارائه دیتابیس‌های لیارا
  • نسخه‌های پیش‌فرض دیتابیس‌های لیارا
  • پلن‌های PaaS لیارا
  • پلن‌های سرویس ایمیل لیارا
  • پلن‌های دیتابیس لیارا
  • پلن‌های Object Storage لیارا
  • بسته امکانات PaaS
  • بسته امکانات دیتابیس‌ها
  • اطلاعات بسته‌های سطح کاربری

برخی از اطلاعات حساب کاربری، مانند سطح کاربری فعلی، وضعیت احراز هویت دو مرحله‌ای، اعتبار رایگان، اتصال‌های Git و اطلاعات UTM، دیگر در پاسخ me/ ارائه نمی‌شوند و باید آن‌ها را از endpointهای جداگانه /me/* دریافت کنید.

ساختار پاسخ

پاسخ این endpoint یک آبجکت JSON است که از چند بخش اصلی تشکیل شده است. در فهرست زیر می‌توانید این بخش‌ها را ببینید:

  • userاطلاعات حساب کاربری
  • team: اطلاعات تیم، نقش و دسترسی‌های عضو تیم (فقط زمانی که درخواست در حالت تیمی ارسال شود)
  • databaseVersions: نسخه‌های قابل ارائه برای هر نوع دیتابیس
  • defaultDatabaseVersions: نسخه پیش‌فرض هر نوع دیتابیس
  • plans: پلن‌های محصولات لیارا و بسته‌های امکانات آن‌ها

نمونه‌ای از پاسخ این endpoint (بخش user) در ادامه آورده شده است (با مقادیر فرضی):

کپی
{
"user": {
  "_id": "64e7xxxxxxxxxxxxxxxxxxxx",
  "fullname": "نام و نام خانوادگی",
  "nationalCode": "0123456789",
  "invoiceIssuingEnabled": true,
  "email": "user@example.com",
  "phone": "09123456789",
  "joined_at": "2023-08-24T11:53:47.323Z",
  "hasPassword": true,
  "emailVerifiedAt": "2023-08-24T11:56:54.165Z",
  "phoneVerifiedAt": "2023-08-24T11:56:47.004Z",
  "isVerified": true,
  "storage": {
    "namespace": "64e7xxxxxxxxxxxxxxxxxxxx",
    "status": "DEACTIVE",
    "planID": "ir-40g",
    "accessKey": "ACCESS_KEY",
    "secretKey": "SECRET_KEY"
  },
  "isTeam": false,
  "accountType": "REAL_PERSON",
  "minCreditAmount": 20000,
  "isManualMinCredit": false,
  "legacyNetworkFeature": false,
  "privateNetworkFeature": true,
  "legacyObjectStorageFeature": false,
  "hasSucceedPayment": true,
  ...
},
"databaseVersions": { ... },
"defaultDatabaseVersions": { ... },
"featureFlags": [ ... ],
"plans": { ... }
}

اطلاعات پاسخ این endpoint شامل اطلاعات حساس مانند اطلاعات هویتی کاربر و کلیدهای دسترسی Object Storage است. لطفاً این اطلاعات را در اختیار دیگران قرار ندهید و آن‌ها را در جاهایی مانند لاگ، تیکت و مخازن کد عمومی ذخیره نکنید.

در ادامه، مهم‌ترین فیلدهای بخش user توضیح داده شده است:

  • fullname و nationalCode: نام و کد ملی ثبت‌شده برای حساب کاربری
  • email و phone: ایمیل و شماره موبایل حساب کاربری. زمان تایید هر کدام در emailVerifiedAt و phoneVerifiedAt مشخص است
  • isVerified: وضعیت احراز هویت حساب کاربری
  • accountType: نوع حساب کاربری، مانند REAL_PERSON برای حساب‌های حقیقی
  • isTeam: مشخص می‌کند که آیا این حساب یک تیم است یا خیر
  • invoiceIssuingEnabled: مشخص می‌کند که آیا صدور فاکتور برای حساب فعال است یا خیر
  • minCreditAmount: حداقل مبلغ اعتبار برای اعلان در حساب کاربری. اگر isManualMinCredit برابر true باشد، این مقدار به‌صورت دستی تعیین شده است
  • hasSucceedPayment: مشخص می‌کند که آیا حساب کاربری تاکنون پرداخت موفقی داشته است یا خیر
  • hasPassword: مشخص می‌کند که آیا برای حساب کاربری رمز عبور تعیین شده است یا خیر
  • storage: اطلاعات Object Storage شامل namespace، وضعیت، شناسه پلن و کلیدهای دسترسی
  • privateNetworkFeature: مشخص می‌کند که آیا امکان استفاده از شبکه خصوصی برای حساب فعال است یا خیر

endpointهای جداگانه اطلاعات حساب کاربری

علاوه بر me/، endpointهای زیر برای دریافت بخش‌های مشخصی از اطلاعات حساب کاربری ارائه شده‌اند. همه این endpointها با متد GET فراخوانی می‌شوند و در حالت تیمی، اطلاعات تیم را برمی‌گردانند:

  • me/subscription/: اطلاعات سطح کاربری فعلی
  • me/two-fa/: وضعیت احراز هویت دو مرحله‌ای
  • me/free-credit/: میزان اعتبار رایگان باقی‌مانده
  • me/git-integrations/: اتصال‌های حساب کاربری به سرویس‌ها و repositoryهای Github
  • me/utm/: اطلاعات کمپین (UTM) که حساب کاربری از طریق آن عضو شده است

دریافت اطلاعات سطح کاربری فعلی

کپی
curl --request GET \
--url https://api.liara.ir/v1/me/subscription \
--header "Authorization: Bearer TOKEN"

نمونه پاسخ (با مقادیر فرضی):

کپی
{
"currentSubscriptionPlan": {
  "_id": "6abbxxxxxxxxxxxxxxxxxxxx",
  "type": "subscription",
  "userID": "64e7xxxxxxxxxxxxxxxxxxxx",
  "subscriptionPlanID": "free",
  "subscriptionPlanExpiration": "2026-10-29T08:40:26.064Z",
  "maxTechnicalTicketsPerMonth": "infinite",
  "subscriptionDurationType": "monthly",
  "createdAt": "2026-09-29T08:40:26.066Z",
  "updatedAt": "2026-09-29T08:40:26.066Z",
  "technicalTicketsCount": 0
}
}

فیلد subscriptionPlanID شناسه سطح کاربری فعلی، subscriptionPlanExpiration تاریخ انقضای آن و technicalTicketsCount تعداد تیکت‌های فنی ثبت‌شده در دوره فعلی است.

دریافت وضعیت احراز هویت دو مرحله‌ای

کپی
curl --request GET \
--url https://api.liara.ir/v1/me/two-fa \
--header "Authorization: Bearer TOKEN"

نمونه پاسخ:

کپی
{
"twoFA": true,
"lastTwoFAVerifiedAt": "2026-10-01T09:12:30.000Z"
}

فیلد twoFA فعال بودن احراز هویت دو مرحله‌ای و lastTwoFAVerifiedAt زمان آخرین تایید موفق آن را مشخص می‌کند. در حالت تیمی، این فیلدها در پاسخ وجود ندارند.

دریافت اعتبار رایگان باقی‌مانده

کپی
curl --request GET \
--url https://api.liara.ir/v1/me/free-credit \
--header "Authorization: Bearer TOKEN"

نمونه پاسخ:

کپی
{
"remainingFreeCredit": 0
}

در حالت تیمی، فیلد remainingFreeCredit در پاسخ وجود ندارد. هم‌چنین در نظر داشته باشید که در حال حاضر اعتبار رایگان ارائه نمی‌شود.

دریافت اتصال‌های Git حساب کاربری

کپی
curl --request GET \
--url https://api.liara.ir/v1/me/git-integrations \
--header "Authorization: Bearer TOKEN"

نمونه پاسخ (با مقادیر فرضی):

کپی
{
"gitProviderIntegrations": [...],
"gitRepositoryIntegrations": [...]
}

آرایه gitProviderIntegrations حساب‌های Git متصل‌شده و آرایه gitRepositoryIntegrations اتصال‌های repository مرتبط با هر کدام را نشان می‌دهد.

دریافت اطلاعات UTM حساب کاربری

کپی
curl --request GET \
--url https://api.liara.ir/v1/me/utm \
--header "Authorization: Bearer TOKEN"

نمونه پاسخ (با مقادیر فرضی):

کپی
{
"utm": {
  "_id": "66b1xxxxxxxxxxxxxxxxxxxx",
  "source": "example-source",
  "freeCreditAmount": 500000,
  "joinedAt": "2026-05-01T08:00:00.000Z",
  "expiresAt": "2026-06-01T08:00:00.000Z",
}
}

اگر حساب کاربری از طریق هیچ کمپینی عضو نشده باشد، مقدار utm برابر null خواهد بود.

در تمامی دستورات فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

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

برای دریافت اطلاعات جامع کاربری خود و کنسول لیارا، می‌توانید مانند دستور cURL زیر عمل کنید:

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN"

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت فقط اطلاعات کاربری

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.user'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت اطلاعات Object Storageهای کاربر

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.user.storage'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت اطلاعات امنیتی حساب کاربر

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.user | {
  hasPassword,
  emailVerifiedAt,
  phoneVerifiedAt
}'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

برای دریافت وضعیت احراز هویت دو مرحله‌ای، از endpoint me/two-fa/ استفاده کنید.

نمونه ارسال درخواست برای دریافت اطلاعات مرتبط با سطح کاربری فعلی کاربر

کپی
curl --request GET \
--url https://api.liara.ir/v1/me/subscription \
--header "Authorization: Bearer TOKEN" \
| jq '.currentSubscriptionPlan'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت نسخه‌های دیتابیس‌های قابل ارائه

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.databaseVersions'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت نسخه پیش‌فرض دیتابیس‌ها

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.defaultDatabaseVersions'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت اطلاعات پلن‌های تمامی محصولات

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.plans'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت اطلاعات پلن‌های PaaS

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.plans.projects'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت پلن‌های سرویس ایمیل

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.plans.mail'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت اطلاعات پلن‌های دیتابیس

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.plans.databases'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت اطلاعات پلن‌های Object Storage

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.plans.objectStorage'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت اطلاعات بسته‌های امکانات PaaS

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.plans.projectBundlePlans'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت اطلاعات بسته‌های امکانات DBaaS

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.plans.databaseBundlePlans'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت اطلاعات بسته‌های سطح کاربری

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.plans.subscription'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت اطلاعات هویتی و امکانات فعال حساب کاربر

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.user | {fullname, email, phone, accountType, isVerified, isTeam, privateNetworkFeature}'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت اطلاعات اعتبار حساب کاربر

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.user | {minCreditAmount, isManualMinCredit, hasSucceedPayment}'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت نسخه‌های یک دیتابیس مشخص

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.databaseVersions.postgres'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

در مثال فوق، نسخه‌های قابل ارائه برای PostgreSQL دریافت می‌شود. به‌جای postgres می‌توانید یکی از مقادیر mysql، mariadb، mssql، mongodb، redis، elasticsearch، rabbitmq یا clickhouse را قرار دهید.

نمونه ارسال درخواست برای دریافت نسخه پیش‌فرض یک دیتابیس مشخص

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.defaultDatabaseVersions.redis'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

نمونه ارسال درخواست برای دریافت پلن‌های قابل استفاده PaaS

کپی
curl --request GET \
--url https://api.liara.ir/v1/me \
--header "Authorization: Bearer TOKEN" \
| jq '.plans.projects | with_entries(select(.value.available == true))'

در عبارت فوق، بایستی به جای TOKEN، کلید API حساب کاربری خود را وارد کنید.

با دستور فوق، فقط پلن‌هایی که مقدار available آن‌ها برابر true است، یعنی در حال حاضر قابل سفارش هستند، نمایش داده می‌شوند. این روش برای پلن‌های دیتابیس (.plans.databases)، Object Storage (.plans.objectStorage) و سرویس ایمیل (.plans.mail) هم قابل استفاده است.