Developers

api docs

pellar federation · 194 endpoints

The Pellar Federation API: one REST API across identity, accounts, wallets, trading, tokenization, certification and more. Full request and response examples live in the interactive reference.

Full API reference Request access
194
endpoints
21
API groups
Bearer
token auth · TOTP 2FA
REST
form or multipart in · JSON out

getting started

3 steps

Requests go to {{host}}, set by the Pellar Testnet environment in the full reference. Log in, verify the 2FA code, then send the returned token as a Bearer header.

01 — Authenticate

log in.

Send email and password. The response returns your user_key and whether 2FA is on.

# 1 · log in
curl -X POST "{{host}}/users/login" \
  -d "email=you@company.com" \
  -d "password=$PASSWORD"
# → 200
{ "result": "success", "user_key": "<user_key>",
  "user": { "two_FA_enabled": true, "two_FA_type": "TOTP" } }
02 — Verify

confirm 2fa.

Post the code from SMS or your authenticator. The response includes your profile and a token.

# 2 · verify the 2FA code
curl -X POST "{{host}}/users/<user_key>/pincode/verify" \
  -d "type=login" \
  -d "code=123456"
# → { "result": "success", "user": { … }, "token": "<token>" }
03 — Call

use the token.

Send it on every request as Authorization: Bearer. Admin endpoints also need an admin role.

# 3 · call the API with the token
curl "{{host}}/market/price?tradingpairs=ethusd,btcusd" \
  -H "Authorization: Bearer $TOKEN"
# → [ { "tradingpair": "BTCUSD", "price": …, "volume24h": …, "high24h": …, "low24h": … }, … ]

Most endpoints accept form fields (application/x-www-form-urlencoded); file uploads use multipart/form-data. Responses are JSON.

endpoint reference

21 groups
01 — 41 endpointsIdentityRegistration, login with 2FA, security settings, KYC documents, profiles, bank details and admin user management.
Authentication
  • POST/users/pincode/getVerify Mobile Number

    Mobile numbers must be verified prior to registration, this verification is valid for 15 minutes. Mobile Verification is also needed for phone updates

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    mobilebodye.g. +61 400 000 000
    typebodyregister / phone_update / mobile_logine.g. register
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "result": "success"
    }
  • POST/usersRegister User

    Register a new user. Code refers to the verification code sent by the system, when the mobile code is verified.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    firstnamebodye.g. Jane
    lastnamebodye.g. Citizen
    emailbodye.g. user@example.com
    passwordbodye.g. ••••••••
    phonebodye.g. +61 400 000 000
    countrycodebodye.g. ie
    codebodyverification from the mobile codee.g. 123456
    pinbodye.g. ••••••••
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "code": "123456",
        "twoFAEnabled": true,
        "bankreference": "<reference>",
        "role": 0,
        "key": "3fd3a9c9…",
        "token": "<token>",
        "avatar": "avatar.jpg"
      }
    }
  • POST/users/loginLogin User

    Authenticate an user, if MFA is enabled, a mobile code is required prior to a successful login.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    emailbodye.g. user@example.com
    passwordbodye.g. ••••••••
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "user_key": "c990da76…",
        "two_FA_enabled": true,
        "two_FA_type": "TOTP"
      },
      "result": "success",
      "user_key": "c990da76…",
      "device": "OK"
    }
  • POST/users/:key/pincode/verifyLogin User - Verify 2FA

    After logging in, a code will be sent to the registered mobile, this request completes the registration process.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    typebodylogin / mobile_logine.g. login
    codebodye.g. 123456
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "result": "success",
      "user": {
        "key": "c990da76…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 0,
        "avatar": "avatar.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "created": "2018-07-12T11:54:00.942Z",
        "modified": "2018-07-14T04:50:13.472Z",
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "TOTP",
        "phone_verified": true,
        "awaiting_verify_email": "user@example.com",
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true,
        "login_count": 0,
        "locked_time": 1531543813,
        "token": "<token>"
      }
    }
  • POST/users/:user_id/password/updateUpdate Password
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    user_idpath
    passwordbodye.g. ••••••••
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "result": "success"
    }
  • POST/users/forgotpasswordForgot Password

    Send a password reset email to the nominated email address

    No authform · urlencoded
    Request
    NameInDetails
    emailbodye.g. user@example.com
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "result": "success"
    }
  • POST/users/resetpasswordReset Password

    Use the code in the email to reset your account password

    No authform · urlencoded
    Request
    NameInDetails
    emailbodyyour account passworde.g. user@example.com
    codebodycode from the reset emaile.g. 123456
    passwordbodyyour new passworde.g. ••••••••
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "result": "success"
    }
