Account#

사용자와 SHELL App 지갑에 관한 API를 제공합니다.


사용자 지갑 조회 (Type.1)#

현재 컨텐츠 앱에 로그인한 사용자의 SHELL App 지갑 주소SHELL 보유액, 지갑상태 정보를 리턴합니다. 만약 지갑 주소가 할당되지 않은 경우 지갑 생성 후 해당 정보를 리턴합니다.

신규 사용자의 경우, 반환된 SHELL App 지갑 주소를 앱 사용자 정보와 매칭하여 개발사 멤버쉽 시스템에 저장하고, 이후 Transaction 관련 BORA API 호출 인자로 사용하게 됩니다.

Request

  • HOST:

    testnet-api.boraecosystem.com

  • URI:

    /v1/app/token/account

  • METHOD:

    GET

Request Parameters

Parameter Required Values Description Parameter type Data Type
Authorization * Bearer {User's AccessToken} User Access Token header string

Response

{
   "status": integer,
   "data": {
    "token_addr": string, length(42),      // 사용자의 SHELL App 지갑 주소
    "amt_token": integer,                  // 사용자의 SHELL 보유량
    "status": integer                      // 지갑상태 코드 (1:정상, 2:이용정지, 3:이용자요청, 9:회원탈퇴)
}

Error

{
  "status": "406",
  "error": {
    "code": "398",
    "message": "계정의 지갑 주소를 찾을 수 없습니다 . 다시 확인 후 시도해주세요 ."
  }
}

Sample:

Sample Request:

curl -X GET "https://testnet-api.boraecosystem.com/v1/app/token/account" -H "Authorization: Bearer {User's AccessToken}" 

Sample Response:

{
    "status" : 200, 
    "data": {
        "token_addr": "0x1792cdd2529716bc4b403c720884afe92673ff15", // 사용자의 SHELL App 지갑 주소
        "amt_token": 1878790,                                       // 사용자의 SHELL 보유량
        "status": 1                                                 // 지갑상태 코드 
    }
}

사용자 지갑 조회 (Type.2)#

요청한 앱 사용자의 SHELL 보유액, 지갑상태 정보를 리턴합니다.

개발사는 조회된 지갑정보를 바탕으로 컨텐츠 사용에 대한 진행여부를 판단하여야 합니다. 즉, 보유액이 부족하거나 지갑이 blocking 된 사용자에 대한 부가적인 처리를 검토해야 합니다.

Request

  • HOST:

    testnet-api.boraecosystem.com

  • URI:

    /v1/app/token/account?addr={addr}

  • METHOD:

    GET

Request Parameters

Parameter Required Values Description Parameter type Data Type
Authorization * Bearer {Client's AccessToken} Client Access Token header string
addr * 지갑 주소 query string, length(42)

Response

{
   "status": integer,
   "data": {
    "token_addr": string, length(42),      // 사용자의 SHELL App 지갑 주소
    "amt_token": integer,                  // 사용자의 SHELL 보유량
    "status": integer                      // 지갑상태 코드 (1:정상, 2:이용정지, 3:이용자요청, 9:회원탈퇴)
  }
}

Error

{
  "status": "406",
  "error": {
    "code": "398",
    "message": "계정의 지갑 주소를 찾을 수 없습니다 . 다시 확인 후 시도해주세요 ."
  }
}

Sample:

Sample Request:

curl -X GET "https://testnet-api.boraecosystem.com/v1/app/token/account?addr=0x1792cdd2529716bc4b403c720884afe92673ff15" -H "Authorization: Bearer {Client's AccessToken}" 

Sample Response:

{
    "status" : 200, 
    "data": {
        "token_addr": "0x1792cdd2529716bc4b403c720884afe92673ff15", // 사용자의 SHELL App 지갑 주소
        "amt_token": 1878790,                                       // 사용자의 SHELL 보유량
        "status": 1                                                 // 지갑상태 코드
    }
}

Error Code#

Status Code Description
500 999 확인되지 않은 오류. 잠시 후 다시 시도해주세요.
500 997 잘못된 파라미터 값이 입력되었습니다.
500 499 잔액 조회 오류. 잠시 후 다시 시도해주세요.
406 401 Unauthorized
406 399 잘못된 파라미터 값이 입력되었습니다.
406 398 계정의 지갑 주소를 찾을 수 없습니다 . 다시 확인 후 시도해주세요 .
406 397 Deposit 혹은 Withdrawal의 대상 APP No. 설정 오류. method(:method)
406 396 거래 내역이 존재하지 않습니다.
406 199 계정의 지갑 주소가 탈퇴 혹은 제재 중인 상태입니다.
406 198 잔고가 부족하여 보낼 수 없습니다.\n현재 보유 잔고는 :amount 입니다.
406 197 회원 지갑 주소 상태 값 변경에 실패했습니다. 다시 확인 후 시도해주세요.
406 196 수수료를 포함한 잔고가 부족하여 보낼 수 없습니다.\nuser amount ( :amount ) send amount ( :sendAmount )
406 299 0 이하 값의 토큰은 전송할 수 없습니다.\n전송 요청하신 토큰 수량은 :sendAmount 입니다.
406 298 정수가 아닌 소수점 수량의 토큰 전송은 불가능합니다. 전송 요청하신 토큰 수량은 ( :sendAmount )
406 297 최소 전송 수량인 :transferMin 보다 작은 수량은 전송할 수 없습니다.\n전송 요청 수량은 :sendAmount 입니다
406 296 1회 최대 전송 수량인 :transferMax 보다 큰 수량은 전송할 수 없습니다.\n전송 요청 수량은 :sendAmount 입니다
406 295 최근 24시간 기준 :onedayLimit 수량을 초과하여 전송할 수 없습니다.\n현재까지 24시간 기준 누적 전송 수량은 :onedaySendAmount 이며 전송 요청 수량은 :sendAmount 입니다.
406 294 전송받는 수량이 소수점이 되어 전송할 수 없습니다.\n수수료 값을 확인해주세요. 전송받는 수량 ( :recvAmount )