وب سرویس بازار ارز دیجیتال (اطلاعات کاربری)
در این مقاله قصد داریم در مورد API بازار ارز دیجیتال (اطلاعات کاربری) و همچنین احراز هویت آن صحبت کنیم.
بستر نوبیتکس با تمرکز بر API توسعه داده شده است و کاربران محترم میتوانند به راحتی تمامی اقدامات خود در نوبیتکس را به با برنامهنویسی و به صورت خودکار مدیریت کنند. در ادامه اجزای اصلی API نوبیتکس توضیح داده شدهاند.
برای دسترسی سریعتر به API مد نظر خود میتوانید نام یا url آن را جستجو نمایید یا از منوی سمت راست صفحه استفاده کنید. برای بسیاری از API نیز در بخش خاکستری سمت چپ صفحه، نمونهی کد آورده شده است. از بخش بالا سمت چپ صفحه نیز میتوانید زبان برنامهنویسی مطلوب خود را برای مشاهدهی نمونه کدها به آن زبان، انتخاب نمایید.
در صورت ناقص یا مبهم بودن توضیحات APIها یا هرگونه پیشنهاد دیگر در این خصوص، میتوانید در مخزن گیتهاب مستندات نوبیتکس API مورد (issue) جدیدی را ایجاد نمایید یا مستقیما روی این لینک کلیک کنید و مشکل مد نظرتان را با ما در میان بگذارید.
مستندات API در حال توسعه می باشد و ممکن است فرمت درخواستها و پاسخها دچار تغییر شوند .لطفا در موارد حساس ملاحظات لازم را در نظر بگیرید.
احراز هویت
برای استفاده از APIهای عمومی نیازی به ارائهی رمز یا توکن خاصی نمیباشد ولی اگر تمایل به استفاده از APIهای مرتبط با حساب کاربری خود را دارید، باید ابتدا درخواست توکن را ارسال نموده و با استفاده از آن توکن درخواستهای بعدی را احراز هویت نمایید.
لاگین
دریافت توکن به صورت خودکار و با ارسال درخواست به /auth/login/ صورت میگیرد. این تنها APIی است که نیاز دارید به آن نام کاربری و رمز عبور خود را ارسال کنید. تمامی دیگر APIها از توکن به جای رمز عبور برای احراز هویت استفاده میکنند. توکنهای صادر شده بعد از چهار ساعت منقضی میشوند و باید مجددا با ارسال درخواست لاگین، توکن جدیدی دریافت کنید. در صورتی که نیاز به ایجاد توکنهای بلند مدت دارید، از پارامتر remember=yes استفاده کنید تا توکن ایجاد شده به مدت سی روز معتبر بماند.
پارامتر | نوع | پیشفرض | توضیحات | نمونه |
username | string | الزامی | ایمیل کاربر | name@example.com |
password | string | الزامی | رمز عبور کاربر | secret-password-1234 |
remember | string | no | آیا توکن بلند مدت صادر شود؟ | yes یا no |
برای دریافت توکن، از این کد استفاده کنید:
curl ‘https://api.nobitex.ir/auth/login/’ \
-X POST \
–data $'{“username”:”name@example.com”,”password”:”secret-password-1234″}’
در صورت فراخوانی درست، پاسخ به این صورت خواهد بود:
{
“key”: “e9282e56c83f93eb077043e5ad8b6cf5b3ff7568”
}
توکنهای دریافت شده از این روش، بعد از اتمام زمان اعتبار (چهار ساعت یا سی روز) منقضی میشوند. در صورت نیاز به توکنهای با تاریخ انقضای طولانیتر و آگاهی از ملاحظات امنیتی لازم، با پشتیبانی نوبیتکس تماس بگیرید.
اطلاعات کاربر
برای دریافت پروفایل کاربر از این نوع درخواست استفاده نمایید:
آدرس :
GET /users/profile
curl ‘https://api.nobitex.ir/users/profile’ \
-H “Authorization: Token e9282e56c83f93eb077043e5ad8b6cf5b3ff7568”
در صورت فراخوانی درست، پاسخ به این صورت خواهد بود:
{
“status”: “ok”,
“profile”: {
“firstName”: “مهدی”,
“lastName”: “رضایی”,
“nationalCode”: “011122333”,
“email”: “name@example.com”,
“username”: “name@example.com”,
“phone”: “02142719000-9012”,
“mobile”: “09151111111”,
“city”: “مشهد”,
…
}
}
سابقه ورود
برای دریافت سابقه ورود از این نوع درخواست استفاده نمایید:
آدرس :
GET /users/login-attempts
curl ‘https://api.nobitex.ir/users/login-attempts’ \
-H “Authorization: Token e9282e56c83f93eb077043e5ad8b6cf5b3ff7568”
در صورت فراخوانی درست، پاسخ به این صورت خواهد بود:
{
“status”: “ok”,
“attempts”: [
{
“ip”: “46.209.130.106”,
“username”: “name@example.com”,
“status”: “Successful”,
“createdAt”: “2018-11-28T14:16:08.264308+00:00”
},
…
]
}
افزودن کارت بانکی
برای افزودن کارت بانکی جدید از این نوع درخواست استفاده نمایید:
آدرس :
POST /users/cards-add
پارامترها :
پارامتر | نوع | پیشفرض | توضیحات | نمونه |
number | string | الزامی | شماره کارت | 5041721011111111 |
bank | string | الزامی | نام بانک | رسالت |
curl ‘https://api.nobitex.ir/users/cards-add’ \
-X POST \
-H “Authorization: Token e9282e56c83f93eb077043e5ad8b6cf5b3ff7568” \
-H “content-type: application/json” \
–data ‘{“number”:”5041721011111111″,”bank”:”رسالت”}’
در صورت فراخوانی درست، پاسخ به این صورت خواهد بود:
{
“status”: “ok”
}
پارامتر | نوع | پیشفرض | توضیحات | نمونه |
number | string | الزامی | شماره کارت | 5041721011111111 |
shaba | string | الزامی | شماره شبا | IR111111111111111111111111 |
bank | string | الزامی | نام بانک | رسالت |
curl ‘https://api.nobitex.ir/users/accounts-add’ \
-X POST \
-H “Authorization: Token e9282e56c83f93eb077043e5ad8b6cf5b3ff7568” \
-H “content-type: application/json” \
–data ‘{“number”:”5041721011111111″,”shaba”:”IR111111111111111111111111″,”bank”:”رسالت”}’
در صورت فراخوانی درست، پاسخ به این صورت خواهد بود:
{
“status”: “ok”
}
محدودیت فراخوانی : 5 درخواست در ساعت
در مقاله بعد در مورد وب سرویس اطلاعات بازار ارز دیجیتال صحبت خواهیم کرد.