2FA & Security
  • GET/users/security/totp/:keyGet TOTP Key for User

    This method returns a key for users to set up Time-based One Time Passcodes. It returns the key itself as well as the OTPAUTH URL for QRCODE rendering. This is supported by Google OTP, Authy and other popular OTP apps.

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "totp_temp": {
        "secret": "<redacted>",
        "otpURL": "otpauth://totp/SecretKey?secret=PFUEEP3VOFAHMOT2EM6EO6RIIJXCM3JPMYYCSZDLNBYF4URRK47Q"
      }
    }
  • POST/users/security/totp/:keySet TOTP for User

    This method completes the Time-based One Time Passcode set up. It requires two tokens sequentially from the device once the device has accepted the new key. The two tokens must be within the 3 token window, the system does not accept tokens older than 3 refreshes. Tokens are 6 digits in length (same as our other OTP verification methods). Once verified, TOTP settings are stored with the user, and sets TOTP as the def…

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    token1bodye.g. 459763
    token2bodye.g. 479614
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "result": "success"
    }
  • POST/users/:key/securityUpdate User Security Settings

    This method allows users to set 2FA types (SMS / Email / TOTP), as well as preference to 2FA for Login and Trade

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    typebodyEmail, SMS or TOTPe.g. TOTP
    login_enabledbodye.g. true
    trade_enabledbodye.g. true
    withdraw_enabledbodye.g. true
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "TOTP"
      }
    }
  • GET/verifyemailVerify Email

    Verify if the email is valid. If it is verified, request is redirected to production URL

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    emailquerye.g. user@example.com
    codequerye.g. 123456
    Response

    No example in the reference.

  • POST/users/:key/emailcode/sendResend Verification Email

    For users who have not received verification email, this API resends the verification email

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "result": "success"
    }
  • POST/users/:key/tokenversion/refreshRefresh User Tokens

    Log out all users, update valid token code. This method returns a valid token.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "key": "875adb46…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 0,
        "avatar": "avatar.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "created": "2018-07-14T07:06:01.429Z",
        "modified": "2018-07-14T07:07:35.896Z",
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "SMS",
        "phone_verified": true,
        "awaiting_verify_email": "user@example.com",
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true,
        "token": "<token>"
      }
    }
  • GET/users/security/eventsGet Recent Security Events
    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response · 200
    [
      {
        "key": "6edcbeec…",
        "user_key": "4b3b591b…",
        "ip": "203.0.113.10",
        "country": "AU",
        "agent": "PostmanRuntime/7.1.5",
        "time": "2018-07-26T02:25:06.612Z",
        "email_info": {
          "email": "user@example.com",
          "risk_score": 80,
          "is_known_attacker": true,
          "high_risk_security_events_count": 0,
          "security_events_count": 15,
          "is_disposable": false,
          "is_email_malformed": false,
          "is_email_harmful": false
        },
        "modified": "2018-07-26T02:25:07.954Z",
        "ip_info": {
          "ip": "203.0.113.10",
          "ip_version": 4,
          "risk_score": 0,
          "is_known_attacker": false,
          "security_events_count": 0,
          "high_risk_security_events_count": 0,
          "ip_geo": {
            "latitude": 0,
            "city": "<city>",
            "longitude": 0,
            "country_code": "AUS"
          },
          "is_datacenter": false,
          "is_vpn": false,
          "is_proxy": false,
          "is_private": false,
          "is_tor": false
        }
      },
      {
      …
  • POST/users/security/questionsSet Security Questions
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    security_questionsbodye.g. {"questions": [{"question1": "What's your first pet's name", "answer1": "Bob"}, {"question2": "What street did you grow up on", "answer2": "High St Road"}, "… 1 more"]}
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • PUT/users/security/questionsAnswer Security Questions
    No authform · urlencoded
    Request
    NameInDetails
    emailbodye.g. user@example.com
    security_questionsbodye.g. {"questions": [{"question1": "What's your first pet's name", "answer1": "Bob"}, {"question2": "What street did you grow up on", "answer2": "High St Road"}, "… 1 more"]}
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "result": "success",
      "user": {
        "key": "875adb46…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 0,
        "avatar": "avatar.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "removed": false,
        "created": "2018-07-14T07:06:01.429Z",
        "modified": "2018-07-15T03:43:36.445Z",
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "SMS",
        "phone_verified": true,
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true,
        "locked_time": 1531626216,
        "token": "<token>"
      }
    }
  • GET/users/security/questionsGet Security Questions
    No authmultipart/form-data
    Request
    NameInDetails
    emailquerye.g. user@example.com
    Response · 200
    {
      "security_questions": [
        {
          "question1": "What's your first pet's name"
        },
        {
          "question2": "What street did you grow up on"
        },
        "… 1 more"
      ]
    }
  • POST/v2/users/:key/pin/updateUpdate PIN
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    old_pinbodye.g. 1111
    new_pinbodye.g. 1112
    Response

    No example in the reference.

Details & Preferences
  • GET/usersGet User Current

    Get the user object from token

    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response · 200
    {
      "user": {
        "key": "40c0a16b…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 0,
        "avatar": "avatar.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "created": "2018-07-14T06:08:04.156Z",
        "modified": "2018-07-14T07:22:31.837Z",
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "EMAIL",
        "phone_verified": false,
        "awaiting_verify_email": null,
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true,
        "token_version": 1531548484,
        "login_count": 0,
        "locked_time": 1531552951,
        "email_verified": true
      }
    }
  • GET/users/:user_idGet User Details

    Get users with a user key. Normal users can only obtain details of their own account. Admins can obtain details for any user.

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    user_idpath
    Response · 200
    {
      "user": {
        "key": "40c0a16b…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 0,
        "avatar": "avatar.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "created": "2018-07-14T06:08:04.156Z",
        "modified": "2018-07-14T07:53:17.830Z",
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "EMAIL",
        "phone_verified": false,
        "awaiting_verify_email": null,
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true,
        "token_version": 1531554797,
        "two_FA_totp": "FJMEWKJ2O5JWIUSINBDDALCXKRPFMKS5KJXUSJJ6JJTUK2JGHBJQ",
        "login_count": 0,
        "locked_time": 1531552951,
        "…": "1 more fields"
      }
    }
  • GET/users/:key/tradeanalysisGet User Trade Analysis

    Get user trading details if available

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    fromquerye.g. 1527811200
    toquerye.g. 1531606353
    Response · 200
    {
      "from": 1531527001,
      "to": 1531567001,
      "spnc": {
        "bought": 0,
        "average_price_bought": 0,
        "sold": 0,
        "average_price_sold": 0
      },
      "eth": {
        "bought": 0,
        "average_price_bought": 0,
        "sold": 0,
        "average_price_sold": 0
      },
      "btc": {
        "bought": 0,
        "average_price_bought": 0,
        "sold": 0,
        "average_price_sold": 0
      }
    }
  • GET/users/:key/feerateGet User Fee Rate
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

  • POST/users/:user_idUpdate User

    Update user details, if user's email is verified, email updates will require additional verification before updating. If the user's email is not yet verified, email updates will be automatically updated.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    user_idpath
    firstnamebodye.g. Jane
    lastnamebodye.g. Citizen
    emailbodye.g. user@example.com
    referrerbodyOptional - referrer's emaile.g. user@example.com
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "key": "40c0a16b…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 0,
        "avatar": "avatar.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "created": "2018-07-14T06:08:04.156Z",
        "modified": "2018-07-14T08:08:47.754Z",
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "EMAIL",
        "phone_verified": false,
        "awaiting_verify_email": "user@example.com",
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true,
        "token_version": 1531554797,
        "two_FA_totp_temp": null,
        "email_verified": false
      }
    }
  • POST/users/:key/phone/updateUpdate User Phone

    The user must verify phone number before resetting. More information is at Identity/Authentication/Verify Mobile Number

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    phonebodyphone numbere.g. +61 400 000 000
    codebodyverification codee.g. 123456
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "key": "40c0a16b…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 0,
        "avatar": "avatar.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "created": "2018-07-14T06:08:04.156Z",
        "modified": "2018-07-14T09:10:27.764Z",
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "EMAIL",
        "phone_verified": true,
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true,
        "token_version": 1531554797,
        "email_verified": false
      }
    }
  • GET/users/:key/bankGet User Bank Info

    Get user bank details

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "linkedbank": {
        "swiftCode": "XXXXAU2S",
        "accountName": "Jane Citizen",
        "accountNumber": "000000000",
        "bankAddress": "<bank address>"
      },
      "bank_verify_count": 1
    }
  • PUT/users/:key/bank/updateUpdate User Bank Details

    Update user's bank details. Updating details will trigger a bank verification task. Two deposits will be made to user's nominated bank account, user will need to update the amount deposited using the update bank verificatino method to complete the bank link.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    linkedbankbodyJSON of the linked bank details, expecting swiftCode, accountName, accountNumber, and bankAddresse.g. {"swiftCode": "XXXXAU2S", "accountName": "Jane Citizen", "accountNumber": "000000000", "bankAddress": "<bank address>"}
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "key": "40c0a16b…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 0,
        "avatar": "avatar.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "created": "2018-07-14T06:08:04.156Z",
        "modified": "2018-07-14T10:41:19.966Z",
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "EMAIL",
        "phone_verified": true,
        "awaiting_verify_email": "user@example.com",
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true,
        "token_version": 1531554797,
        "email_verified": false,
        "linkedbank": {
          "swiftCode": "XXXXAU2S",
          "accountName": "Jane Citizen",
          "accountNumber": "000000000",
          "bankAddress": "<bank address>"
        }
      }
    }
  • POST/users/:key/bank/verifyUpdate User Bank Verification Codes

    This method verifies if user has received the bank verification deposits made. Update User Bank Details must be called before this verification.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    amount1bodye.g. 0.06
    amount2bodye.g. 0.09
    verifyCodebodye.g. TSM87N
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "key": "40c0a16b…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 0,
        "avatar": "avatar.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "created": "2018-07-14T06:08:04.156Z",
        "modified": "2018-07-14T10:48:54.452Z",
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "EMAIL",
        "phone_verified": true,
        "awaiting_verify_email": "user@example.com",
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true,
        "token_version": 1531554797,
        "email_verified": false,
        "linkedbank": {
          "swiftCode": "XXXXAU2S",
          "accountName": "Jane Citizen",
          "accountNumber": "000000000",
          "bankAddress": "<bank address>"
        },
        "bank_status": {
          "status": "verified"
        },
        "…": "1 more fields"
      }
    }
  • POST/users/:key/linkedcard/removeRemove Linked Card

    Remove linked card from user profile. This method resets the Stripe ID and removes the last 4 digit kept on the server.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "key": "40c0a16b…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 0,
        "avatar": "avatar.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "created": "2018-07-14T06:08:04.156Z",
        "modified": "2018-07-14T10:51:44.445Z",
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "EMAIL",
        "phone_verified": true,
        "awaiting_verify_email": "user@example.com",
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true,
        "token_version": 1531554797,
        "login_count": 0,
        "locked_time": 1531564369,
        "email_verified": false,
        "…": "5 more fields"
      }
    }
  • POST/users/:key/uploadidUpload ID
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    filebodyfile
    typebodye.g. passport
    numberbodye.g. 123123
    expirybodye.g. 12/30
    namebodye.g. Jane Citizen
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "key": "40c0a16b…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 0,
        "avatar": "avatar.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "created": "2018-07-14T06:08:04.156Z",
        "modified": "2018-07-14T11:29:03.174Z",
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "EMAIL",
        "phone_verified": true,
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true,
        "token_version": 1531554797,
        "email_verified": false,
        "linkedbank": {
          "swiftCode": "XXXXAU2S",
          "accountName": "Jane Citizen",
          "accountNumber": "000000000",
          "bankAddress": "<bank address>"
        },
        "bank_status": {
          "status": "verified"
        },
        "bank_verify_count": 1,
        "…": "3 more fields"
      }
    }
  • GET/users/:user_id/idsGet User IDs

    Get all IDs uploaded by the User, this method also generates a signed, temporary S3 link

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    user_idpath
    Response · 200
    {
      "ids": [
        {
          "type": "Bank Statement",
          "number": null,
          "expiry": null,
          "name": null,
          "address": "<address>",
          "file": "4b3b591b336770a3ec204dec8955507c77ea_ID_1532573992.jpg",
          "link": "https://example.com/…"
        },
        {
          "type": "Passport",
          "number": "123123",
          "expiry": "12/30",
          "name": "Jane Citizen",
          "address": null,
          "file": "4b3b591b336770a3ec204dec8955507c77ea_ID_1532586109.jpg",
          "link": "https://example.com/…"
        }
      ]
    }
  • POST/users/:key/avatar/updateUpload Avatar
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    filebodyfile
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "key": "40c0a16b…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 0,
        "avatar": "40c0a16b0f84e79da7815704dcbfde972452_1531568087.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "created": "2018-07-14T06:08:04.156Z",
        "modified": "2018-07-14T11:34:48.967Z",
        "two_FA_enabled": true,
        "two_FA_enabled_trade": true,
        "two_FA_enabled_withdraw": true,
        "two_FA_type": "EMAIL",
        "phone_verified": true,
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true,
        "token_version": 1531554797,
        "linkedbank": {
          "swiftCode": "XXXXAU2S",
          "accountName": "Jane Citizen",
          "accountNumber": "000000000",
          "bankAddress": "<bank address>"
        },
        "bank_status": {
          "status": "verified"
        },
        "bank_verify_count": 1,
        "stripeid": null,
        "…": "2 more fields"
      }
    }
  • POST/users/:key/notificationsUpdate User Notifications Settings

    This updates user's notification preferences. Note a coin Send is classified as a withdraw.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    notification_newcoinbodyif should receive notification when new coin is receivede.g. true
    notification_tradebodyif should receive notification when trade is successfule.g. true
    notification_bank_withdrawbodyif should receive notification when bank withdraw is successfule.g. true
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "notification_newcoin": true,
        "notification_trade": true,
        "notification_bank_withdraw": true
      }
    }
  • GET/users/:user_id/billingGet User Billing Details

    Get users with a user key. Normal users can only obtain details of their own account. Admins can obtain details for any user.

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    user_idpath
    Response · 200
    {
      "stripe_id": "cus_DEFFSm28lx5Po0",
      "last4": ""
    }
  • POST/users/favouritepair/updateSet Favourite Trading Pair

    Sets your favourite trading pairs - get Trading Pairs will return matched Favourites

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    tradingpairbodye.g. btcusd
    favouritebodye.g. true
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "user": {
        "key": "4b3b591b…",
        "firstname": "Jane",
        "lastname": "Citizen",
        "email": "user@example.com",
        "phone": "+61 400 000 000",
        "role": 999,
        "avatar": "4b3b591b336770a3ec204dec8955507c77ea_1526802798.jpg",
        "bankreference": "<reference>",
        "playerid": null,
        "created": "2018-05-18T11:42:23.022Z",
        "modified": "2018-07-26T03:30:44.903Z",
        "two_FA_enabled": false,
        "stripeid": null,
        "lastFourDigits": null,
        "email_verified": true,
        "spnc_presale": 100,
        "linkedbank": {
          "swiftCode": "XXXXAU2S",
          "accountName": "Jane Citizen",
          "accountNumber": "000000000",
          "bankAddress": "<bank address>"
        },
        "bank_status": {
          "status": "verifying"
        },
        "phone_verified": true,
        "trading_pair": "BKNUSD,BTCUSD"
      }
    }
  • POST/users/:key/removeRemove User (Permanent - GDRP Requirement)

    This method permanently removes the user - use it with caution. 2FA is mandatory for this API call.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    codebodye.g. 123456
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

Admin Features
  • GET/users/listUsers ListAdmin
    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response

    No example in the reference.

  • POST/users/loginLogin AdminAdmin
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    emailbodye.g. user@example.com
    passwordbodye.g. ••••••••
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • POST/users/:key/bank/resetverificationReset Bank VerificationAdmin
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

  • POST/users/:key/mfa/updateUpdate User MFAAdmin
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    enabledbodye.g. true
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • POST/users/:key/mfa/updateUpdate User Lock StatusAdmin

    Lock a user, or unlock a user

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    lockedbodye.g. true
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • POST/users/:key/role/updateUpdate User RoleAdmin

    Updates user's role, 0 being normal, 999 being admin

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    rolebodye.g. 0
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

