مستندات Back-End صرافی رمزارز

Back-End Crypto Exchange Docs

نسخه ۱.۰.۰ - ۰۵/۱۷/۲۰۲۱

فهرست مطالب

۱. مقدمه

تمامی وب‌ سرویس‌های توضیح داده شده در این مستندات به صورت RESTful هستند و طبق همین چهارچوب باید با آنها ارتباط برقرار کرد.

جهت رفع هرگونه مشکل و یا پرسش با پشتیبانی در تماس باشید.

۲. احراز هویت و ورود از طریق یوآیدی

یوآیدی یک سیستم احراز هویت آنلاین می باشد و اطلاعات دریافتی شما از این سرویس توسط شخص کاربر ارایه شده که صحت این اطلاعات و عواقب آن برعهده ی کاربر می باشد.

برای ورود از طریق سیستم یوآیدی کاربر ابتدا اطلاعات هویتی، اطلاعات بانکی و آدرس خود را تکمیل می نماید که این اطلاعات توسط یوآیدی صحت سنجی شده و بعد از آن کاربر می تواند وارد فرایند احرازهویت شود. در فرایند احرازهویت ابتدا ویدئوی چند ثانیه ای از کاربر گرفته می شود و در صورتی که سیستم یوآیدی از زنده بودن ویدئو اطمینان حاصل کرد، یک فریم عکس از ویدئو انتخاب می شود و با عکس ثبت احوال کاربر مقایسه می گردد. در صورت تطبیق یا عدم تطبیق عکس سیستم یوآیدی احراز هویت کاربر را تایید و یا رد می کند.

در پایان فرایند ثبت نام کاربر، توکنی در اختیار اپلیکیشن میزبان قرار می گیرد که با استفاده از آن توکن می توان اطلاعات کاربر را دریافت کرد.

توجه داشته باشید به دلیل محدودیت های اداره ثبت احوال گرفتن اطلاعات کاربر پس از حداقل ۱۰ دقیقه امکان پذیر می باشد.

در ادامه Sequence diagram روند احراز هویت را مشاهده میکنید:

Sequence

 

۳. ورود میزبان

جهت دسترسی به اطلاعات کاربر، ابتدا با استفاده از Id, secrectKey ( توسط یوآیدی در اختیار میزبان قرار داده میشود) وارد سیستم شوید و access token را دریافت نمایید.

۳.۱. نمونه ی درخواست

				
					POST - https://cloud.uid.ir/cryptocore/business/login


Content-Type: application/json;charset=UTF-8
{
  "id": "id",
  "secretKey": "secret Key"
}

				
			

3.2. توضیح پارامتر های درخواستی

FieldTypeDescription
idstringتوسط یوآیدی ارسال می گردد
secret Keystringتوسط یوآیدی ارسال می گردد

۳.۳. نمونه پاسخ دریافتی

				
					"status": status,
"error": "error",
"message": {
"oauthInformation": {
"access_token": "access Token",
"refresh_token": "refresh Token",
"token_type": "token Type bearer",
"scope": "[read, write]",
"expires_in": expires In }
}
				
			

4. سرویس getUserInfo

بعد از اتمام مراحل احراز هویت client token از طریق sdk به redirect url اعلامی توسط میزبان ارسال میشود. با استفاده از این توکن، میزبان میتواند اطلاعات کاربر را دریافت نماید.

۴.۱. نمونه ی درخواست

				
					POST - https://cloud.uid.ir/cryptocore/getUserInfo

Authorization: bearer access_token
Content-Type: application/json;charset=UTF-8
{
   "clientToken": "client Token"
}

				
			

4.2. توضیح پارامتر های درخواستی

FieldTypeDescription
client Tokenstringتوکن جهت گرفتن اطلاعات کاربر

۴.۳. نمونه ی پاسخ دریافتی

				
					"status":status,
"error": "error",
"message": {
    "nationalCode": "national Code",
    "mobileNumber": "mobile Number",
    "birthDate": "birth Date",
    "metaData": "meta Data",
    "bankInfo": {
        "id": id,
        "shabaNumber": "shaba Number",
        "bankName": "bank Name",
        "cardNumber": "card Number",
        "accountNumber": "account Number"
    },
    "addressInfo": [
        {
            "id": id,
            "state": "state",
            "city": "city",
            "address": "address",
            "postalCode": "postalCode"
        }
    ]
},
"path": "/getUserInfo"

				
			

4.4. توضیح پاسخ های دریافتی

FieldTypeDescription
meta Datastringعدم نمایش این فیلد در صورتی که توسط کسب و کار در ورودی اپلیکیشن وارد نشود

۵. سرویس clientToken

پس از پایان مراحل احراز هویت، برای کاربر توکن با نام clientToken ایجاد و در دیتابیس ذخیره میشود. در این سرویس میزبان پس از ورود میتواند با وارد کردن کد ملی کاربر clientToken مربوط به کاربر را دریافت نماید.

۵.۱. نمونه ی درخواست

				
					GET - https://cloud.uid.ir/cryptocore/clientToken/{nationalCode}

Authorization: bearer access_token
Content-Type: application/json;charset=UTF-8
{
   "nationalCode": "national Code"
}

				
			

5.2. توضیح پارامترهای درخواستی

FieldTypeDescription

national Code

stringشماره ملی کاربر جهت نمایش توکن

۵.۳. نمونه پاسخ دریافتی

				
					"timestamp": "2021-10-30T12:02:53.931+00:00",
"status": 200,
"error": "OK",
"message": "clientToken",
"path": "/clientToken/0032546580"

				
			

6. خطاهای دریافتی

Code Description
429 درخواست بیش از حد مجاز
۴۰۰ درخواست نامعتبر
۵۰۰ خطای داخلی سرور
۴۰۹ شما قبلا احراز هویت شده اید
۴۰۴ میزبان مورد نظر یافت نشد
۴۰۴ کاربر مورد نظر یافت نشد
۵۰۳ سرویس در دسترس نمی باشد
۴۱۷ ویدیو نامعتبر
۴۰۳ دسترسی غیر مجاز به سرویس
مشاوره رایگان