02 — 13 endpointsAccountsFiat and crypto accounts: balances, statements, card and Stripe deposits, and USD, ETH, BTC and ERC-20 withdrawals.
  • GET/accounts/user/:user_idGet Accounts by User

    Get all accounts associated with an user. This endpoint requires a security token to validate identity.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    user_idpath
    Response · 200
    {
      "accounts": [
        {
          "key": "76f7fc98…",
          "name": "USD Saving",
          "user_key": "4b3b591b…",
          "amount": "940.59",
          "type": "Saving",
          "symbol": "USD",
          "local": true,
          "external": null,
          "removed": false,
          "created": "2018-05-18T11:42:23.147Z",
          "modified": "2018-06-26T12:57:53.865Z"
        },
        {
          "key": "5f99df28…",
          "name": "BKN Wallet",
          "user_key": "4b3b591b…",
          "amount": "3016.123",
          "type": "Coin",
          "symbol": "BKN",
          "local": false,
          "external": "c2b1ce2f…",
          "removed": false,
          "created": "2018-05-18T11:42:23.148Z",
          "modified": "2018-05-18T11:42:23.148Z"
        },
        "… 6 more"
      ]
    }
  • GET/accounts/:account_idGet Account Detail

    Obtain account details for an account. Valid params are: datefrom, dateto, status, pagesize, pageindex

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    account_idpath
    pagesizequerye.g. 10
    pageindexquerye.g. 1
    datefromquerye.g. 1514764800
    datetoquerye.g. 1532844612
    Response · 200
    {
      "account": {
        "key": "76f7fc98…",
        "name": "USD Saving",
        "user_key": "4b3b591b…",
        "amount": 940.59,
        "type": "Saving",
        "symbol": "USD",
        "local": true,
        "external": null,
        "created": "2018-05-18T11:42:23.147Z",
        "modified": "2018-06-26T12:57:53.865Z",
        "transactions": [
          {
            "key": "eb76c2fc…",
            "owner": "76f7fc98…",
            "sender": "4b3b591b…",
            "sender_account": "76f7fc98…",
            "recipient": "76f7fc98…",
            "recipient_account": "76f7fc98…",
            "amount": 0.15,
            "symbol": "USD",
            "type": "EXCHANGE_BANK_TRANSFER",
            "status": "COMPLETED",
            "created": "2018-06-26T12:57:53.868Z",
            "modified": "2018-06-26T12:57:53.868Z",
            "removed": false,
            "details": ""
          },
          {
            "key": "d28eff81…",
            "owner": "76f7fc98…",
            "sender": "4b3b591b…",
            "sender_account": "76f7fc98…",
            "recipient": "76f7fc98…",
            "recipient_account": "76f7fc98…",
            "amount": -12.5,
            "amount_num": {
              "$numberDecimal": "-12.5"
            },
      …
  • GET/accounts/eth/detailGet ETH Coin Detail
    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response · 200
    {
      "account": {
        "key": "487fd1fa…",
        "name": "ETH Wallet",
        "user_key": "4b3b591b…",
        "amount": "0.09982792",
        "amount_locked": 0,
        "type": "Coin",
        "symbol": "ETH",
        "external": "0xEAcb34a8…",
        "created": "2018-05-18T11:42:23.121Z",
        "modified": "2018-06-16T01:25:12.778Z"
      }
    }
  • GET/accounts/btc/detailGet BTC Coin Detail
    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response · 200
    {
      "account": {
        "key": "3e04cc8c…",
        "name": "BTC Wallet",
        "user_key": "4b3b591b…",
        "amount": "0.0005",
        "amount_locked": 0,
        "type": "Coin",
        "symbol": "BTC",
        "external": "17nKjQQT…",
        "created": "2018-05-20T14:54:02.137Z",
        "modified": "2018-05-20T14:54:02.137Z"
      }
    }
  • GET/accounts/usd/detailGet USD Account Detail
    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response · 200
    {
      "account": {
        "key": "76f7fc98…",
        "name": "USD Saving",
        "user_key": "4b3b591b…",
        "amount": "940.59",
        "type": "Saving",
        "symbol": "USD",
        "external": null,
        "created": "2018-05-18T11:42:23.147Z",
        "modified": "2018-06-26T12:57:53.865Z"
      }
    }
  • POST/accounts/:account_id/withdrawWithdraw from USD Account

    Withdraw funds from an account. The account has to belong to the user authenticated This endpoint requires a security token to validate identity.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    account_idpath
    amountbodye.g. 10
    codebody2FA code if 2FA withdraw is enabled, the first request will generate the codee.g. 123456
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "amount": "3044.35"
    }
  • POST/accounts/:key/withdrawethWithdraw from ETH Account

    Withdraw funds from an account. The account has to belong to the user authenticated This endpoint requires a security token to validate identity.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    amountbodye.g. 0.001
    addressbodyexternal ETH addresse.g. 0x31B98D14…
    codeoptionalbody2FA code if 2FA withdraw is enabled, the first request will generate the codee.g. 123456
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "transaction_hash": "0x1d441308…"
    }
  • POST/accounts/:account_id/withdrawbtcWithdraw from BTC Account

    Withdraw funds from an account. The account has to belong to the user authenticated This endpoint requires a security token to validate identity.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    account_idpath
    amountbodye.g. 0.001
    addressbodye.g. 17nKjQQT…
    codebody2FA code if 2FA withdraw is enabled, the first request will generate the codee.g. 123456
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "transaction_hash": "d97d67c2…"
    }
  • POST/accounts/:account_id/withdrawerc20Withdraw from ERC20 Account

    Withdraw funds from an account. The account has to belong to the user authenticated This endpoint requires a security token to validate identity.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    account_idpath
    amountbodye.g. 0.001
    addressbodye.g. 17nKjQQT…
    codebody2FA code if 2FA withdraw is enabled, the first request will generate the codee.g. 123456
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "transaction_hash": "d97d67c2…"
    }
  • POST/accounts/:account_id/depositstripev2Deposit using Stripe
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    account_idpath
    typebodye.g. CARD
    amountbodye.g. 10000
    card_tokenbodye.g. 123123
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "amount": 10
    }
  • GET/accounts/:account_id/downloadDownload Account Details

    Obtain account details for an account. Valid params are: datefrom, dateto, status, pagesize, pageindex

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    account_idpath
    pagesizequerye.g. 10
    pageindexquerye.g. 1
    Response · 200
    key,owner,sender,sender_account,recipient,recipient_account,amount,symbol,type,status,created,transaction_hash
    "fa8420e0…","df71fd67…","8651268a…","df71fd67…","e5322a02-8189-40dd-eeee-eeeeeeee1234","05273fd0-da4b-41d7-aaaa-aaaaaaaa1234","96.71","USD","EXCHANGE_BANK_TRANSFER","COMPLETED","Fri Jul 27 2018 04:14:38 GMT+0000 (UTC)",
    "e5b70321…","df71fd67…","8651268a…","df71fd67…","e5322a02-8189-40dd-e
  • POST/accounts/:key/cardGet Banxa Deposit URL
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    amountbodye.g. 20
    typebodye.g. banxa
    Response

    No example in the reference.

  • POST/users/presale/:symbolUpdate Presales
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    symbolpath
    emailbodye.g. user@example.com
    amountbodye.g. 100
    datebodye.g. 20210120
    Response

    No example in the reference.

03 — 7 endpointsTransactionsSend transfers, look them up and estimate fees.
  • POST/transactions/sendSend Transaction

    Conduct a transaction, send an amount from one accont to another. If user's Trade 2FA is enabled, the first request will send a 2FA code. The client will need to resubmit the request with an additional Code field to validate the 2FA.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    sender_accountbodySender's account IDe.g. 03f2ac33…
    recipient_accountbodyRecipient's account IDe.g. 02be8da5…
    amountbodyAmount to sende.g. 1
    codebodye.g. 123456
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "amount": {
        "senderAccount": "c465ece5-2edd-4214-834f-1b6e2a09ec56",
        "recipientAccount": "c2cf8231-9963-4b6d-82bf-ae8eff751b9f",
        "amount": "1",
        "ip": "203.0.113.10"
      }
    }
  • POST/transactions/sendSend Transaction via Address

    Conduct a transaction, send an amount from one accont to another. If user's Trade 2FA is enabled, the first request will send a 2FA code. The client will need to resubmit the request with an additional Code field to validate the 2FA.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    sender_addressbodySender's account IDe.g. 03f2ac33…
    recipient_addressbodyRecipient's account IDe.g. 02be8da5…
    amountbodyAmount to sende.g. 1
    codebodye.g. 123456
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "amount": {
        "senderAccount": "c465ece5-2edd-4214-834f-1b6e2a09ec56",
        "recipientAccount": "c2cf8231-9963-4b6d-82bf-ae8eff751b9f",
        "amount": "1",
        "ip": "203.0.113.10"
      }
    }
  • GET/transactions/coins/:symbolGet Coin Transactions
    Bearer token
    Request
    NameInDetails
    symbolpath
    Response

    No example in the reference.

  • GET/transactions/:symbol/:transaction_idGet Coin Transaction Detail
    Bearer token
    Request
    NameInDetails
    symbolpath
    transaction_idpath
    Response

    No example in the reference.

  • GET/v2/transactions/:account_id/:transaction_idGet Transaction Detail
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    account_idpath
    transaction_idpath
    Response

    No example in the reference.

  • GET/transactions/user/:user_idGet Transactions by User
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    user_idpath
    Response

    No example in the reference.

  • GET/transactions/feeGet Transfer Fee Estimate
    Bearer token
    Request
    NameInDetails
    symbolquerye.g. AUSD
    amountquerye.g. 100
    Response

    No example in the reference.

04 — 6 endpointsContactsAn address book for transfers.
  • POST/contacts/Create Contact

    Create a new contact for convenient future transactions. This endpoint requires a security token to validate identity.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    firstnamebodye.g. Jane
    lastnamebodye.g. Citizen
    addressbodye.g. 090888aa…
    phonebodye.g. +61 400 000 000
    userkeybodye.g. 0b77db6c-ea38-4bc0-ae56-87aa533de4a8
    Content-Typebodye.g. application/x-www-form-urlencoded
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "contact": {
        "firstname": "Jane",
        "lastname": "Citizen",
        "address": "090888aa…",
        "phone": "+61 400 000 000",
        "userkey": "0b77db6c-ea38-4bc0-ae57-87aa533de4a8",
        "id": 19
      }
    }
  • GET/contacts/:contactGet Contact Details

    Get full details from the contact created. This endpoint requires a security token to validate identity.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    contactpath
    firstnamebodye.g. Jane
    lastnamebodye.g. Citizen
    addressbodye.g. c45e806a-8ae0-490e-a162-8816d585b5f5
    phonebodye.g. +61 400 000 000
    userkeybodye.g. b264753e-2e5a-4462-955a-af63a7e82e94
    Content-Typebodye.g. application/x-www-form-urlencoded
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "contact": {
        "id": 19,
        "firstname": "Jane",
        "lastname": "Citizen",
        "address": "090888aa…",
        "phone": "+61 400 000 000",
        "userkey": "0b77db6c-ea38-4bc0-ae57-87aa533de4a8",
        "created": "2017-12-31T00:00:00.000Z",
        "modified": "2017-12-31T00:00:00.000Z"
      }
    }
  • GET/contacts/user/:user_idGet User Contacts

    Get all contact for a user. This endpoint requires a security token to validate identity.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    user_idpath
    firstnamebodye.g. Jane
    lastnamebodye.g. Citizen
    addressbodye.g. c45e806a-8ae0-490e-a162-8816d585b5f5
    phonebodye.g. +61 400 000 000
    userkeybodye.g. b264753e-2e5a-4462-955a-af63a7e82e94
    Content-Typebodye.g. application/x-www-form-urlencoded
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "contacts": [
        {
          "id": 19,
          "firstname": "Jane",
          "lastname": "Citizen",
          "address": "090888aa…",
          "phone": "+61 400 000 000",
          "userkey": "0b77db6c-ea38-4bc0-ae56-87aa533de4a8",
          "created": "2017-12-31T00:00:00.000Z",
          "modified": "2017-12-31T00:00:00.000Z"
        },
        {
          "id": 18,
          "firstname": "Jane",
          "lastname": "Citizen",
          "address": "f5f0de35…",
          "phone": "+61 400 000 000",
          "userkey": "0b77dcfe-ea38-4bc0-ae56-87af533de4a8",
          "created": "2017-12-27T00:00:00.000Z",
          "modified": "2017-12-27T00:00:00.000Z"
        }
      ]
    }
  • PUT/contacts/:idUpdate Contact

    Update details for a contact. This endpoint requires a security token to validate identity.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    idpath
    firstnamebodye.g. Jane
    lastnamebodye.g. Citizen
    addressbodye.g. 090888aa…
    phonebodye.g. +61 400 000 000
    Content-Typebodye.g. application/x-www-form-urlencoded
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "contact": {
        "firstname": "Jane",
        "lastname": "Citizen",
        "address": "090888aa…",
        "phone": "+61 400 000 000"
      }
    }
  • DELETE/contacts/:contactDelete Contact

    Delete a contact previously created. This endpoint requires a security token to validate identity.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    contactpath
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "id": "30"
    }
  • GET/contactsGet ContactsAdmin

    Create a new contact for convenient future transactions. This endpoint requires a security token to validate identity.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    firstnamebodye.g. Jane
    lastnamebodye.g. Citizen
    addressbodye.g. 090888aa…
    phonebodye.g. +61 400 000 000
    userkeybodye.g. 0b77db6c-ea38-4bc0-ae56-87aa533de4a8
    Content-Typebodye.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

05 — 15 endpointsTradesPrices and candles, order placement and cancellation, trade history, rates and fee estimates.
  • GET/trades/market/:symbolGet Market Prices

    Get market average price, and also open buy and sell prices

    No auth
    Request
    NameInDetails
    symbolpath
    Response · 200
    {
      "market": {
        "latest_price": "2.41",
        "market_size": 20757,
        "market_volume": 8536,
        "market_average_price": 2.43,
        "buys": [
          {
            "sum": "10",
            "price": "2.42",
            "amount": 10,
            "unit_price": 2.42
          },
          {
            "sum": "10",
            "price": "2.44",
            "amount": 10,
            "unit_price": 2.44
          },
          "… 18 more"
        ],
        "sells": [
          {
            "sum": "18109.20266221",
            "price": "2.41",
            "amount": 18109.20266221,
            "unit_price": 2.41
          },
          {
            "sum": "187.20536181",
            "price": "2.4",
            "amount": 187.20536181,
            "unit_price": 2.4
          },
          "… 18 more"
        ]
      }
    }
  • GET/trades/market/bknusd/dayGet Market Prices By Day

    Get market average price, and also open buy and sell prices

    No authmultipart/form-data
    Request

    No parameters.

    Response · 200
    {
      "market": [
        {
          "market_value": 676862.0444,
          "market_volume": 331924.45,
          "high": 2.4,
          "low": 1,
          "day": "01/04/2018",
          "price": 2.04,
          "open": 2.15,
          "close": 2
        },
        {
          "market_value": 45571.3164,
          "market_volume": 18864.72,
          "high": 2.45,
          "low": 2.38,
          "day": "01/05/2018",
          "price": 2.42,
          "open": 2.4,
          "close": 2.45
        },
        "… 58 more"
      ]
    }
  • GET/trades/market/bknusd/candle/10Get Market Prices by Interval
    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response · 200
    {
      "market": {
        "volume": 60,
        "high": 2.41,
        "low": 2.41,
        "open": 2.41,
        "close": 2.41
      }
    }
  • POST/tradesCreate Trade

    Currency: BKN / BTC / ETH Trade_Currency: USD / BTC / ETH / BKN Supported currency pairs: BKNUSD, ETHUSD, BTCUSD, BKNBTC, ETHBKN If user's Trade 2FA is enabled, the first request will send a 2FA code. The client will need to resubmit the request with an additional Code field to validate the 2FA.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    userkeybodye.g. 875adb46…
    typebodyBUY or SELLe.g. BUY
    currencybodye.g. BTC
    trade_currencybodye.g. USD
    amountbodyhow many you want to transactione.g. 10
    pricebodyprice per tokene.g. 4.50
    market_pricebodyif it is market pricee.g. false
    codebodyIf user has 2FA enabled for a trade, the first request will send the code, and the second request will demand a 2FA codee.g. 123456
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "order": "d5d011e8…"
    }
  • GET/trades/list/:symbolGet Trades By Symbol

    Valid params are: datefrom, dateto, status, pagesize, pageindex and terms

    Bearer token
    Request
    NameInDetails
    symbolpath
    pagesizequerye.g. 10
    pageindexquerye.g. 2
    datefromquery
    datetoquery
    termsquery
    Response · 200
    {
      "totalCount": 133182,
      "orders": [
        {
          "key": "cb6f6388…",
          "type": "BUY",
          "status": "CLOSED",
          "symbol": "BKN",
          "amount": 10,
          "funds_locked": {
            "$numberDecimal": "24.7"
          },
          "trade_symbol": "BKNUSD",
          "unit_price": 2.47,
          "account": "b1ff00c6…",
          "trade_account": "a05c737f…",
          "site": "Bank",
          "actual_price_closed": 2.43,
          "actual_amount_closed": 10,
          "root_order_key": "",
          "created": "2018-07-07T09:53:34.656Z",
          "modified": "2018-07-07T09:53:34.709Z",
          "fee": 0,
          "market_price": false,
          "matched_orders": [
            {
              "key": "795b6e73…",
              "unit_price": "2.43",
              "amount": "10"
            }
          ]
        },
        {
          "key": "c04f799a…",
          "type": "SELL",
          "status": "CLOSED",
          "symbol": "BKN",
          "amount": 10,
          "funds_locked": {
            "$numberDecimal": "10"
      …
  • GET/trades/user/:user_idGet Trades By User
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    user_idpath
    Response

    No example in the reference.

  • GET/v2/trades/user/:user_idGet Trades By User with Filter

    Valid query string params are: datefrom, dateto, status, pagesize, pageindex, tradepair

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    user_idpath
    pagesizequerye.g. 10
    pageindexquerye.g. 1
    statusquerye.g. all
    tradepairquerye.g. all
    Response · 200
    {
      "totalCount": 23,
      "orders": [
        {
          "key": "d5d011e8…",
          "type": "SELL",
          "status": "CLOSED",
          "symbol": "BKN",
          "amount": 1,
          "funds_locked": {
            "$numberDecimal": "1"
          },
          "trade_symbol": "BKNUSD",
          "unit_price": 1,
          "account": "64981b9a…",
          "trade_account": "75cbcfa9…",
          "site": "Bank",
          "actual_price_closed": 2.41,
          "actual_amount_closed": 1,
          "root_order_key": "",
          "created": "2018-07-07T09:32:51.303Z",
          "modified": "2018-07-07T09:32:51.394Z",
          "fee": 0,
          "market_price": false,
          "matched_orders": [
            {
              "key": "5014b3e0…",
              "unit_price": "2.41",
              "amount": "1"
            }
          ]
        },
        {
          "key": "e4e38d39…",
          "type": "BUY",
          "status": "CLOSED",
          "symbol": "BKN",
          "amount": 5,
          "funds_locked": {
            "$numberDecimal": "12.5"
      …
  • GET/trades/detail/:keyGet Trade Details
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "order": {
        "key": "d5d011e8…",
        "type": "SELL",
        "status": "CLOSED",
        "symbol": "BKN",
        "amount": 1,
        "funds_locked": 1,
        "trade_symbol": "BKNUSD",
        "unit_price": 1,
        "account": "64981b9a…",
        "trade_account": "75cbcfa9…",
        "site": "Bank",
        "actual_price_closed": 2.41,
        "actual_amount_closed": 1,
        "root_order_key": "",
        "created": "2018-07-07T09:32:51.303Z",
        "modified": "2018-07-07T09:32:51.394Z",
        "fee": 0,
        "market_price": false,
        "matched_orders": [
          {
            "key": "5014b3e0…",
            "unit_price": "2.41",
            "amount": "1"
          }
        ]
      }
    }
  • POST/trades/closeCancel Order
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keybodye.g. 66c6e51c-68b9-4825-a7d7-8f43b4ba8fda
    Response · 400
    {
      "message": "Order status is not OPEN"
    }
  • GET/trades/list/:symbolTrade List

    Admin will see a more comprehensive list of orders This list is also visible to the public

    Bearer token
    Request
    NameInDetails
    symbolpath
    pagesizequerye.g. 10
    pageindexquerye.g. 1
    datefromquerye.g. 2018-07-01T13:50:43.821Z
    datetoquerye.g. 2018-07-14T13:50:43.821Z
    termsquery
    Response · 200
    {
      "totalCount": 133192,
      "orders": [
        {
          "key": "e29f6e69…",
          "type": "SELL",
          "status": "OPEN",
          "symbol": "BKN",
          "amount": 10,
          "funds_locked": {
            "$numberDecimal": "10"
          },
          "trade_symbol": "BKNUSD",
          "unit_price": 2.45,
          "account": "b1ff00c6…",
          "trade_account": "a05c737f…",
          "site": "Bank",
          "actual_price_closed": 0,
          "actual_amount_closed": 0,
          "root_order_key": "",
          "created": "2018-07-07T10:02:36.585Z",
          "modified": "2018-07-07T10:02:36.585Z",
          "fee": 0,
          "market_price": false
        },
        {
          "key": "b594c629…",
          "type": "SELL",
          "status": "CLOSED",
          "symbol": "BKN",
          "amount": 10,
          "funds_locked": {
            "$numberDecimal": "10"
          },
          "trade_symbol": "BKNUSD",
          "unit_price": 2.31,
          "account": "b1ff00c6…",
          "trade_account": "a05c737f…",
          "site": "Bank",
          "actual_price_closed": 2.42,
      …
  • GET/trades/download/:user_idDownload Trades By User
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    user_idpath
    pagesizequerye.g. 10
    pageindexquerye.g. 1
    statusquerye.g. all
    tradepairquerye.g. all
    Response · 200
    key,type,status,symbol,amount,funds_locked,trade_symbol,unit_price,account,trade_account,actual_price_closed,actual_amount_closed,root_order_key,created,modified,fee,exchange_fee,transfer_fee,market_price
    "44f4def5…","SELL","OPEN","BKN","10","10","bknusd","2.5","17074df5…","1d817807…",,,,"2018-07-28T09:06:48.701Z","2018-07-28T09:06:48.701Z",,,,
    "021a596a…","BUY","CLOSED","BKN","1","2.5","bknusd","
  • GET/rates/:tradesymbolGet Rates
    Bearer token
    Request
    NameInDetails
    tradesymbolpath
    Response

    No example in the reference.

  • GET/rates/:tradesymbol/logsGet Rate History
    Bearer token
    Request
    NameInDetails
    tradesymbolpath
    Response

    No example in the reference.

  • GET/trades/estimatefeeGet Fee Estimates
    Bearer token
    Request
    NameInDetails
    amountquerye.g. 0.00001
    symbolquerye.g. BTC
    addressquerye.g. 1P6wkkm2…
    Response

    No example in the reference.

  • POST/trades/commitPurchase Tokens
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    currencybodye.g. ETH
    trade_currencybodye.g. AFRI
    amountbodye.g. 0.01
    Response

    No example in the reference.

06 — 1 endpointLogsAdmin transaction logs.
  • GET/transactions/coins/bknGet LogsAdmin
    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response

    No example in the reference.

07 — 1 endpointTasksAdmin task runner.
  • GET/tasks/:name/:actionGet TasksAdmin
    Bearer token
    Request
    NameInDetails
    namepath
    actionpath
    Response · 200
    {
      "tasks": [
        {
          "id": 2,
          "created": "2018-01-10T13:38:09.030Z",
          "modified": "2018-01-10T13:38:09.030Z",
          "task": "Account.Withdraw",
          "action": "Transfer",
          "key": "bb2337ab-b99f-4d60-97a0-34efaf4cda78",
          "variable": {
            "Type": "Transfer",
            "User": "bb2337ab-b99f-4d60-97a0-34efaf4cda78",
            "Amount": "20",
            "Account": "030be986-09b6-4247-adec-6838ca7872f4"
          },
          "complete": false,
          "site": "BKN"
        },
        {
          "id": 3,
          "created": "2018-01-10T13:38:09.030Z",
          "modified": "2018-01-10T13:38:09.030Z",
          "task": "Account.Withdraw",
          "action": "Transfer",
          "key": "bb2337ab-b99f-4d60-97a0-34efaf4cda78",
          "variable": {
            "Type": "Transfer",
            "User": "bb2337ab-b99f-4d60-97a0-34efaf4cda78",
            "Amount": "20",
            "Account": "030be986-09b6-4247-adec-6838ca7872f4"
          },
          "complete": false,
          "site": "BKN"
        },
        "… 3 more"
      ]
    }
08 — 5 endpointsContentArticles and news.
  • GET/news/listGet Article List
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    pagesizequerye.g. 15
    pageindexquerye.g. 1
    Response · 200
    {
      "totalCount": 2,
      "news": [
        {
          "title": "news title",
          "type": "news",
          "created": "2018-07-11T04:44:09.873Z"
        },
        {
          "title": "news title",
          "type": "news",
          "created": "2018-07-11T04:43:12.181Z"
        }
      ]
    }
  • POST/newsCreate Article

    Creating an article

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    titlebodye.g. news title
    typebodye.g. news
    contentbodye.g. news content
    iconbodyfile
    backgroundbodyfile
    buttonbodye.g. button text
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "key": "298bbd69…"
    }
  • GET/news/detail/:keyGet Article Detail

    Given a key, return article details

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "key": "0072fc14…",
      "title": "news title",
      "type": "news",
      "content": "news content",
      "variable": {
        "icon": "icon_1532581721.jpg",
        "background": "background_1532581721.jpg",
        "button": null
      },
      "userkey": "4b3b591b…",
      "created": "2018-07-26T05:08:43.120Z",
      "modified": "2018-07-26T05:08:43.120Z"
    }
  • PUT/news/detail/:keyUpdate Article
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "key": "298bbd69…",
      "modified": true
    }
  • DELETE/news/detail/:keyDelete Article
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "key": "298bbd69…",
      "removed": true
    }
09 — 14 endpointsWalletCreate wallets, send coins, PayMe payment codes, and read blocks and transactions.
  • POST/coin/newCreate Wallet

    Create a new wallet, returning public and private keys. This does not create an account on the federation server.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    symbolbodye.g. XIF
    urloptionalbodyoptionale.g. https://example.com/…
    secretoptionalbodyoptionale.g. <redacted>
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "key": "454bce35…",
      "public": "023f17b0…",
      "private": "<redacted>"
    }
  • POST/coin/informInform Wallet

    After an offline wallet is created, inform the system a wallet has been created.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    publickeybodyoptionale.g. 0307d30a…
    symbolbodye.g. XIF
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • GET/coin/:addressGet Wallet Details

    Get details of a wallet given a public key

    Bearer token
    Request
    NameInDetails
    addresspath
    Response · 200
    {
      "account": {
        "address": "454bce35…",
        "publickey": "023f17b0…",
        "symbol": "ABC",
        "amount": 0,
        "nonce": 0,
        "created": "2018-07-05T05:39:55.520Z",
        "type": "saving"
      }
    }
  • POST/coin/paymeCreate PayMe Code

    Creates a payme code, returning the key for the new payme code

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    publickeybodye.g. 0254fe7b…
    amountbodye.g. 10
    callback_urlbodye.g. https://example.com/…
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "key": "5cebaae6…",
      "address": "036b8d39…"
    }
  • GET/coin/payme/:keyGet PayMe Details

    Return details of the payme entry given a payme code

    Bearer token
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "key": "5cebaae6…",
      "publickey": "036b8d39…",
      "amount": 100,
      "complete": false,
      "created": "2018-07-05T05:43:49.258Z",
      "modified": "2018-07-05T05:43:49.258Z"
    }
  • POST/coin/sendSend Coin

    If user's Trade 2FA is enabled, the first request will send a 2FA code. The client will need to resubmit the request with an additional Code field to validate the 2FA. Recipient could also be a payme address (to provide a seamless payment experience)

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    senderbodye.g. 03f2ac33…
    recipientbodycould be a payme address as welle.g. 02be8da5…
    amountbodye.g. 1
    notesbodye.g. hello message
    codeoptionalbodyif 2fa is enabled, this must be completede.g. 123456
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "amount": 98,
      "txn": "acde5eb1…",
      "recipient": "ba3a42e2…"
    }
  • POST/coin/sendrawSend Coin (Raw)

    Ability to send raw request to the coin infrastructure

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    senderbodye.g. 03b2a9b6…
    recipientbodye.g. 037c3ff6…
    symbolbodye.g. ABC
    amountbodye.g. 1.234
    noncebodye.g. 19
    signaturebodysender + recipient + symbol + amount + noncee.g. <signature>
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "amount": 85.192,
      "txn": "64d17e9a…",
      "recipient": "bf457f83…"
    }
  • POST/coin/:key/updateurlUpdate Coin URL
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    urlbodye.g. https://example.com/…
    secretbodye.g. <redacted>
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "status": "success"
    }
  • GET/coin/transaction/:keyGet Coin Transaction Detail
    Bearer token
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "transaction": {
        "key": "02ad79d5…",
        "owner": "03e80cee…",
        "created": "2020-03-02T23:47:20.689Z",
        "sender_account": "03e80cee…",
        "recipient_account": "03613a39…",
        "amount": "-5000",
        "amount_num": "-5000",
        "symbol": "XIF",
        "type": "TRANSFER",
        "status": "COMPLETED",
        "block": "935966",
        "hash": "d30c5faf…",
        "signature": "<signature>"
      }
    }
  • GET/coin/blocks/latestGet Latest Block
    Bearer token
    Request

    No parameters.

    Response · 200
    {
      "id": "938772",
      "created": "2020-03-04T22:32:40.000Z",
      "hash": "1dbff527…",
      "last_hash": "8a2520d3…",
      "txns": ""
    }
  • GET/coin/blocks/countGet Latest Block Number
    Bearer token
    Request

    No parameters.

    Response · 200
    "938772"
  • GET/coin/blocks/:idGet Block Details
    Bearer token
    Request
    NameInDetails
    idpath
    Response · 200
    {
      "id": "935966",
      "created": "2020-03-02T23:46:40.000Z",
      "hash": "0d13b2d2…",
      "last_hash": "73641b33…",
      "txns": [
        "02ad79d5…",
        "e08a79f9…",
        "… 2 more"
      ]
    }
  • GET/coin/blocks/:id/transactionsGet Transactions in Block
    Bearer token
    Request
    NameInDetails
    idpath
    Response · 200
    {
      "txns": [
        "02ad79d5…",
        "e08a79f9…",
        "… 2 more"
      ]
    }
  • POST/tokens/fee/exemptExempt Wallet
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    addressesbodye.g. abc,xyz
    Response

    No example in the reference.

10 — 9 endpointsMarketCoin info, trading pairs, the order book and a TradingView-compatible chart feed.
  • GET/coin/:symbol/infoGet Coin Info
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    symbolpath
    Response · 200
    {
      "name": "Bitcoin",
      "symbol": "BTC",
      "imageurl": "blah.gif",
      "corporation": "na",
      "hq": "Tokyo",
      "corporatefoundingdate": "2011",
      "founder": "Satoshi Nakamoto",
      "website": "www.bitcoin.com",
      "firstissuedate": "1/1/2011",
      "marketcapitalisation": "21B",
      "listedexchanges": "SPNC",
      "blockcreationcycle": "1",
      "miningcompensationamount": "1",
      "totalsupply": "21M",
      "agreementprotocol": "blah",
      "whitepaperurl": "blah"
    }
  • GET/market/priceGet Market Info
    Bearer token
    Request
    NameInDetails
    tradingpairsquerye.g. ethusd,btcusd
    Response · 200
    [
      {
        "price": 0,
        "tradingpair": "SPNCUSD",
        "volume24h": 0,
        "delta24h_price_p": 0,
        "delta24h_volume_p": 0,
        "delta24h_price": 0,
        "delta24h_volume": 0,
        "high24h": 0,
        "low24h": 0,
        "lasttransaction": 0
      },
      {
        "price": 0,
        "tradingpair": "BTCUSD",
        "volume24h": 0,
        "delta24h_price_p": 0,
        "delta24h_volume_p": 0,
        "delta24h_price": 0,
        "delta24h_volume": 0,
        "high24h": 0,
        "low24h": 0,
        "lasttransaction": 0
      }
    ]
  • GET/market/pairsGet Trading Pairs
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    marketquerye.g. usd
    Response · 200
    [
      {
        "tradingpair": "bknusd",
        "volume24h": "816",
        "delta24h_price_p": "98.85",
        "delta24h_volume_p": "0",
        "delta24h_price": "-0.03",
        "delta24h_volume": "816.00",
        "high24h": "2.5",
        "low24h": "2.4",
        "price": "2.5",
        "lasttransaction": "7",
        "favourite": true
      },
      {
        "tradingpair": "btcusd",
        "volume24h": 0,
        "delta24h_price_p": 0,
        "delta24h_volume_p": 0,
        "delta24h_price": 0,
        "delta24h_volume": 0,
        "high24h": 0,
        "low24h": 0,
        "price": 0,
        "lasttransaction": 0,
        "favourite": true
      },
      "… 1 more"
    ]
  • GET/market/tradebookGet Trade Book
    Bearer token
    Request
    NameInDetails
    tradingpairquerye.g. btcusd
    cumulativequerye.g. true
    limitquerye.g. 16
    Response · 200
    [
      {
        "volume": "2.1",
        "price": "11.5",
        "type": "buy"
      },
      {
        "volume": "9.4",
        "price": "2.5",
        "type": "buy"
      },
      "… 6 more"
    ]
  • GET/tradingview/configTrade View Config
    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response · 200
    {
      "supported_resolutions": [
        "1",
        "5",
        "… 4 more"
      ],
      "supports_group_request": false,
      "supports_marks": false,
      "supports_search": true,
      "supports_timescale_marks": false
    }
  • GET/tradingview/symbolsGet Symbol Info
    No auth
    Request
    NameInDetails
    symbolquerye.g. btcusd
    Response · 200
    {
      "symbol": "BKNUSD",
      "name": "BKN/USD",
      "description": "BKN to USD trading",
      "type": "bitcoin",
      "session": "24x7",
      "exchange": "Suponic Exchange",
      "listed_exchange": "Bitfinex, Bithum, BTCMarket",
      "timezone": "Asia/Seoul",
      "fractional": false,
      "minmov": 0.01,
      "pricescale": 100,
      "has_intraday": true,
      "intraday_multipliers": [
        1
      ],
      "has_seconds": false,
      "seconds_multipliers": [],
      "has_daily": true,
      "has_weekly_and_monthly": true,
      "has_empty_bars": false,
      "force_session_rebuild": true,
      "has_no_volume": false,
      "volume_precision": 0,
      "data_status": "pulsed",
      "sector": "Cryptocurrency",
      "industry": "Fintech",
      "…": "2 more fields"
    }
  • GET/tradingview/historyGet Trade History
    Bearer token
    Request
    NameInDetails
    symbolquerye.g. btcusd
    fromquerye.g. 1531310000
    toquerye.g. 1531312000
    resolutionquerye.g. 1
    Response · 200
    {
      "s": "ok",
      "errmsg": null,
      "t": [],
      "c": [],
      "o": [],
      "h": [],
      "l": [],
      "v": [],
      "nextTime": null
    }
  • GET/market/price/:trading_pairGet Price
    Bearer token
    Request
    NameInDetails
    trading_pairpath
    timequerye.g. 1531307646000
    Response · 200
    {
      "time": 1531307646000,
      "price": 2
    }
  • GET/coins/listGet Coins
    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response · 200
    {
      "coins": [
        {
          "name": "Bitcoin",
          "symbol": "BTC"
        },
        {
          "name": "Ethereum",
          "symbol": "ETH"
        },
        "… 1 more"
      ]
    }
11 — 8 endpointsInsurancePolicies, classes, treaty quota share, retentions and premium calculation.
  • GET/insurance/filesList Policy Files
    Bearer token
    Request

    No parameters.

    Response

    No example in the reference.

  • GET/insurance/files/:keyGet Policy Detail
    Bearer token
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

  • GET/insurance/policy_typesList Policies Types
    Bearer token
    Request

    No parameters.

    Response

    No example in the reference.

  • GET/insurance/policy_classesList Policies Classes
    Bearer token
    Request

    No parameters.

    Response

    No example in the reference.

  • GET/insurance/treaty_quota_shareList Treaty Quota Share
    Bearer token
    Request

    No parameters.

    Response

    No example in the reference.

  • GET/insurance/retentionsList Retentions
    Bearer token
    Request

    No parameters.

    Response

    No example in the reference.

  • GET/insurance/calculate/:keyCalculate Policy
    Bearer token
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

  • GET/insurance/calculate_ri/:keyCalculate RI Premiums
    Bearer token
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

12 — 12 endpointsCertificationIssuers and verifiable certificates in Open Badges format, with revocation lists.
Issuers
  • POST/certificates/issuersCreate IssuerAdmin
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    namebodyname of the issuere.g. Jane Citizen
    emailbodyissuer general contact emaile.g. user@example.com
    urlbodyissuer URLe.g. https://example.com/…
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "key": "029a57dd…"
    }
  • GET/certificates/issuers/:keyGet Issuer DetailAdmin
    Bearer token
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "key": "029a57dd…",
      "name": "Jane Citizen",
      "url": "https://example.com/…",
      "email": "user@example.com",
      "site": "ABC",
      "created": "2019-10-12T04:13:26.471Z",
      "modified": "2019-10-12T04:13:26.471Z",
      "display": true,
      "removed": false,
      "prime_address": "CERx000044c162c8cb39d4f8f09fe1e64ebb5789adc2ad62",
      "prime_public_key": "029a57dd…"
    }
  • GET/certificates/issuers/:key/jsonGet Issuer Detail - Open Badge Format
    Bearer token
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "publicKey": [
        {
          "created": "2019-10-12T04:13:26.471Z",
          "id": "ecdsa-koblitz-pubkey:029a57dd…"
        }
      ]
    }
  • GET/certificates/issuers/:key/logsGet Issuer LogsAdmin

    Get a log of issuer changes

    Bearer token
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "totalCount": 1,
      "logs": [
        {
          "created": "2019-10-12T04:13:26.473Z",
          "type": "ISSUER.CREATE",
          "value": "029a57dd…",
          "userkey": "ff28e17e…",
          "recipient": "",
          "ip": "203.0.113.10",
          "agent": "PostmanRuntime/7.17.1",
          "variable": {
            "before": {},
            "after": {
              "name": "Jane Citizen",
              "email": "user@example.com",
              "url": "https://example.com/…",
              "address": "CERx000044c162c8cb39d4f8f09fe1e64ebb5789adc2ad62",
              "public_key": "029a57dd…",
              "private_key": "<redacted>"
            }
          }
        }
      ]
    }
  • GET/certificates/issuers/:key/revocationGet Issuer Revocation List

    Get a log of issuer changes

    Bearer token
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "revokedAssertions": []
    }
  • PUT/certificates/issuers/:keyUpdate Issuer DetailAdmin
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    namebodye.g. Harvard
    emailbodye.g. user@example.com
    urlbodye.g. https://example.com/…
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "key": {
        "key": "0234a584…",
        "name": "Harvard",
        "url": "https://example.com/…",
        "email": "user@example.com",
        "site": "ABC",
        "created": "2019-10-12T04:07:07.179Z",
        "modified": "2019-10-12T04:31:09.488Z",
        "display": true,
        "removed": false,
        "prime_address": "CERx0000a20970a07bb1e7e75c082e006072d45bdf4bbe3c",
        "prime_public_key": "0234a584…",
        "prime_private_key": "<redacted>"
      }
    }
  • GET/certificates/issuersGet IssuersAdmin
    Bearer token
    Request

    No parameters.

    Response · 200
    {
      "issuers": [
        {
          "key": "9d29d2ecf6375b22",
          "name": "Jane Citizen",
          "created": "2019-09-26T06:18:14.820Z",
          "modified": "2019-09-26T06:18:14.820Z",
          "display": true,
          "removed": false
        }
      ]
    }
Certificates
  • POST/certificatesCreate Certificate
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    typebodye.g. certificate
    namebodye.g. Bachelor of Computer Science
    descriptionbodye.g. Issued by Engineering Department
    criteriabodye.g. Completed all subjects
    commencedbodye.g. 2016-01-01
    completedbodye.g. 2019-01-01
    recipient_emailbodye.g. user@example.com
    recipient_namebodye.g. Jane Citizen
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "key": "cf54580abbf2c448"
    }
  • GET/certificates/:keyGet Certificate Detail

    List all certificates If you are an issuer, it will list all certificates from the same issuer If you are an admin, it will list all certificates

    No auth
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "key": "7318088fb49bd846",
      "issuer_key": "0234a584…",
      "issuer_name": "Harvard",
      "issuer_url": "https://example.com/…",
      "issuer_email": "user@example.com",
      "type": "certificate",
      "name": "Bachelor of Computer Science",
      "description": "Issued by Engineering Department",
      "commenced": "2016-01-01",
      "completed": "2019-01-01",
      "recipient_name": "Jane Citizen",
      "recipient_email": "user@example.com",
      "data": "a6d13a50…",
      "site": "ABC",
      "created": "2019-10-12T04:35:05.617Z",
      "modified": "2019-10-12T04:35:05.617Z",
      "display": true,
      "removed": false,
      "certificate": {
        "schema": "https://example.com/…",
        "data": {
          "type": "c7b42ed4-beea-4e9e-bbfa-e3fabb8e8094:string:Assertion",
          "issuedOn": "96f8b167-0af2-41eb-aefd-11890f24f662:string:2017-05-01",
          "id": "39f68081-89e2-4956-8f0f-7e34ba297c83:string:urn:uuid:aadc06ac-4185-5bd8-8731-13326bb02e65",
          "@context": [
            "a0f2d8d7-b1ee-48c3-adbf-1ea4266b231c:string:https://example.com/…",
            "61ec4358-5bf6-4107-a703-012d8f4b1407:string:https://example.com/…"
          ],
          "badge": {
            "description": "a5d7418a-156d-432f-86d5-545b24bbdc61:string:Issued by Engineering Department",
            "type": "8a6e9cb4-ba9e-4741-935f-63618ffa9347:string:BadgeClass",
            "id": "bd841c43-2687-475d-b18d-b4ea5205e683:string:urn:uuid:da9c7aa9-41e4-4d7f-a830-19cf05473190",
            "image": "c3cdb788-3913-46b7-b61f-a5c189fb581b:string:data:image/png;base64,",
            "issuer": {
              "type": "735b87e9-58cf-48b7-a7ea-8e75303b7935:string:Profile",
              "id": "2187179a-889a-4428-87cb-c10459423a22:string:https://example.com/…",
              "image": "7d96505e-2c5c-4548-b3da-b0eaa0ead8f8:string:data:image/png;base64,",
              "revocationList": "770ef67f-92ae-42af-b2c6-8c0dcd70a4cd:string:https://example.com/…",
              "url": "81b92b14-f5a4-4e28-b220-473a47980d4c:string:https://example.com/…",
      …
  • GET/certificates/:key/viewGet Certificate Public

    List all certificates If you are an issuer, it will list all certificates from the same issuer If you are an admin, it will list all certificates

    No auth
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "key": "7318088fb49bd846",
      "issuer_key": "0234a584…",
      "issuer_name": "Harvard",
      "issuer_url": "https://example.com/…",
      "issuer_email": "user@example.com",
      "type": "certificate",
      "name": "Bachelor of Computer Science",
      "description": "Issued by Engineering Department",
      "commenced": "2016-01-01",
      "completed": "2019-01-01",
      "recipient_name": "Jane Citizen",
      "recipient_email": "user@example.com",
      "data": "a6d13a50…",
      "site": "ABC",
      "created": "2019-10-12T04:35:05.617Z",
      "modified": "2019-10-12T04:35:05.617Z",
      "display": true,
      "removed": false,
      "certificate": {
        "schema": "https://example.com/…",
        "data": {
          "type": "c7b42ed4-beea-4e9e-bbfa-e3fabb8e8094:string:Assertion",
          "issuedOn": "96f8b167-0af2-41eb-aefd-11890f24f662:string:2017-05-01",
          "id": "39f68081-89e2-4956-8f0f-7e34ba297c83:string:urn:uuid:aadc06ac-4185-5bd8-8731-13326bb02e65",
          "@context": [
            "a0f2d8d7-b1ee-48c3-adbf-1ea4266b231c:string:https://example.com/…",
            "61ec4358-5bf6-4107-a703-012d8f4b1407:string:https://example.com/…"
          ],
          "badge": {
            "description": "a5d7418a-156d-432f-86d5-545b24bbdc61:string:Issued by Engineering Department",
            "type": "8a6e9cb4-ba9e-4741-935f-63618ffa9347:string:BadgeClass",
            "id": "bd841c43-2687-475d-b18d-b4ea5205e683:string:urn:uuid:da9c7aa9-41e4-4d7f-a830-19cf05473190",
            "image": "c3cdb788-3913-46b7-b61f-a5c189fb581b:string:data:image/png;base64,",
            "issuer": {
              "type": "735b87e9-58cf-48b7-a7ea-8e75303b7935:string:Profile",
              "id": "2187179a-889a-4428-87cb-c10459423a22:string:https://example.com/…",
              "image": "7d96505e-2c5c-4548-b3da-b0eaa0ead8f8:string:data:image/png;base64,",
              "revocationList": "770ef67f-92ae-42af-b2c6-8c0dcd70a4cd:string:https://example.com/…",
              "url": "81b92b14-f5a4-4e28-b220-473a47980d4c:string:https://example.com/…",
      …
  • GET/c/:keyGet Certificate Detail (Shorthand)

    List all certificates If you are an issuer, it will list all certificates from the same issuer If you are an admin, it will list all certificates

    No auth
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "key": "7318088fb49bd846",
      "issuer_key": "0234a584…",
      "issuer_name": "Harvard",
      "issuer_url": "https://example.com/…",
      "issuer_email": "user@example.com",
      "type": "certificate",
      "name": "Bachelor of Computer Science",
      "description": "Issued by Engineering Department",
      "commenced": "2016-01-01",
      "completed": "2019-01-01",
      "recipient_name": "Jane Citizen",
      "recipient_email": "user@example.com",
      "data": "a6d13a50…",
      "site": "ABC",
      "created": "2019-10-12T04:35:05.617Z",
      "modified": "2019-10-12T04:35:05.617Z",
      "display": true,
      "removed": false,
      "certificate": {
        "schema": "https://example.com/…",
        "data": {
          "type": "c7b42ed4-beea-4e9e-bbfa-e3fabb8e8094:string:Assertion",
          "issuedOn": "96f8b167-0af2-41eb-aefd-11890f24f662:string:2017-05-01",
          "id": "39f68081-89e2-4956-8f0f-7e34ba297c83:string:urn:uuid:aadc06ac-4185-5bd8-8731-13326bb02e65",
          "@context": [
            "a0f2d8d7-b1ee-48c3-adbf-1ea4266b231c:string:https://example.com/…",
            "61ec4358-5bf6-4107-a703-012d8f4b1407:string:https://example.com/…"
          ],
          "badge": {
            "description": "a5d7418a-156d-432f-86d5-545b24bbdc61:string:Issued by Engineering Department",
            "type": "8a6e9cb4-ba9e-4741-935f-63618ffa9347:string:BadgeClass",
            "id": "bd841c43-2687-475d-b18d-b4ea5205e683:string:urn:uuid:da9c7aa9-41e4-4d7f-a830-19cf05473190",
            "image": "c3cdb788-3913-46b7-b61f-a5c189fb581b:string:data:image/png;base64,",
            "issuer": {
              "type": "735b87e9-58cf-48b7-a7ea-8e75303b7935:string:Profile",
              "id": "2187179a-889a-4428-87cb-c10459423a22:string:https://example.com/…",
              "image": "7d96505e-2c5c-4548-b3da-b0eaa0ead8f8:string:data:image/png;base64,",
              "revocationList": "770ef67f-92ae-42af-b2c6-8c0dcd70a4cd:string:https://example.com/…",
              "url": "81b92b14-f5a4-4e28-b220-473a47980d4c:string:https://example.com/…",
      …
  • GET/certificatesGet Certificates

    List all certificates If you are an issuer, it will list all certificates from the same issuer If you are an admin, it will list all certificates

    Bearer token
    Request

    No parameters.

    Response · 200
    {
      "issuer": "Harvard",
      "certificates": [
        {
          "key": "7318088fb49bd846",
          "issuer_key": "0234a584…",
          "issuer_name": "Harvard",
          "issuer_url": "https://example.com/…",
          "issuer_email": "user@example.com",
          "type": "certificate",
          "name": "Bachelor of Computer Science",
          "description": "Issued by Engineering Department",
          "commenced": "2016-01-01",
          "completed": "2019-01-01",
          "recipient_name": "Jane Citizen",
          "recipient_email": "user@example.com",
          "data": "a6d13a50…",
          "created": "2019-10-12T04:35:05.617Z",
          "modified": "2019-10-12T04:35:05.617Z",
          "display": true,
          "removed": false
        }
      ]
    }
13 — 11 endpointsRetailProduct catalogues: categories and products.
  • POST/categoriesCreate Category
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    namebody
    Response

    No example in the reference.

  • GET/categories/user/:keyGet Categories by User
    Bearer token
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

  • GET/categories/:keyGet Category Details
    Bearer token
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

  • PUT/categories/:keyUpdate Category Details
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    namebody
    Response

    No example in the reference.

  • DELETE/categories/:keyDelete Category
    Bearer token
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

  • GET/category/:key/productsGet Products by Category
    Bearer token
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

  • GET/products/user/:keyGet Products by User
    Bearer token
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

  • POST/productsCreate Product
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    namebody
    pricebody
    currencybody
    category_namebody
    Response

    No example in the reference.

  • GET/products/:keyGet Product Details
    No auth
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

  • PUT/products/:keyUpdate Product Details
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    namebody
    pricebody
    currencybody
    category_namebody
    Response

    No example in the reference.

  • DELETE/products/:keyDelete Product
    Bearer token
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

14 — 5 endpointsBlockchainLedger accounts and transactions.
  • POST/blockchainCreate Account
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    symbolbodye.g. HON
    notesbodye.g. Creating a new car account
    databodye.g. {"frame_number": "JHMRK5870CC201346", "registration": "3กฮ8190กท", "brand": "HONDA", "model": "STEPWGNSPADA", "transmission": "Automatic", "year": 2012, "engine_size": 1799, "fuel_type": "Petrol", "car_drive_system": "2WD", "cylinder": 4, "gearbox_type": "CVT", "exterior_color": "WHITE", "interior_color": "BLACK", "kilometers": 190252, "score": 4.1}
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • GET/blockchain/:addressGet Account
    Bearer token
    Request
    NameInDetails
    addresspath
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • GET/blockchain/:address/:keyGet Transaction
    Bearer token
    Request
    NameInDetails
    addresspath
    keypath
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • PUT/blockchain/:addressUpdate Account
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    addresspath
    notesbodye.g. Creating a new car account
    databodye.g. {"registration": "3กฮ0000กท", "exterior_color": "RED", "kilometers": 32000}
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • POST/blockchain/:addressCreate Transaction
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    addresspath
    typebodye.g. SERVICE
    databodye.g. {"document_number": "1300453925", "dealer_id": "24101", "pm_kilometers": 190252, "pm_code": "P190", "service_date": "20180822", "finish_date": "20180822", "delivery_date": "20180822", "job_code": "G04", "job_status": "ชำระเงินแล้ว", "details": [{"job_number": 10, "item_category": "Labor", "key_field": "LABOR", "description": "ค่าแรง", "frt_quantity": 1.4, "price": 679}, {"job_number": 20, "item_category": "Parts", "key_field": "08232P99A4NT1", "description": "น้ำมันเครื่อง SN 0W20 4 ลิตร", "frt_quantity": 1, "price": 1142}, "… 1 more"]}
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

15 — 5 endpointsAssetsRegister real-world assets and tokenize them.
  • POST/assetsCreate Asset
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    namebodyasset namee.g. eTB GSBE19
    descriptionbodydescription of the assete.g. ASX listed exchange traded treasury bonds, maturity 15 March 2019, coupon interest rate 5.25%
    databodyjson of asset propertiese.g. {"maturity": "15 mar 2019", "exchange": "ASX", "AUSTRACLEAR ISIN": "AU300TB01224", "ASX CDI ISIN": "AU000GSBE197"}
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "key": "7357f3e1…"
    }
  • GET/assetsList Assets
    Bearer token
    Request
    NameInDetails
    page_sizequerye.g. 10
    page_indexquerye.g. 0
    Response · 200
    {
      "assets": {
        "total_count": 1,
        "page_size": 15,
        "page_index": 1,
        "assets": [
          {
            "key": "7357f3e1…",
            "name": "eTB GSBE19",
            "description": "ASX listed exchange traded treasury bonds, maturity 15 March 2019, coupon interest rate 5.25%",
            "symbol": null,
            "data": {
              "maturity": "15 mar 2019",
              "exchange": "ASX",
              "AUSTRACLEAR ISIN": "AU300TB01224",
              "ASX CDI ISIN": "AU000GSBE197"
            },
            "user_key": "759a2540…",
            "created": "2019-03-01T03:36:20.236Z",
            "modified": "2019-03-01T03:36:20.236Z",
            "locked": false
          }
        ]
      }
    }
  • PUT/assets/:keyUpdate Asset
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    namebodyasset name
    descriptionbodydescription of the asset
    databodyjson of asset properties
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • GET/assets/:keyGet Asset Detail
    Bearer token
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

  • POST/assets/:key/tokenizeTokenize Asset
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    symbolbodytoken symbole.g. G19
    namebodytoken namee.g. eTB GSBE19
    descriptionbodye.g. ASX listed exchange traded treasury bonds - GSBE19
    legalsbodye.g. {"drag_along": "51% rights", "tag_along": "49% rights"}
    number_of_tokensbodye.g. 1000000
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "result": "success",
      "symbol": "G19"
    }
16 — 4 endpointsTokensCreate and manage tokens.
  • POST/tokensCreate Token
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    symbolbodytoken symbole.g. ABT
    namebodytoken namee.g. Jane Citizen
    descriptionbodytoken descriptione.g. Tokens to represent Bangkok One stage 1 dveelopment
    legalsbodylegal information attached to the tokene.g. {"jurisdiction": "Hong Kong"}
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "key": "11db5db8…"
    }
  • GET/tokensGet Tokens
    Bearer token
    Request
    NameInDetails
    page_sizequerye.g. 10
    page_indexquerye.g. 0
    Response · 200
    {
      "tokens": {
        "total_count": 2,
        "page_size": 15,
        "page_index": 1,
        "tokens": [
          {
            "key": "11db5db8…",
            "symbol": "ABT",
            "name": "Jane Citizen",
            "description": "Tokens to represent Bangkok One stage 1 dveelopment",
            "legals": {
              "jurisdiction": "Hong Kong"
            },
            "created": "2019-03-01T04:16:50.803Z",
            "modified": "2019-03-01T04:16:50.803Z",
            "locked": false,
            "asset_details": null
          },
          {
            "key": "8e1977ca…",
            "symbol": "G19",
            "name": "eTB GSBE19",
            "description": "ASX listed exchange traded treasury bonds - GSBE19",
            "legals": {
              "drag_along": "51% rights",
              "tag_along": "49% rights"
            },
            "created": "2019-03-01T03:56:37.769Z",
            "modified": "2019-03-01T03:56:37.769Z",
            "locked": false,
            "asset_details": {
              "key": "7357f3e1…",
              "name": "eTB GSBE19",
              "description": "ASX listed exchange traded treasury bonds, maturity 15 March 2019, coupon interest rate 5.25%",
              "data": {
                "…": "…"
              },
              "tokens_issued": "1000000"
            }
      …
  • PUT/tokens/:symbolUpdate Token
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    symbolpath
    namebodye.g. ABC
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "result": "success"
    }
  • GET/tokens/:symbolGet Token Detail
    Bearer token
    Request
    NameInDetails
    symbolpath
    Response · 200
    {
      "token": {
        "key": "11db5db8…",
        "symbol": "ABT",
        "name": "ABC",
        "description": "Tokens to represent Bangkok One stage 1 dveelopment",
        "legals": {
          "jurisdiction": "Hong Kong"
        },
        "created": "2019-03-01T04:16:50.803Z",
        "modified": "2019-03-01T04:19:46.705Z",
        "locked": null,
        "asset_details": null
      }
    }
17 — 9 endpointsChatsCommunity channels and posts.
  • POST/chatsCreate ChannelAdmin
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    languagebodye.g. en
    titlebodye.g. general
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "key": "56e9a62f216a2bf1"
    }
  • GET/chats/listList Chat Channels
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    languagequerye.g. en
    Response · 200
    {
      "channels": [
        {
          "key": "56e9a62f216a2bf1",
          "title": "general",
          "language": "en",
          "userkey": "875adb46…",
          "created": "2018-08-22T07:53:26.643Z",
          "modified": "2018-08-22T07:53:26.643Z",
          "display": true,
          "removed": false
        },
        {
          "key": "fd0f415691431482",
          "title": "general",
          "language": "en",
          "userkey": "875adb46…",
          "created": "2018-08-22T07:51:15.483Z",
          "modified": "2018-08-22T07:51:15.483Z",
          "display": true,
          "removed": false
        },
        "… 1 more"
      ]
    }
  • POST/chats/detail/:keyCreate Post
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    postbodye.g. hello world
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "key": "b716d6f8…"
    }
  • GET/chats/detail/:keyGet Chat Details

    Get chat details Get posts in channel, supports paging

    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    pagesizequerye.g. 10
    pageindexquerye.g. 1
    Response · 200
    {
      "channel": {
        "key": "56e9a62f216a2bf1",
        "title": "general",
        "language": "en",
        "userkey": "875adb46…",
        "site": "SPN",
        "created": "2018-08-22T07:53:26.643Z",
        "modified": "2018-08-22T07:53:26.643Z",
        "display": true,
        "removed": false
      },
      "posts": [
        {
          "key": "4d25d7dd…",
          "channel": "56e9a62f216a2bf1",
          "post": "hello world",
          "username": "jane.citizen",
          "userkey": "875adb46…",
          "created": "2018-08-22T08:18:32.051Z",
          "modified": "2018-08-22T08:18:32.051Z",
          "display": true,
          "removed": false
        },
        {
          "key": "b716d6f8…",
          "channel": "56e9a62f216a2bf1",
          "post": "hello world",
          "username": "jane.citizen",
          "userkey": "875adb46…",
          "created": "2018-08-22T08:17:03.171Z",
          "modified": "2018-08-22T08:17:03.171Z",
          "display": true,
          "removed": false
        },
        "… 4 more"
      ]
    }
  • GET/chats/detail/:key/:post_keyGet Post Detail
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    post_keypath
    Response · 200
    {
      "post": {
        "key": "b716d6f8…",
        "channel": "56e9a62f216a2bf1",
        "post": "hello world",
        "username": "jane.citizen",
        "userkey": "875adb46…",
        "created": "2018-08-22T08:17:03.171Z",
        "modified": "2018-08-22T08:17:03.171Z",
        "display": true,
        "removed": false
      }
    }
  • DELETE/chats/detail/:keyDelete Chat Channel
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    Response

    No example in the reference.

  • DELETE/chats/detail/:key/:post_keyDelete Chat Post
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    post_keypath
    keybodye.g. 56e9a62f216a2bf1
    post_keybodye.g. b716d6f8…
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "key": "56e9a62f216a2bf1",
      "removed": true
    }
  • PUT/chats/detail/:keyUpdate Chat Channel
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    titlebodye.g. new title
    languagebodye.g. jp
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • PUT/chats/detail/:key/:post_keyUpdate Post
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    keypath
    post_keypath
    postbodye.g. updated post
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

18 — 15 endpointsSiteExchange administration (contracts, master accounts, Prime tokens) and helpers for versions, signatures, statistics and helpdesk SSO.
Manage Exchange
  • GET/contracts/list/:type/simpleList ContractsAdmin
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    typepath
    namebodye.g. new contract
    symbolbodye.g. XYZ
    contractbodyERC20 contract addresse.g. ABC12345
    abiArraybodyabi array of the ERC20 contracte.g. [{"constant": true, "inputs": [], "name": "name", "outputs": [{"name": "", "type": "string"}], "payable": false, "stateMutability": "view", "type": "function"}, {"constant": false, "inputs": [{"name": "_spender", "type": "address"}, {"name": "_value", "type": "uint256"}], "name": "approve", "outputs": [{"name": "success", "type": "bool"}], "payable": false, "stateMutability": "nonpayable", "type": "function"}, "… 21 more"]
    typebodycontract typee.g. ERC20
    displaybodye.g. true
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "totalCount": 2,
      "contracts": [
        {
          "key": "94336b22…",
          "name": "ABCoin",
          "symbol": "ABC",
          "contract": "address1234567",
          "type": "ERC20",
          "site": "BANK",
          "display": true,
          "created": "2018-07-28T03:12:24.557Z",
          "modified": "2018-07-28T03:12:24.557Z"
        },
        {
          "key": "8dabb3f8…",
          "name": "new contract",
          "symbol": "XYZ",
          "contract": "abc12345",
          "type": "ERC20",
          "site": "BANK",
          "display": true,
          "created": "2018-07-28T03:09:47.095Z",
          "modified": "2018-07-28T03:09:47.095Z"
        }
      ]
    }
  • POST/contractsCreate ContractAdmin
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    namebodye.g. new contractX
    symbolbodye.g. XXX
    contractbodyERC20 contract addresse.g. ABC12345X
    abiArraybodyabi array of the ERC20 contracte.g. [{"constant": true, "inputs": [], "name": "name", "outputs": [{"name": "", "type": "string"}], "payable": false, "stateMutability": "view", "type": "function"}, {"constant": false, "inputs": [{"name": "_spender", "type": "address"}, {"name": "_value", "type": "uint256"}], "name": "approve", "outputs": [{"name": "success", "type": "bool"}], "payable": false, "stateMutability": "nonpayable", "type": "function"}, "… 21 more"]
    decimalbodye.g. 2
    imageurlbodye.g. test1
    corporationbodye.g. test2
    hqbodye.g. test3
    corporatefoundingdatebodye.g. test4
    founderbodye.g. test5
    websitebodye.g. test6
    firstissuedatebodye.g. test7
    marketcapitalisationbodye.g. test8
    listedexchangesbodye.g. test9
    blockcreationcyclebodye.g. test11
    miningcompensationamountbodye.g. test22
    totalsupplybodye.g. test33
    agreementprotocolbodye.g. test44
    whitepaperurlbodye.g. test55
    typebodycontract typee.g. ERC20
    displaybodye.g. true
    Content-Typeheadere.g. application/x-www-form-urlencoded
    siteheadere.g. Exchange
    Response · 200
    "8dabb3f8…"
  • POST/contractsUpdate ContractAdmin
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    namebodye.g. new contract
    symbolbodye.g. XYZ
    contractbodyERC20 contract addresse.g. ABC12345
    abiArraybodyabi array of the ERC20 contracte.g. [{"constant": true, "inputs": [], "name": "name", "outputs": [{"name": "", "type": "string"}], "payable": false, "stateMutability": "view", "type": "function"}, {"constant": false, "inputs": [{"name": "_spender", "type": "address"}, {"name": "_value", "type": "uint256"}], "name": "approve", "outputs": [{"name": "success", "type": "bool"}], "payable": false, "stateMutability": "nonpayable", "type": "function"}, "… 21 more"]
    decimalbodye.g. 2
    typebodycontract typee.g. ERC20
    displaybodye.g. true
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • GET/contracts/:keyGet Contract DetailsAdmin
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    keypath
    Response · 200
    {
      "contract": {
        "key": "94336b22…",
        "name": "ABCoin",
        "symbol": "ABC",
        "contract": "address1234567",
        "abiArray": "[{\"constant\": true, \"inputs\": [], \"name\": \"name\", \"outputs\": [{\"name\": \"\", \"type\": \"string\"}], \"…",
        "type": "ERC20",
        "site": "BANK",
        "display": true,
        "created": "2018-07-28T03:12:24.557Z",
        "modified": "2018-07-28T03:12:24.557Z"
      }
    }
  • POST/accounts/masterCreate Master AccountAdmin
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    symbolbodye.g. SUNC
    public_keybodye.g. {{address}}
    private_keybodye.g. <redacted>
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response

    No example in the reference.

  • POST/tokensCreate Prime Token
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    namebodye.g. AUSD Coin
    symbolbodye.g. AUSD
    totalbodye.g. 1000000
    fixedbodye.g. true
    Response

    No example in the reference.

  • GET/tokensGet All Prime Tokens
    Bearer tokenform · urlencoded
    Request

    No parameters.

    Response

    No example in the reference.

  • GET/tokens/prime/symbolsGet Active Prime Tokens
    Bearer tokenform · urlencoded
    Request

    No parameters.

    Response

    No example in the reference.

  • GET/tokens/prime/symbolsGet Active Prime Tokens Copy
    Bearer tokenform · urlencoded
    Request

    No parameters.

    Response

    No example in the reference.

  • GET/tokens/:symbolGet Prime Token Detail
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    symbolpath
    Response

    No example in the reference.

  • PUT/tokens/:symbolUpdate Prime Token
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    symbolpath
    fixedbodye.g. true
    Response

    No example in the reference.

Helper
  • GET/versionGet Latest Version

    To determine if the APP version is the latest

    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response

    No example in the reference.

  • POST/signature/generateGenerate Signature

    Helper API which returns a Signature given the right parameters - public, does not store data.

    Bearer tokenform · urlencoded
    Request
    NameInDetails
    senderbodye.g. 022486f0…
    privatekeybodye.g. <redacted>
    recipientbodye.g. 02be8da5…
    symbolbodye.g. ABC
    amountbodye.g. 2
    noncebodye.g. 2
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "signature": "<signature>"
    }
  • GET/statisticsGet Site Statistics
    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response

    No example in the reference.

  • GET/site/helpdeskssourlGenerate Freshdesk SSO URL
    Bearer tokenmultipart/form-data
    Request

    No parameters.

    Response

    No example in the reference.

19 — 4 endpointsDemoSandbox trades, orders and deposits.
  • POST/demo/tradeCreate Trade
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    typebodye.g. BUY
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "order": "917ce600…"
    }
  • GET/demo/order/:order_idGet Order Details
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    order_idpath
    Response · 200
    {
      "order": {
        "key": "917ce600…",
        "type": "BUY",
        "status": "OPEN",
        "symbol": "BKN",
        "amount": 12,
        "funds_locked": 36,
        "trade_symbol": "BKNUSD",
        "unit_price": 3,
        "account": "f4fdf13c…",
        "trade_account": "b12f5fad…",
        "site": "Bank",
        "actual_price_closed": 0,
        "actual_amount_closed": 0,
        "root_order_key": "",
        "created": "2018-07-23T16:24:45.396Z",
        "modified": "2018-07-23T16:24:45.396Z",
        "fee": 0,
        "market_price": false
      }
    }
  • POST/demo/users/depositstripeDeposit using Stripe
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    amountbodye.g. 10
    tokenbodye.g. <token>
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "result": "success"
    }
  • DELETE/demo/order/:order_idCancel Order
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    order_idpath
    Content-Typeheadere.g. application/x-www-form-urlencoded
    Response · 200
    {
      "result": "success"
    }
20 — 7 endpointsDev CenterDeveloper accounts, API keys and plans.
  • GET/developersList Developers
    Bearer token
    Request

    No parameters.

    Response

    No example in the reference.

  • GET/developers/:user_keyGet Developer Details
    Bearer token
    Request
    NameInDetails
    user_keypath
    Response

    No example in the reference.

  • GET/developers/plansList Plans
    Bearer token
    Request

    No parameters.

    Response

    No example in the reference.

  • GET/developers/:user_key/:api_keyGet Details for an API Key
    Bearer token
    Request
    NameInDetails
    user_keypath
    api_keypath
    Response

    No example in the reference.

  • DELETE/developers/:user_key/:api_keyRemove API Key
    Bearer token
    Request
    NameInDetails
    user_keypath
    api_keypath
    Response

    No example in the reference.

  • POST/developers/:user_keyCreate API for developer
    Bearer token
    Request
    NameInDetails
    user_keypath
    Response

    No example in the reference.

  • PUT/developers/:user_key/:api_keyChange developer API Key Plan
    Bearer tokenform · urlencoded
    Request
    NameInDetails
    user_keypath
    api_keypath
    usage_plan_idbodye.g. g8xg0j
    Response

    No example in the reference.

21 — 2 endpointsNFTMint and transfer NFTs.
  • POST/nftMint
    Bearer tokenmultipart/form-data
    Request
    NameInDetails
    namebodye.g. Pepperoni
    descriptionbodye.g. Classic pepperoni
    imagebodyfile
    recipientbodye.g. 0x52006E63…
    modebodye.g. ERC721
    amountbodye.g. 10
    Response

    No example in the reference.

  • POST/nft/transferTransfer
    Bearer token
    Request
    NameInDetails
    senderquerye.g. 0x52006E63…
    recipientquerye.g. 0xfbe44248…
    nftidquerye.g. 1651286169
    modequerye.g. ERC721
    amountquerye.g. 5
    Response

    No example in the reference.

Request bodies, parameters and example responses for every endpoint: docs.pellar.io

build on
pellar.

Request API access, or talk to us about a build.

Get in touch