Skip to content

Instantly share code, notes, and snippets.

@thomasdavis
Last active June 24, 2019 12:42
Show Gist options
  • Save thomasdavis/72b4237dfb96eff0389c47704a9b37d9 to your computer and use it in GitHub Desktop.
Save thomasdavis/72b4237dfb96eff0389c47704a9b37d9 to your computer and use it in GitHub Desktop.
openapi: '3.0.0'
info:
version: 1.0.0
title: BlockBid API Gateway
license:
name: MIT
servers:
- url: https://api.blockbid.io
paths:
/healthz:
x-tags: platform
get:
description: Gets the health of the server
responses:
'200':
description: Server up time in seconds
content:
application/json:
schema:
$ref: '#/components/schemas/Healthz'
/admin/auth:
x-tags: admin
get:
description: Gets the login status of admin user.
responses:
'200':
description: Object containing the login status of the admin user.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminAuthStatusRes'
post:
description: Logs the admin user in and creates a session.
requestBody:
description: Login credentials of the admin user
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AdminAuth'
responses:
'200':
description: Object containing the login status of the admin user.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminAuthLoginStatusRes'
/admin/markets:
x-tags: admin
get:
description: Get all the markets
parameters:
- name: id
in: query
description: Set the result id.
required: false
schema:
type: integer
example: 10
- name: limit
in: query
description: Set the result limit.
required: false
schema:
type: integer
example: 10
- name: page
in: query
description: Set the page result.
required: false
schema:
type: integer
example: 10
responses:
'200':
description: Getting lists of markets
content:
application/json:
schema:
$ref: '#/components/schemas/AdminUserMarketArrRes'
/admin/markets/{marketID}:
x-tags: admin
get:
description: Get the market
responses:
'200':
description: Object represents a Market
content:
application/json:
schema:
$ref: '#/components/schemas/AdminMarketObjRes'
view_accounts_failed:
description: An error retrieving accounts at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewAccountsFailed'
put:
description: Update the market
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
askFee:
type: string
example: '0.0'
description: The ask fee.
bidFee:
type: string
example: '0.0'
description: The bid fee
responses:
'200':
description: Object represents a Market
content:
application/json:
schema:
$ref: '#/components/schemas/AdminMarketObjRes'
view_accounts_failed:
description: An error retrieving accounts at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewAccountsFailed'
/admin/deposits:
x-tags: admin
get:
description: Get all deposits for all user
parameters:
- name: currency
in: query
description: Currency you wish to search deposits for.
required: false
schema:
type: string
example: btc
- name: limit
in: query
description: Set the result limit.
required: false
schema:
type: integer
example: 10
- name: state
in: query
description: Filter orders by state
required: false
schema:
type: string
example: accepted
- name: page
in: query
description: Filter orders by page number
required: false
schema:
type: integer
example: 1
responses:
'200':
description: Array containing the requested deposits.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminDepositsArrRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_deposits_failed:
description: An error retrieving deposits at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewDepositsFailed'
post:
description: Create new deposit
requestBody:
description: Body Params for creating new deposit by admin
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AdminCreateDepositSchema'
responses:
'200':
description: Object containing the created deposit.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminDepositsObjRes'
create_deposit_failed:
description: An error creating deposit at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/CreateDepositFailed'
put:
description: update deposit state
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
depositID:
type: string
example: 'TID34A4A0CD45'
description: The deposit id.
state:
type: string
example: 'accepted'
description: The user id of the member.
responses:
'200':
description: Object containing the updated deposit.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminDepositsObjRes'
update_deposit_failed:
description: An error updating deposit at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/UpdateDepositFailed'
/admin/deposits/{transactionID}:
x-tags: admin
get:
description: Get specific deposit by transaction id
parameters:
- name: transactionID
in: path
description: transaction ID of the deposit
required: true
schema:
type: string
example: 'TID22B1EC7B86'
responses:
'200':
description: Object containing the requested deposits.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminDepositsObjRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_deposits_failed:
description: An error retrieving deposit at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewDepositsFailed'
/admin/withdraws:
x-tags: admin
get:
description: Get all withdraws for all users
parameters:
- name: currency
in: query
description: Currency you wish to search deposits for.
required: false
schema:
type: string
example: btc
- name: limit
in: query
description: Set the result limit.
required: false
schema:
type: integer
example: 10
- name: state
in: query
description: Filter orders by state
required: false
schema:
type: string
example: accepted
- name: page
in: query
description: Filter orders by page number
required: false
schema:
type: integer
example: 1
responses:
'200':
description: Array containing the requested deposits.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminWithdrawsArrRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_withdraw_failed:
description: An error retrieving deposits at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewWithdrawFailed'
post:
description: Create new fiat withdraw
requestBody:
description: Body Params for creating new withdraw by admin
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AdminCreateWithdrawFiatSchema'
responses:
'200':
description: Object containing the created withdraw.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminWithdrawsObjRes'
create_withdraw_failed:
description: An error creating withdraw at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/CreateWithdrawFailed'
put:
description: update withdraw state
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
withdrawID:
type: string
example: 'TIDCEA1EFF498'
description: The withdraw id.
state:
type: string
example: 'accepted'
description: The state of withdraw need to set.
responses:
'200':
description: Object containing the updated deposit.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminWithdrawsObjRes'
update_withdraw_failed:
description: An error updating withdraw at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/UpdateWithdrawFailed'
/admin/withdraws/{transactionID}:
x-tags: admin
get:
description: Get specific withdraw by transaction id
parameters:
- name: transactionID
in: path
description: transaction ID of the deposit
required: true
schema:
type: string
example: 'TID22B1EC7B86'
responses:
'200':
description: Object containing the requested deposits.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminWithdrawsObjRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_deposits_failed:
description: An error retrieving withdraw at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewWithdrawFailed'
/admin/withdraws/crypto:
x-tags: admin
post:
description: Create new crypto withdraw
requestBody:
description: Body Params for creating new withdraw by admin
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AdminCreateWithdrawCryptoSchema'
responses:
'200':
description: Object containing the created withdraw.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminWithdrawsObjRes'
create_withdraw_failed:
description: An error creating withdraw at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/CreateWithdrawFailed'
/admin/accounts:
x-tags: admin
get:
description: Get all accounts for all users
parameters:
- name: limit
in: query
description: Set the result limit.
required: false
schema:
type: integer
example: 10
- name: page
in: query
description: Filter orders by page number
required: false
schema:
type: integer
example: 1
responses:
'200':
description: Array containing the requested deposits.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminAccountsArrRes'
view_accounts_failed:
description: An error retrieving accounts at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewAccountsFailed'
post:
description: create new admin account
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AdminNewAccount'
responses:
'200':
description: Object containing the result.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminAccountsObjRes'
create_account_failed:
description: An error creating account at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/CreateAccountFailed'
put:
description: update admin email address only
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AdminUpdateAccount'
responses:
'200':
description: Object containing the result.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminAccountsObjRes'
update_account_failed:
description: An error updating account at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/UpdateAccountFailed'
delete:
description: delete admin user
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AdminDeleteAccount'
responses:
'200':
description: Object containing the result.
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: 'success'
delete_account_failed:
description: An error occured during deleteing account at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/DeleteAccountFailed'
/admin/accounts/{userID}:
x-tags: admin
get:
description: Get specific account of the user
parameters:
- name: userID
in: path
description: Set the user id.
required: true
schema:
type: string
example: 'IDBA46F631C1'
responses:
'200':
description: Object containing the requested user.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminAccountsObjRes'
view_accounts_failed:
description: An error retrieving accounts at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewAccountsFailed'
post:
description: Update account of the user
parameters:
- name: userID
in: path
description: Set the user id
required: true
schema:
type: string
example: 'IDBA46F631C1'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UserProfileRes'
responses:
'200':
description: Object containing the requested user.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminAccountsObjRes'
view_accounts_failed:
description: An error retrieving accounts at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewAccountsFailed'
/admin/accounts/{userID}/disable_2fa:
x-tags: admin
post:
description: Get specific account of the user
parameters:
- name: userID
in: path
description: Set the user id
required: true
schema:
type: string
example: 'IDBA46F631C1'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
role:
type: string
example: 'support'
description: The role, admin, support, accountant
responses:
'200':
description: Object containing the requested user.
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: '2FA is desabled'
description: "2FA has been disabled"
/admin/accounts/{userID}/deposits:
x-tags: admin
get:
description: Get specific account deposits of the user
parameters:
- name: userID
in: path
description: Set the user id.
required: true
schema:
type: string
example: 'IDBA46F631C1'
- name: currency
in: query
description: Currency you wish to search deposits for.
required: false
schema:
type: string
example: btc
- name: limit
in: query
description: Set the result limit.
required: false
schema:
type: integer
example: 10
- name: state
in: query
description: Filter orders by state
required: false
schema:
type: string
example: accepted
- name: page
in: query
description: Filter orders by page number
required: false
schema:
type: integer
example: 1
responses:
'200':
description: Array containing the requested deposits.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminDepositsArrRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_deposits_failed:
description: An error retrieving deposits at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewDepositsFailed'
/admin/accounts/{userID}/withdraws:
x-tags: admin
get:
description: Get specific account withdraws of the user
parameters:
- name: userID
in: path
description: Set the user id.
required: true
schema:
type: string
example: 'IDBA46F631C1'
- name: currency
in: query
description: Currency you wish to search deposits for.
required: false
schema:
type: string
example: btc
- name: limit
in: query
description: Set the result limit.
required: false
schema:
type: integer
example: 10
- name: state
in: query
description: Filter orders by state
required: false
schema:
type: string
example: accepted
- name: page
in: query
description: Filter orders by page number
required: false
schema:
type: integer
example: 1
responses:
'200':
description: Array containing the requested deposits.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminWithdrawsArrRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_deposits_failed:
description: An error retrieving deposits at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewWithdrawFailed'
/admin/accounts/role:
x-tags: admin
put:
description: update account role
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AdminUpdateAccountScope'
responses:
'200':
description: Object containing the requested user.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminAccountsObjRes'
update_account_failed:
description: An error updating accounts at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewAccountsFailed'
/admin/accounts/phone:
x-tags: admin
post:
description: add new phone in user account
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AdminAddPhoneInAccount'
responses:
'200':
description: Object containing the result.
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: 'success'
expired_token:
description: Invalid bearer token
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ExpiredToken'
phone_number_invalid:
description: Phone number is invalid
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/PhoneNumberInvalid'
phone_number_already_exists:
description: Phone number already exists
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/PhoneNumberAlreadyExists'
phone_number_empty_params:
description: empty params in phone number
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/PhoneNumberEmptyParams'
invalid_phone_record:
description: Invalid phone record
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/InvalidPhoneRecord'
/admin/accounts/{userID}/phone:
x-tags: admin
get:
description: get user phone number list from user account
parameters:
- name: userID
in: path
description: Set the user id.
required: true
schema:
type: string
example: 'IDBA46F631C1'
responses:
'200':
description: Array containing the requested phone numbers of user.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminUserPhoneArrRes'
/admin/members:
x-tags: admin
get:
description: Get all peatio members
parameters:
- name: limit
in: query
description: Set the result limit.
required: false
schema:
type: integer
example: 10
- name: page
in: query
description: Filter orders by page number
required: false
schema:
type: integer
example: 1
responses:
'200':
description: Array containing the requested deposits.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminMembersArrRes'
view_members_failed:
description: An error retrieving members at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewMembersFailed'
/admin/members/{userID}:
x-tags: admin
get:
description: Get specif peatio member by user id
parameters:
- name: userID
in: path
description: Set the user id.
required: true
responses:
'200':
description: Object containing the requested deposits.
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/AdminMembersObjRes'
- $ref: '#/components/schemas/AdminMembersAccountRes'
view_members_failed:
description: An error retrieving members at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewMembersFailed'
/admin/members/toggleDisabled:
x-tags: admin
put:
description: Member suspend
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
userID:
type: string
example: 'ID25F4AE2C36'
description: The user id of the member.
responses:
'200':
description: Object containing the susccess response.
suspend_member_failed:
description: An error suspending member at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/SuspendMemberFailed'
/admin/members/unsuspend:
x-tags: admin
put:
description: Member un suspend
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
userID:
type: string
example: 'ID25F4AE2C36'
description: The user id of the member.
responses:
'200':
description: Object containing the success response.
unsuspend_member_failed:
description: An error unsuspending member at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/UnSuspendMemberFailed'
/admin/orders/{market}:
x-tags: admin
get:
description: Get all order
parameters:
- name: market
in: path
description: Set the market
required: false
schema:
type: string
example: 'btcusd'
- name: state
in: query
description: Set the results by state i.e. wait (active orders).
required: false
schema:
type: string
example: 'wait'
- name: userID
in: query
description: Filter orders by user id
required: false
schema:
type: string
example: 'IDD9645248D2'
- name: ordType
in: query
description: Set the result order type limit or market.
required: false
schema:
type: string
example: 'limit'
- name: sortBy
in: query
description: 'If set, returned orders will be sorted by this attribute'
required: false
schema:
type: string
- name: orderBy
in: query
description: If set, returned orders will be sorted in specific order, default to 'asc'.
required: false
schema:
type: string
example: 'asc'
- name: page
in: query
description: Filter orders by page number, default 1
required: false
schema:
type: integer
example: 1
- name: limit
in: query
description: Filter orders by page limit, default 100
required: false
schema:
type: integer
example: 100
responses:
'200':
description: Array containing the requested orders.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminOrdersArrRes'
view_orders_failed:
description: An error retrieving orders at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewOrdersFailed'
/admin/trades/{market}:
x-tags: admin
get:
description: Get all trades
parameters:
- name: market
in: path
description: Set the market type.
required: false
schema:
type: string
example: 'btcusd'
- name: userID
in: query
description: Filter orders by user id
required: false
schema:
type: string
example: 'IDD9645248D2'
- name: sortBy
in: query
description: 'If set, returned trades will be sorted by this attribute'
required: false
schema:
type: string
- name: orderBy
in: query
description: If set, returned trades will be sorted in specific order, default to 'asc'.
required: false
schema:
type: string
example: 'asc'
- name: page
in: query
description: Filter trades by page number, default 1
required: false
schema:
type: integer
example: 1
- name: limit
in: query
description: Filter trades by page limit, default 100
required: false
schema:
type: integer
example: 100
responses:
'200':
description: Array containing the requested trades.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminTradesArrRes'
view_trades_failed:
description: An error retrieving trades at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewTradesFailed'
/admin/solvency:
x-tags: admin
get:
description: Get solvency
responses:
'200':
/admin/wallets:
x-tags: admin
get:
description: Get wallets
parameters:
- name: currency
in: query
description: Currency you wish to search wallets for.
required: false
schema:
type: string
example: btc
- name: limit
in: query
description: Set the result limit.
required: false
schema:
type: integer
example: 10
- name: page
in: query
description: Filter orders by page number
required: false
schema:
type: integer
example: 1
- name: sortBy
in: query
description: 'If set, returned wallets will be sorted by this attribute'
required: false
schema:
type: string
- name: orderBy
in: query
description: 'If set, returned wallets will be sorted in specific order, default to asc'
required: false
schema:
type: string
example: 'asc'
responses:
'200':
description: Array containing the requested wallets.
content:
application/json:
schema:
$ref: '#/components/schemas/AdminWalletsArrRes'
view_wallets_failed:
description: An error retrieving wallets at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewWalletsFailed'
/admin/mfa/totp:
x-tags: admin
get:
description: Generates a qr code
responses:
'200':
description: QR Code that has been generated.
content:
application/json:
schema:
$ref: '#/components/schemas/QrCodeRes'
post:
description: Enables mfa on account.
requestBody:
description: mfa 6 digit code as given by authenticator app
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/mfa'
responses:
'200':
description: Status of submission
/admin/tickers:
x-tags: admin
get:
description: Gets a list of tickers for all markets
responses:
'200':
description: Market Tickers
content:
application/json:
schema:
$ref: '#/components/schemas/TickersArrRes'
tickers_unavailable:
description: An error retrieving the market tickers.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/TickersUnavailable'
/admin/bankDetails:
x-tags: admin
get:
description: View all users bank details
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/ArrayBankDetails'
/admin/bankDetails/{uid}:
x-tags: admin
get:
description: View user bank details
parameters:
- name: userID
in: path
description: Users Id.
required: true
schema:
type: string
example: userId
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/ArrayBankDetails'
/admin/kyc/restart:
x-tags: admin
post:
description: POST a KYC request
requestBody:
description: kyc request data
required: true
content:
application/json:
schema:
type: object
properties:
userID:
type: string
example: 'ID1271AF90EB'
description: User id
countryCode:
type: string
example: 'AU'
description: 'User country 2 digit code'
phoneNumber:
type: string
example: '"61418317392'
description: User phone number
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/KYC'
/admin/kyc/manualApproval:
x-tags: admin
post:
description: POST a KYC request to update user kyc manually
requestBody:
description: kyc request data
required: true
content:
application/json:
schema:
type: object
properties:
userID:
type: string
example: 'ID1271AF90EB'
description: User id
responses:
'200':
description: Succesfully added label document, email, phone as verified
/admin/kyc/status/{userID}:
x-tags: admin
get:
description: Get the status of a KYC request
parameters:
- name: userID
in: path
description: Users Id.
required: true
schema:
type: string
example: 'ID1271AF90EB'
responses:
'200':
description: Status of a kyc request
content:
application/json:
schema:
type: object
properties:
kycStatus:
type: string
example: 'In progress'
description: Status of KYC
/kyc/status:
x-tags: platform
get:
description: Get the status of a KYC request
responses:
'200':
description: Status of a kyc request
content:
application/json:
schema:
type: object
properties:
kycStatus:
type: string
example: 'In progress'
description: Status of KYC
/kyc:
x-tags: platform
post:
description: POST a KYC request
requestBody:
description: kyc request data
required: true
content:
application/json:
schema:
type: object
properties:
country:
type: string
example: 'AU'
description: User country Code
phoneNumber:
type: string
example: '0123456789'
description: User phone number
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/KYC'
/api_keys:
x-tags: docs
get:
description: Get a list of API keys
responses:
'200':
description: A list of API keys
content:
application/json:
schema:
$ref: '#/components/schemas/APIKeys'
post:
description: Get api key for account
requestBody:
description: otpCode and scope of keys
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKeyGen'
responses:
'200':
description: Status of submission
content:
application/json:
schema:
type: object
properties:
key:
type: string
example: '010f5898-c88d-4b5c-bb34-192e6f718d94'
description: User Api auth key
secret:
type: string
example: '6SbyMVroHzkBd3cYWx1PJFS3f3zGUey5i7UF6vwucJxRRMHqtMMHZe+D/6lYNHRsnVL82j+PItj/lV8h/a8YWA=='
description: HMAC secret.
delete:
description: Revoke API Key
requestBody:
description: Just send the apikey as id
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKeyDelete'
responses:
'200':
description: Status of submission
/markets:
x-tags: docs
get:
description: List all markets
operationId: listMarkets
responses:
'200':
description: A paged array of markets
headers:
x-next:
description: A link to the next page of responses
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/Markets'
markets_unavailable:
description: An error retrieving markets.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/MarketsUnavailable'
/markets/{id}:
x-tags: docs
get:
description: List single market
parameters:
- name: id
in: path
description: Market ID
required: true
schema:
type: string
example: btcaud
responses:
'200':
description: A paged array of markets
headers:
x-next:
description: A link to the next page of responses
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/Markets'
markets_unavailable:
description: An error retrieving markets.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/MarketsUnavailable'
/addresses:
x-tags: docs
get:
description: Get addresses of an account
parameters:
- name: currency
in: query
description: Currency you wish to get the address for.
required: true
schema:
type: string
example: btc
responses:
'200':
description: An object containing the requested currency and its corresponding address.
content:
application/json:
schema:
$ref: '#/components/schemas/Addresses'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
currency_invalid:
description: Invalid currency error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/CurrencyInvalid'
view_address_failed:
description: Error getting addresses.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewAddressFailed'
/auth:
x-tags: platform
get:
description: Gets the login status of user.
responses:
'200':
description: The user is successfully logged in
content:
application/json:
schema:
$ref: '#/components/schemas/AuthStatusRes'
post:
description: Logs the user in and creates a session.
requestBody:
description: Login credentials of the user
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Auth'
responses:
'200':
description: The user is successfully logged out
delete:
description: Clears user session, logging them out
responses:
'200':
description: Object containing the login status of the user.
content:
application/json:
schema:
$ref: '#/components/schemas/AuthStatusRes'
/deposits/fiat:
x-tags: docs
get:
description: Get all fiat deposits for a user
parameters:
- name: currency
in: query
description: Currency you wish to search deposits for.
required: false
schema:
type: string
example: btc
- name: limit
in: query
description: Set the result limit.
required: false
schema:
type: integer
example: 10
- name: state
in: query
description: Filter orders by state
required: false
schema:
type: string
example: accepted
responses:
'200':
description: Array containing the requested deposits.
content:
application/json:
schema:
$ref: '#/components/schemas/FiatDeposits'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_deposits_failed:
description: An error retrieving deposits at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewDepositsFailed'
/deposits/crypto:
x-tags: docs
get:
description: Get all crypto deposits for a user
parameters:
- name: currency
in: query
description: Currency you wish to search deposits for.
required: true
schema:
type: string
example: btc
- name: limit
in: query
description: Set the result limit.
required: false
schema:
type: integer
example: 10
- name: state
in: query
description: Filter orders by state
required: false
schema:
type: string
example: accepted
responses:
'200':
description: Array containing the requested deposits.
content:
application/json:
schema:
$ref: '#/components/schemas/CryptoDeposits'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_deposits_failed:
description: An error retrieving deposits at this time.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewDepositsFailed'
/documents:
x-tags: platform
get:
description: View the submitted KYC documents for account
responses:
'200':
description: An array containing all the documents uploaded
content:
application/json:
schema:
$ref: '#/components/schemas/DocumentsArrRes'
post:
description: Upload a new KYC document
requestBody:
description: new document to be uploaded to account
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/Document'
responses:
'200':
description: Status of submission
/mfa/totp:
x-tags: platform
get:
description: Generates a qr code
responses:
'200':
description: QR Code that has been generated.
content:
application/json:
schema:
$ref: '#/components/schemas/QrCodeRes'
post:
description: Enables mfa on account.
requestBody:
description: mfa 6 digit code as given by authenticator app
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/mfa'
responses:
'200':
description: Status of submission
put:
description: Verify mfa on account.
requestBody:
description: mfa 6 digit code as given by authenticator app
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/mfa'
responses:
'200':
description: Status of submission
/user:
x-tags: platform
get:
description: View created profile for account
responses:
'200':
description: An object containing the users profile information.
content:
application/json:
schema:
$ref: '#/components/schemas/UserProfileRes'
post:
description: Creates a new user account
requestBody:
description: User Signup details
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/NewUser'
responses:
'200':
description: Status of submission
put:
description: Submits User Profile, Can only be submitted once
requestBody:
description: User Profile
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UserProfile'
responses:
'200':
description: Status of submission
/user/change_password:
x-tags: platform
put:
description: Change password of the user
requestBody:
description: old and new password
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UserPasswordChange'
responses:
'200':
description: Status of submission
/user/reset_password:
x-tags: platform
get:
description: Sends the user password reset instructions
parameters:
- name: reset_password_token
in: query
description: A UID generated to change the users password
required: false
schema:
type: string
example: xxxxxx
responses:
'200':
description: Succesfully redirects to password reset form
put:
description: Sets a new password for user
requestBody:
description: New email and reset password token
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SetPassword'
responses:
'200':
description: Status of submission
/user/reset_password_request:
x-tags: platform
post:
description: Sends the user password reset instructions
requestBody:
description: Email to send reset link to
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ResetPassword'
responses:
'200':
description: Status of submission
/user/confirm_email:
x-tags: platform
get:
description: Confirms a users email
parameters:
- name: confirmation_token
in: query
description: A UID generated to validate the users email
required: false
schema:
type: string
example: xxxxxx
responses:
'200':
description: Status of submission
/user/submit_phone:
x-tags: platform
post:
description: Submits a phone number to be verified against
requestBody:
description: Phone number to be linked to account
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SubmitPhone'
responses:
'200':
description: Status of submission
/user/confirm_phone:
x-tags: platform
post:
description: Confirms a users phone
requestBody:
description: Phone number to be linked to account
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ConfirmPhone'
responses:
'200':
description: Status of submission
/user/send_unlock_instructions:
x-tags: platform
post:
description: Sends the user unlock instructions
requestBody:
description: Email to send unlock instructions to
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ResetPassword'
responses:
'200':
description: Status of submission
/user/unlock:
x-tags: platform
get:
description: Unlock your account
parameters:
- name: unlock_token
in: query
description: Token supplied to unlock your account
required: false
schema:
type: string
example: jBReYfJxeAUKqEY4AJJZ
responses:
'200':
description: Status of submission
/trade_volume:
x-tags: docs
get:
description: Gets a list of tickers for all markets
parameters:
- name: quoteCurrency
in: query
description: Quote currency you would like to receive volume changes for
required: false
schema:
type: string
example: btc
responses:
'200':
description: Market Tickers
content:
application/json:
schema:
$ref: '#/components/schemas/TradeVolumes'
/user/bank_details:
x-tags: platform
get:
description: View user bank details
parameters:
- name: uid
in: query
description: Users Id.
required: false
schema:
type: string
example: userId
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/ArrayBankDetails'
post:
description: Create user bank details entry
requestBody:
description: bank details
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/BankDetails'
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/BankDetailsSuccess'
put:
description: Update user bank details entry
requestBody:
description: something#TODO
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/BankDetails'
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/BankDetailsSuccess'
delete:
description: Create user bank details entry
parameters:
- name: id
in: query
description: Id of the bankAccount
required: false
schema:
type: string
example: c5f205f0-c0b0-11e8-a84f-75738bc862d8
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/BankDetailsSuccess'
/ref_data/currencies:
x-tags: platform
get:
description: View list of currencies from refData-service
parameters:
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/RefDataCurrencies'
/ref_data/countries:
x-tags: platform
get:
description: View list of countries from refData-service
parameters:
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/RefDataCountries'
/ref_data/bank_code_types:
x-tags: platform
get:
description: View list of bank code types from refData-service
parameters:
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/RefDataBankCodeTypes'
/ref_data/deposit_accounts:
x-tags: platform
get:
description: View list of deposit accounts from refData-service
parameters:
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/RefDataDepositAccounts'
/ref_data/deposit_accounts/details:
x-tags: platform
get:
description: View list of deposit accounts from refData-service along with currency and country details
parameters:
responses:
'200':
description: Status of submission
content:
application/json:
schema:
$ref: '#/components/schemas/RefDataDepositAccounts'
/tickers:
x-tags: docs
get:
description: Gets a list of tickers for all markets
responses:
'200':
description: Market Tickers
content:
application/json:
schema:
$ref: '#/components/schemas/TickersArrRes'
tickers_unavailable:
description: An error retrieving the market tickers.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/TickersUnavailable'
/tickers/{id}:
x-tags: docs
parameters:
- name: id
in: path
description: Ticker Id.
required: true
schema:
type: string
example: btcaud
get:
description: Gets a list of tickers for all markets
responses:
'200':
description: Market Tickers
content:
application/json:
schema:
$ref: '#/components/schemas/TickersArrRes'
tickers_unavailable:
description: An error retrieving the market tickers.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/TickersUnavailable'
/withdraws/crypto:
x-tags: docs
get:
description: Gets a list of all withdraws for the user
parameters:
- name: currency
in: query
description: Currency you wish to search your withdraws for.
required: false
schema:
type: string
example: btc
- name: page
in: query
description: Page number (defaults to 1).
required: false
schema:
type: integer
example: 1
- name: limit
in: query
description: Number of withdraws per page (defaults to 100, maximum is 1000).
required: false
schema:
type: integer
example: 10
responses:
'200':
description: An array containing the users withdraws.
content:
application/json:
schema:
$ref: '#/components/schemas/CryptoWithdraws'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_withdraw_failed:
description: An error retrieving the withdraw history of the user.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewWithdrawFailed'
post:
description: Creates a new withdraw on the server
requestBody:
description: Creates a new withdraw on the server
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateCryptoWithdraw'
responses:
'200':
description: An object containing the users submitted withdraw.
content:
application/json:
schema:
$ref: '#/components/schemas/CryptoWithdraw'
/withdraws/fiat:
x-tags: docs
get:
description: Gets a list of all withdraws for the user
parameters:
- name: currency
in: query
description: Currency you wish to search your withdraws for.
required: true
schema:
type: string
example: btc
- name: page
in: query
description: Page number (defaults to 1).
required: false
schema:
type: integer
example: 1
- name: limit
in: query
description: Number of withdraws per page (defaults to 100, maximum is 1000).
required: false
schema:
type: integer
example: 10
responses:
'200':
description: An array containing the users withdraws.
content:
application/json:
schema:
$ref: '#/components/schemas/FiatWithdraws'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_withdraw_failed:
description: An error retrieving the withdraw history of the user.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewWithdrawFailed'
post:
description: Creates a new withdraw on the server
requestBody:
description: Creates a new withdraw on the server
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateFiatWithdraw'
responses:
'200':
description: An object containing the users submitted withdraw.
content:
application/json:
schema:
$ref: '#/components/schemas/WithdrawSubmitObjRes'
/graphql/dev:
x-tags: platform
get:
description: Access to Graphiql while in development
/graphql/service:
x-tags: platform
post:
description: The API endpoint for the GraphQL enabled servers
/balances:
x-tags: docs
get:
description: Get's a list of users balances.
responses:
'200':
description: An array containing the users balances.
content:
application/json:
schema:
$ref: '#/components/schemas/Balances'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
view_balances_failed:
description: An error retrieving the users balances.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewBalanceFailed'
/balances/{currency}:
x-tags: docs
get:
description: Get the details of a users single balance.
parameters:
- name: currency
in: path
description: Currency you wish to view an account for.
required: true
schema:
type: string
example: btc
responses:
'200':
description: An object containing the selected balance information.
content:
application/json:
schema:
$ref: '#/components/schemas/Balance'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
currency_invalid:
description: An error retrieving the requested account.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/CurrencyInvalid'
view_balances_failed:
description: An error retrieving the users accounts.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewBalanceFailed'
/ohlc:
x-tags: docs
get:
description: view the bucketed trade history.
parameters:
- name: market
in: query
description: name of market
required: true
schema:
type: string
- name: limit
in: query
description: Limit the number of returned data points. Default to 30.
required: false
schema:
type: integer
- name: period
in: query
description: Interval between data points, default to 1 (minute). You can choose between 1, 5, 15, 30, 60, 120, 240, 360, 720, 1440, 4320, 10080.
required: false
schema:
type: integer
- name: timestamp
in: query
description: Timestamp integer. If set, only data periods after this time will be displayed.
required: false
schema:
type: integer
responses:
'200':
description: An object containing the selected account information.
content:
application/json:
schema:
$ref: '#/components/schemas/OHLC'
view_ohlc_failed:
description: An error retrieving the ohlc market data.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewOHLCFailed'
/orderbook:
x-tags: docs
get:
description: Gets the orderbook for the exchange
parameters:
- name: market
in: query
description: name of market
required: true
schema:
type: string
- name: asks_limit
in: query
description: Limit the number of returned asks. Default to 20.
required: false
schema:
type: integer
- name: bids_limit
in: query
description: Limit the number of returned bids. Default to 20.
required: false
schema:
type: integer
responses:
'200':
description: An object containing the orderbook for the specified market.
content:
application/json:
schema:
$ref: '#/components/schemas/OrderbookObjMainRes'
view_orderbook_failed:
description: An error retrieving the orderbook market data.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewOrderbookFailed'
/orders:
x-tags: docs
get:
description: Get's the list of all your orders
parameters:
- name: market
in: query
description: name of market
required: true
schema:
type: string
example: btcaud
- name: state
in: query
description: Filter orders by state
required: false
schema:
type: string
example: waiting
- name: limit
in: query
description: Limit number of orders returned
required: false
schema:
type: integer
example: 5
- name: page
in: query
description: specify the page of paginated results
required: false
schema:
type: integer
example: 1
- name: order_by
in: query
description: ascending or descending order, default is ascending
required: false
schema:
type: string
example: desc
responses:
'200':
description: Array containing the users orders.
content:
application/json:
schema:
$ref: '#/components/schemas/ArrayOrdersRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_order_failed:
description: An error retrieving the users orders.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewOrderFailed'
post:
description: Creates orders on the exchange
requestBody:
description: Data containing order information such as market, side, price etc..
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateOrder'
responses:
'200':
description: Array containing the users orders.
content:
application/json:
schema:
$ref: '#/components/schemas/ArrayOrdersRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
order_failed:
description: An error placing the users order(s).
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/OrderFailed'
delete:
description: cancel all open orders
requestBody:
description: choose a side to cancel (optional)
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/CancelAll'
responses:
'200':
description: Array containing the users cancelled orders.
content:
application/json:
schema:
$ref: '#/components/schemas/ArrayOrdersRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
cancellation_failed:
description: An error cancelling the users orders.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/CancelFailed'
/orders/{id}:
x-tags: docs
get:
description: get order based on specific order id
parameters:
- name: id
in: path
description: ID of order
required: true
schema:
type: integer
example: 12345
format: int64
responses:
'200':
description: Object containing the users selected order.
content:
application/json:
schema:
$ref: '#/components/schemas/ObjOrderRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_order_failed:
description: An error retrieving the users order.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewOrderFailed'
delete:
description: Cancel a specific order based on id
parameters:
- name: id
in: path
description: ID of order
required: true
schema:
type: integer
example: 12345
format: int64
responses:
'200':
description: Object Containing the users cancelled order.
content:
application/json:
schema:
$ref: '#/components/schemas/ObjOrderRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
cancellation_failed:
description: An error cancelling the users order.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/CancelFailed'
/trades:
x-tags: docs
get:
description: View the trade history of the exchange.
parameters:
- name: market
in: query
description: market to select
required: true
schema:
type: string
- name: limit
in: query
description: Limit the number of returned trades. Defaults to 50.
required: false
schema:
type: integer
- name: timestamp
in: query
description: An integer representing the seconds elapsed since Unix epoch. If set, only trades executed before the time will be returned.
required: false
schema:
type: integer
- name: from
in: query
description: tradeID. If this is set, then only trades after the trade ID will be returned.
required: false
schema:
type: integer
- name: to
in: query
description: tradeID. If this is set, then only trades before the trade ID will be returned.
required: false
schema:
type: integer
- name: order_by
in: query
description: If set, will sort trades in ascending or descending order, defaults to 'desc'.
required: false
schema:
type: string
responses:
'200':
description: Array containing the trade history of the selected market.
content:
application/json:
schema:
$ref: '#/components/schemas/TradesArrRes'
view_trades_failed:
description: An error retrieving the trade history.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewTradesFailed'
/currencies:
x-tags: docs
get:
description: Gets currency information
responses:
'200':
description: Currency
content:
application/json:
schema:
$ref: '#/components/schemas/CurrencyArray'
/currencies/{id}:
x-tags: docs
get:
description: Gets currency information
parameters:
- name: id
in: path
description: The currency id
required: true
schema:
type: string
example: btc
responses:
'200':
description: Currency
content:
application/json:
schema:
$ref: '#/components/schemas/CurrencyArray'
/trades/my:
x-tags: docs
get:
description: View your own trade history
parameters:
- name: market
in: query
description: market to select
required: true
schema:
type: string
- name: limit
in: query
description: Limit the number of returned trades. Defaults to 50.
required: false
schema:
type: integer
- name: timestamp
in: query
description: An integer representing the seconds elapsed since Unix epoch. If set, only trades executed before the time will be returned.
required: false
schema:
type: integer
- name: from
in: query
description: tradeID. If this is set, then only trades after the trade ID will be returned.
required: false
schema:
type: integer
- name: to
in: query
description: tradeID. If this is set, then only trades before the trade ID will be returned.
required: false
schema:
type: integer
- name: order_by
in: query
description: If set, will sort trades in ascending or descending order, defaults to 'desc'.
required: false
schema:
type: string
responses:
'200':
description: Array containing the trade history of the selected market.
content:
application/json:
schema:
$ref: '#/components/schemas/TradesMyArrRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
account_unverified:
description: An account verification error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/AccountUnverified'
view_trades_failed:
description: An error retrieving the trade history.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/ViewTradesFailed'
/identity:
x-tags: platform
get:
description: Get the user details for the currently logged in account.
responses:
'200':
description: Object Containing the users cancelled order.
content:
application/json:
schema:
$ref: '#/components/schemas/IdentityObjRes'
no_session_token:
description: An authentication error.
content:
application/json:
schema:
$ref: '#/components/schemas/Errors/NoSessionTokenError'
components:
schemas:
Auth:
required:
- email
- password
properties:
email:
type: string
password:
type: string
totpCode:
type: string
Document:
required:
- upload
- doc_type
- doc_number
- doc_expire
properties:
upload:
type: file
doc_type:
type: string
doc_number:
type: string
doc_expire:
type: date
mfa:
required:
- code
properties:
code:
type: string
NewUser:
required:
- email
- password
- accept_terms
properties:
email:
type: string
password:
type: string
accept_terms:
type: boolean
UserProfile:
required:
- first_name
- last_name
- dob
- address
- postcode
- city
- country
properties:
first_name:
type: string
last_name:
type: string
dob:
type: date
address:
type: string
postcode:
type: string
city:
type: string
country:
type: string
metadata:
type: hash
UserPasswordChange:
required:
- old_password
- new_password
properties:
old_password:
type: string
new_password:
type: string
ResetPassword:
required:
- email
properties:
email:
type: string
UnlockUser:
required:
- unlock_token
properties:
unlock_token:
type: string
SetPassword:
required:
- password
- confirmPassword
- resetPasswordToken
properties:
password:
type: string
confirmPassword:
type: string
resetPasswordToken:
type: string
SubmitPhone:
required:
- phone_number
properties:
phone_number:
type: string
ConfirmPhone:
required:
- phone_number
- verification_code
properties:
phone_number:
type: string
verification_code:
type: string
CreateOrder:
required:
- market
- orders
properties:
market:
description: The market to place order on.
type: string
example: btcaud
orders:
description: Array of orders.
type: array
items:
type: object
properties:
side:
type: string
example: buy
required: true
description: Side that you want to place the order on.
volume:
type: string
example: 1.234
required: true
description: Amount of base currency you wish to buy / sell.
price:
type: string
example: 3500
required: false
description: If placing limit order, select price to place order.
orderType:
type: string
example: limit
required: false
description: Select type of order. Defaults to 'limit'.
CancelAll:
required: null
properties:
side:
description: 'Side that you wish to cancel. Apply this to cancel orders only on one side of the orderbook.'
type: string
example: buy
Balances:
type: array
items:
$ref: '#/components/schemas/Balance'
Balance:
type: object
properties:
currency:
type: string
example: btc
description: The currency of the account
total:
type: number
example: 2.463
description: The total balance of the account
locked:
type: number
example: 1.232
description: The locked or unavailable balance of the account.
available:
type: number
example: 1.232
description: The available balance of the account.
Addresses:
type: array
items:
$ref: '#/components/schemas/Address'
Address:
type: object
properties:
currency:
type: string
example: btc
description: Currency that you selected in your query.
address:
type: string
example: '4MsvavbaybYfsRyK8h665LYqHy5MqP1HRc9'
description: Deposit address of the selected currency.
AuthStatusRes:
type: object
properties:
auth:
type: boolean
example: true
description: Login status of user.
FiatDeposits:
type: array
items:
$ref: '#/components/schemas/FiatDeposit'
CryptoDeposits:
type: array
items:
$ref: '#/components/schemas/CryptoDeposit'
FiatDeposit:
type: object
properties:
id:
type: number
example: '1234'
description: The id of the deposit.
currency:
type: string
example: btc
description: The currency that has been deposited.
amount:
type: number
example: '1.3'
description: The amount of the currency that has been deposited.
fee:
type: number
example: '0.0'
description: The fee that has been processed on the deposit by Blockbid.
createdAt:
type: string
example: '2018-06-18T09:09:39+02:00'
description: Timestamp from when the deposit was requested.
completedAt:
type: string
example: '2018-06-18T09:09:39+02:00'
description: Timestamp from when the deposit was accepted.
state:
type: string
example: 'accepted'
description: The current state of the deposit.
CryptoDeposit:
type: object
properties:
id:
type: number
example: '1234'
description: The id of the deposit.
currency:
type: string
example: btc
description: The currency that has been deposited.
amount:
type: number
example: '1.3'
description: The amount of the currency that has been deposited.
fee:
type: number
example: '0.0'
description: The fee that has been processed on the deposit by Blockbid.
txid:
type: string
example: '7ea2a7197ae7a9eccd7bb3afeda947fb6936e2d951fa7d9b3ac604f2ecb9dc62'
description: The transaction ID of the wallet transfer.
createdAt:
type: string
example: '2018-06-18T09:09:39+02:00'
description: Timestamp from when the deposit was requested.
confirmations:
type: boolean
example: '2018-06-18T09:09:39+02:00'
description: Did the deposit succeed?
completedAt:
type: string
example: '3'
description: Blockchain confirmations that the deposit has received.
state:
type: string
example: 'accepted'
description: The current state of the deposit.
DocumentsArrRes:
type: array
items:
$ref: '#/components/schemas/DocumentObjRes'
DocumentObjRes:
type: object
properties:
uploadUrl:
type: string
example: /uploads/etc
description: Route to document image uploaded.
docType:
type: string
example: Passport
description: Type of document that was uploaded.
docNumber:
type: string
example: BID0001111
description: Identifying number of uploaded document.
docExpire:
type: string
example: '2020-01-01'
description: Expiry date of the uploaded document
UserProfileRes:
type: object
properties:
firstName:
type: string
example: John
description: First name of user.
lastName:
type: string
example: Smith
description: Last name of user.
dob:
type: string
example: '2000-01-01'
description: Date of birth of user.
address:
type: string
example: 123 Example Av.
description: The street address of the user.
postcode:
type: string
example: '1234'
description: Postal code of user.
city:
type: string
example: Example Town
description: City of the user.
country:
type: string
example: Example Country
description: The country of the user.
IdentityObjRes:
type: object
properties:
email:
type: string
example: john@example.com
description: The email linked to the logged in account.
sn:
type: string
example: ASDSASDAS23
description: The users member sn
otpEnabled:
type: string
example: 'false'
description: The current enabled status of multi factor authentication.
state:
type: string
example: active
description: The current state of the account.
level:
type: string
example: '2'
description: The authentication level of the user.
TickersArrRes:
type: array
items:
$ref: '#/components/schemas/TickersObjRes'
TickersObjRes:
type: object
properties:
market:
type: string
example: btcaud
description: The market of the ticker
last:
type: number
example: '1201.99'
description: The last price on the market.
timestamp:
type: string
example: '1531286564'
description: Timestamp for when the ticker was submitted.
OHLC:
type: array
items:
$ref: '#/components/schemas/OHLCTick'
OHLCTick:
type: object
properties:
timestamp:
type: string
example: '1529452800'
description: Timestamp for the OHLC interval.
open:
type: number
example: '10000'
description: Opening price of the OHLC interval.
high:
type: number
example: '11000'
description: Highest price of the OHLC interval.
low:
type: number
example: '9000'
description: Lowest price of the OHLC interval.
close:
type: number
example: '10500'
description: Closing price of the OHLC interval.
volume:
type: number
example: '20.32'
description: trade volume of the OHLC interval.
ArrayOrdersRes:
type: array
items:
$ref: '#/components/schemas/ObjOrderRes'
ObjOrderRes:
type: object
properties:
id:
type: number
example: '1234'
description: The id of order.
side:
type: string
example: buy
description: The side that the order was placed on.
orderType:
type: string
example: limit
description: The type of order.
price:
type: number
example: '4000'
description: The price that the order was submitted.
averagePrice:
type: number
example: '4000'
description: The average price the order is being executed at.
state:
type: string
example: btcaud
description: The state of the order
market:
type: string
example: btcaud
description: The market the order is on.
createdAt:
type: string
example: '2018-07-02T08:26:07+02:00'
description: The time that the order was submitted.
volume:
type: number
example: '0.5'
description: The size of the order.
remainingVolume:
type: number
example: '0.4'
description: The remaining volume of the order.
executedVolume:
type: number
example: '0.1'
description: The amount of the order which has already been matched.
tradesCount:
type: number
example: '2'
description: The number of trades that have been matched with the order.
OrderbookObjMainRes:
type: object
properties:
bids:
type: array
items:
$ref: '#/components/schemas/OrderbookObjBidRes'
asks:
type: array
items:
$ref: '#/components/schemas/OrderbookObjAskRes'
OrderbookObjBidRes:
type: object
properties:
price:
type: number
example: '6000'
description: The order price.
volume:
type: number
example: '0.03'
description: The order volume.
averagePrice:
type: number
example: '6000'
description: The average order price.
remainingVolume:
type: number
example: '0.03'
description: The remaining order volume.
OrderbookObjAskRes:
type: object
properties:
price:
type: number
example: '5000'
description: The order price.
volume:
type: number
example: '0.025'
description: The order volume.
averagePrice:
type: number
example: '6000'
description: The average order price.
remainingVolume:
type: number
example: '0.03'
description: The remaining order volume.
TradesMyArrRes:
type: array
items:
$ref: '#/components/schemas/TradesMyObjRes'
APIKeys:
type: array
items:
$ref: '#/components/schemas/APIKey'
ApiKeyDelete:
type: object
properties:
id:
type: string
example: '010f5898-sss-4b5c-asdadas-192e6f718d94'
description: User Api auth key
APIKey:
type: object
properties:
key:
type: string
example: '010f5898-sss-4b5c-asdadas-192e6f718d94'
description: User Api auth key
createdAt:
type: string
example: 11/2121
description: Date the API key was created
scopes:
type: string
example: 'trade history'
description: Shows you what scopes you have created
TradesArrRes:
type: array
items:
$ref: '#/components/schemas/TradesObjRes'
TradesMyObjRes:
type: object
properties:
id:
type: number
example: '1234'
description: The id of the trade.
orderId:
type: number
example: '12345'
description: The id of the order.
funds:
type: number
example: '10432.25'
description: The price that the trade was executed at.
price:
type: number
example: '10432.25'
description: The price that the trade was executed at.
volume:
type: number
example: '0.0123'
description: The volume (size) that was executed in the trade.
createdAt:
type: string
example: '2018-06-25T16:49:53+10:00'
description: The time that the trade was executed.
market:
type: string
example: 'buy'
description: The market that the trade was executed on.
side:
type: string
example: 'buy'
description: The side that the trade was executed on.
TradesObjRes:
type: object
properties:
id:
type: number
example: '1234'
description: The id of the trade.
funds:
type: number
example: '10432.25'
description: The price that the trade was executed at.
price:
type: number
example: '10432.25'
description: The price that the trade was executed at.
volume:
type: number
example: '0.0123'
description: The volume (size) that was executed in the trade.
createdAt:
type: string
example: '2018-06-25T16:49:53+10:00'
description: The time that the trade was executed.
market:
type: string
example: 'buy'
description: The market that the trade was executed on.
side:
type: string
example: 'buy'
description: The side that the trade was executed on.
QrCodeRes:
type: object
properties:
barcode:
type: string
example: Too Long to Write Out
description: Barcode for qr code.
url:
type: string
example: Also Too Long to Write Out
description: Url for qr code.
CryptoWithdraws:
type: array
items:
$ref: '#/components/schemas/CryptoWithdraw'
FiatWithdraws:
type: array
items:
$ref: '#/components/schemas/FiatWithdraw'
CreateFiatWithdraw:
type: object
properties:
currency:
type: string
example: usd
description: Currency of withdraw.
bankCode:
type: string
example: usd
description: Currency of withdraw.
amount:
type: number
example: '100.0'
description: Amount of currency that has been withdrawn.
totpCode:
type: number
example: '123456'
description: Multifactor Authentication Code.
FiatWithdraw:
type: object
properties:
id:
type: string
example: '1234'
description: The ID of the withdraw.
currency:
type: string
example: usd
description: Currency of withdraw.
bankCode:
type: string
example: usd
description: Currency of withdraw.
amount:
type: number
example: '100.0'
description: Amount of currency that has been withdrawn.
fee:
type: number
example: '0.003'
description: The withdraw fee.
state:
type: string
example: accepted
description: The state of the withdraw.
createdAt:
type: string
example: '2018-05-23T10:59:47+10:00'
description: Timestamp for when the withdraw was initially submitted.
CreateCryptoWithdraw:
type: object
properties:
address:
type: string
example: usd
description: Currency of withdraw.
currency:
type: string
example: usd
description: Currency of withdraw.
amount:
type: number
example: '100.0'
description: Amount of currency that has been withdrawn.
totpCode:
type: string
example: '123456'
description: Multifactor authentication code.
CryptoWithdraw:
type: object
properties:
id:
type: string
example: '1234'
description: The ID of the withdraw.
currency:
type: string
example: usd
description: Currency of withdraw.
amount:
type: number
example: '100.0'
description: Amount of currency that has been withdrawn.
fee:
type: number
example: '0.003'
description: The withdraw fee.
txid:
type: string
example: notApplicable
description: The blockchain transaction id.
address:
type: string
example: '1'
description: The recipient account address.
state:
type: string
example: accepted
description: The state of the withdraw.
createdAt:
type: string
example: '2018-05-23T10:59:47+10:00'
description: Timestamp for when the withdraw was initially submitted.
WithdrawSubmitObjRes:
type: object
properties:
id:
type: string
example: IFA4324fDSFA
description: The transaction id
currency:
type: string
example: usd
description: Currency of withdraw.
currencyType:
type: string
example: fiat
description: Currency type of withdraw.
amount:
type: string
example: '100.0'
description: Amount of currency that has been withdrawn.
fee:
type: string
example: '0.003'
description: The withdraw fee.
bankCode:
type: string
example: '1'
description: The recipient account address.
state:
type: string
example: accepted
description: The state of the withdraw.
createdAt:
type: string
example: '2018-05-23T10:59:47+10:00'
description: Timestamp for when the withdraw was initially submitted.
KYC:
type: object
required:
- accountName
properties:
uid:
type: string
example: '123'
description: User ID
RefDataBankCodeTypes:
type: object
properties:
id:
type: string
example: IFA4324fDSFA
description: Unique Id
countryId:
type: string
example: Japan
description: id of country.
bankCode:
type: string
example: JPN
description: bank code type.
RefDataDepositAccounts:
type: object
properties:
id:
type: string
example: IFA4324fDSFA
description: Unique Id for deposit Account
currencyId:
type: string
example: 2
description: unique id of currency.
countryId:
type: string
example: 4
description: unique id of country.
accountName:
type: string
example: johny bravo
description: account name.
bankName:
type: string
example: comm bank
description: bank name.
bankCodeTypeId:
type: string
example: 4
description: id of bankCodeType.
bankCode:
type: string
example: 64554
description: bank code.
accountNumber:
type: string
example: 54666AA
description: bank account number.
currency:
$ref: '#/components/schemas/RefDataCountries'
country:
countries: '#/components/schemas/RefDataCountries'
RefDataCountries:
type: object
properties:
id:
type: string
example: IFA4324fDSFA
description: Unique Id for country
countryName:
type: string
example: Japan
description: Name of country.
CountryISOCode:
type: string
example: JPN
description: ISO code of country.
RefDataCurrencies:
type: object
properties:
id:
type: string
example: IFA4324fDSFA
description: Unique Id for currency
currencyName:
type: string
example: Australian Dollar
description: Name of currency.
currencyISOCode:
type: string
example: AUD
description: ISO code of currency.
currencyType:
type: string
example: Fiat
description: Can be Fiat or Crypto.
symbol:
type: string
example: AU$
description: Symbol of currency.
precision:
type: int
example: 8
description: Precision of currency.
dailyWithdrawalLimit:
type: int
example: 5000
description: Daily Withdrawl limit.
BankDetailsSuccess:
type: object
properties:
success:
type: boolean
example: true
description: true or false
ArrayBankDetails:
type: array
items:
$ref: '#/components/schemas/BankDetails'
BankDetails:
type: object
required:
- accountName
properties:
userId:
type: string
example: IFA4324fDSFA
description: users ID linked to user
id:
type: string
example: IFA4324fDSFA
description: unique ID linked to bankAccountEntry
accountName:
type: string
example: Suncorp
description: Name of account.
country:
type: string
example: Australia
description: Country name.
bankCodeType:
type: string
example: blah#TODO
description: Type of the bank code.
bankCode:
type: string
example: blah#TODO
description: bank code.
accountNumber:
type: string
example: blah#TODO
description: account number.
bankName:
type: string
example: blah#TODO
description: bank name.
active:
type: boolean
example: false
description: false(0) to delete, true(1) to activate it
currencyId:
type: int
example: 3
description: currency id
updatedUser:
type: string
example: fsdffdfdf
description: updatedUser
lastUpdated:
type: string
example: 3
description: update date
sequenceNumber:
type: int
example: 3
description: sequenceNumber
Errors:
NoSessionTokenError:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Sorry, You need to be logged in to do that...
description: Message describing the error
name:
type: string
example: no_session_token
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
AccountUnverified:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Sorry, you need to complete account verification before making this request.
description: Message describing the error
name:
type: string
example: account_unverified
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
MarketsUnavailable:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't get markets at this current time. Please try again later.
description: Message describing the error
name:
type: string
example: markets_unavailable
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
CurrencyInvalid:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: The currency you have entered is invalid. Please enter a valid currency.
description: Message describing the error
name:
type: string
example: currency_invalid
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ViewAddressFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't get address at this current time.
description: Message describing the error
name:
type: string
example: view_address_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
DepositNotFound:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't find the deposit you requested, please check the id and try again
description: Message describing the error
name:
type: string
example: deposit_not_found
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ViewDepositsFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't get deposits, please try again later.
description: Message describing the error
name:
type: string
example: view_deposits_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
TickersUnavailable:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't get tickers at this current time. Please try again later.
description: Message describing the error
name:
type: string
example: tickers_unavailable
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
BalanceInvalid:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: We cannot find the account you have queried for.
description: Message describing the error
name:
type: string
example: account_invalid
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ViewBalanceFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: We cannot retrieve your accounts at this current time, please try again later.
description: Message describing the error
name:
type: string
example: view_accounts_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ViewOHLCFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Unable to get OHLC at this current time. Please try again shortly.
description: Message describing the error
name:
type: string
example: view_ohlc_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ViewOrderbookFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Unable to get orderbook at this current time , please try again shortly.
description: Message describing the error
name:
type: string
example: view_orderbook_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ViewOrderFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: We were unable to get your order at this time. Please try again shortly.
description: Message describing the error
name:
type: string
example: view_order_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
OrderFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: We were unable to place your order at this time. Please ensure you have sufficient funds and try again shortly.
description: Message describing the error
name:
type: string
example: order_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
CancelFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: We were unable to cancel your order at this time. Please try again shortly.
description: Message describing the error
name:
type: string
example: cancellation_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ViewTradesFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Unable to get trades at this moment, please try again shortly.
description: Message describing the error
name:
type: string
example: view_trades_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ViewWithdrawFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't get withdraws at this moment. Please try again later.
description: Message describing the error
name:
type: string
example: view_withdraw_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ViewAccountsFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: We cannot get accounts at this time, please try again later.
description: Message describing the error
name:
type: string
example: view_accounts_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
UpdateAccountFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: We cannot update account at this time, please try again later.
description: Message describing the error
name:
type: string
example: update_account_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
CreateAccountFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: We cannot create account at this time, please try again later.
description: Message describing the error
name:
type: string
example: create_account_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
DeleteAccountFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: We cannot delete account at this time, please try again later.
description: Message describing the error
name:
type: string
example: delete_account_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ExpiredToken:
type: object
properties:
error:
type: object
properties:
message:
type: string
description: Message describing the error
name:
type: string
example: expired_token
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
PhoneNumberInvalid:
type: object
properties:
error:
type: object
properties:
message:
type: string
description: Message describing the error
name:
type: string
example: phone_number_invalid
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
PhoneNumberAlreadyExists:
type: object
properties:
error:
type: object
properties:
message:
type: string
description: Message describing the error
name:
type: string
example: phone_number_already_exists
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
PhoneNumberEmptyParams:
type: object
properties:
error:
type: object
properties:
message:
type: string
description: Message describing the error
name:
type: string
example: phone_number_empty_params
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
InvalidPhoneRecord:
type: object
properties:
error:
type: object
properties:
message:
type: string
description: Message describing the error
name:
type: string
example: invalid_phone_record
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ViewMembersFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't get members at this moment. Please try again later.
description: Message describing the error
name:
type: string
example: view_members_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ViewOrdersFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't get orders at this moment. Please try again later.
description: Message describing the error
name:
type: string
example: view_orders_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
CreateDepositFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't despoit amount at this moment. Please try again later.
description: Message describing the error
name:
type: string
example: create_deposit_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
UpdateDepositFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't despoit amount at this moment. Please try again later.
description: Message describing the error
name:
type: string
example: update_deposit_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
CreateWithdrawFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't despoit amount at this moment. Please try again later.
description: Message describing the error
name:
type: string
example: create_withdraw_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
UpdateWithdrawFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't despoit amount at this moment. Please try again later.
description: Message describing the error
name:
type: string
example: update_withdraw_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
ViewWalletsFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't get wallets at this moment. Please try again later.
description: Message describing the error
name:
type: string
example: view_wallets_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
SuspendMemberFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't suspend member, please try again later.
description: Message describing the error
name:
type: string
example: suspend_member_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
UnSuspendMemberFailed:
type: object
properties:
error:
type: object
properties:
message:
type: string
example: Couldn't unsuspend member, please try again later.
description: Message describing the error
name:
type: string
example: unsuspend_member_failed
description: Summary code of error
time_thrown:
type: string
example: '2018-07-08T23:44:16.538Z'
description: Timestamp of when the error was thrown
data:
type: object
example: '{}'
description: Additional Information regarding the error
WithdrawDeprecated:
required:
- currency
- amount
- address
properties:
address:
type: string
example: 2MypSPPPNUZW6wsLjMzqMXAzWwewCdZ9eVw
description: The address of the wallet you want to send to
currency:
type: string
example: btc
description: The name of the currency.
amount:
type: string
example: 0.0001
description: The amount you want to send to another address
Market:
type: object
required:
- id
- name
properties:
id:
type: string
example: btcaud
description: The id of the market.
name:
type: string
example: BTC/USD
description: The name of the market.
Markets:
type: array
items:
$ref: '#/components/schemas/Market'
Error:
required:
- code
- message
properties:
code:
type: integer
format: int32
message:
type: string
ApiKeyGen:
required:
- totpCode
properties:
totpCode:
type: string
scopes:
type: string
Healthz:
type: object
properties:
uptime:
type: number
example: '121'
description: Server up time in seconds
AdminAuth:
required:
- email
- password
properties:
email:
type: string
password:
type: string
otp_code:
type: string
AdminAuthStatusRes:
type: object
properties:
status:
type: string
example: loggedIn
description: Login status of user.
AdminAuthLoginStatusRes:
type: object
properties:
status:
type: string
example: loggedIn
description: Login status of user.
jwt:
type: string
description: jwt token
email:
type: string
description: Email of the user
otp_enabled:
type: boolean
description: One time pass enabled or disabled
AdminDepositsArrRes:
type: object
properties:
page:
type: integer
example: 1
description: Page number
limit:
type: integer
example: 100
description: Total records per page
count:
type: integer
example: 1000
description: Total records exists in database
deposits:
type: array
items:
$ref: '#/components/schemas/AdminDepositsObjRes'
AdminDepositsObjRes:
properties:
depositID:
type: string
example: '1234'
description: The id of the deposit.
currency:
type: string
example: btc
description: The currency that has been deposited.
userID:
type: string
example: 'IDD9645248D2'
description: The user id provided by barong
type:
type: string
example: 'fiat'
description: The coin type.
amount:
type: string
example: '1.3'
description: The amount of the currency that has been deposited.
state:
type: string
example: 'accepted'
description: The current state of the deposit.
timeCreated:
type: string
example: '2018-06-18T09:09:39+02:00'
description: Timestamp from when the deposit was requested.
timeAccepted:
type: string
example: '2018-06-18T09:09:39+02:00'
description: Timestamp from when the deposit was accepted.
txid:
type: string
example: '7ea2a7197ae7a9eccd7bb3afeda947fb6936e2d951fa7d9b3ac604f2ecb9dc62'
description: The transaction ID of the wallet transfer.
confirmations:
oneOf:
- type: string
example: '3'
description: Blockchain confirmations that the deposit has received.
- type: boolean
example: true
description: Blockchain confirmations that the deposit has received.
AdminWithdrawsArrRes:
type: object
properties:
page:
type: integer
example: 1
description: Page number
limit:
type: integer
example: 100
description: Total records per page
count:
type: integer
example: 1000
description: Total records exists in database
withdraws:
type: array
items:
$ref: '#/components/schemas/AdminWithdrawsObjRes'
AdminWithdrawsObjRes:
type: object
properties:
withdrawID:
type: string
example: '1234'
description: The id of the withdraw.
userID:
type: string
example: 'IDD9645248D2'
description: The user id provided by barong
currency:
type: string
example: btc
description: The currency code.
type:
type: string
example: 'fiat'
description: The coin type.
amount:
type: string
example: '1'
description: The withdraw amount excluding fee.
fee:
type: string
example: '0.0'
description: The exchange fee.
rid:
type: string
example: '0.0'
description: The beneficiary ID or wallet address on the Blockchain.
state:
type: string
example: 'accepted'
description: The current state of the deposit.
timeCreated:
type: string
example: '2018-06-18T09:09:39+02:00'
description: The datetime when withdraw was created.
txid:
type: string
example: '7ea2a7197ae7a9eccd7bb3afeda947fb6936e2d951fa7d9b3ac604f2ecb9dc62'
description: The transaction ID on the Blockchain (coin only).
CurrencyArray:
type: array
items:
$ref: '#/components/schemas/Currency'
Currency:
type: object
properties:
id:
type: string
example: btc
description: The currency id.
symbol:
type: string
example: ฿
description: The currency symbol
type:
type: string
example: coin
description: Either coin or fiat
precision:
type: integer
example: 8
description: How many decimal places to display
TradeVolumes:
type: array
items:
$ref: '#/components/schemas/TradeVolume'
TradeVolume:
type: object
properties:
price:
type: number
example: aud
description: The market of the ticker
volume:
type: number
example: aud
description: The market of the ticker
change:
type: string
example: aud
description: The market of the ticker
currency:
type: string
example: aud
description: The market of the ticker
AdminAccountsArrRes:
type: object
properties:
page:
type: integer
example: 1
description: Page number
limit:
type: integer
example: 100
description: Total records per page
count:
type: integer
example: 1000
description: Total records exists in database
accounts:
type: array
items:
$ref: '#/components/schemas/AdminAccountsObjRes'
AdminAccountsObjRes:
type: object
properties:
userID:
type: string
example: 'IDD9645248D2'
description: The user id provided by barong
email:
type: string
example: '96b1006b-52b4-4ea5-9acf-e583c5a8cac9@blockbid.io'
description: The user email provided by barong
role:
type: string
example: 'member'
description: The user role provided by barong
level:
type: string
example: 0
description: The user level provided by barong
otp_enabled:
type: boolean
example: false
description: The user one time pass provided by barong
state:
type: string
example: 'pending'
description: The user state provided by barong
created_at:
type: string
example: '2018-06-27T13:58:39Z'
description: The user created at provided by barong
updated_at:
type: string
example: '2018-06-27T13:58:39Z'
description: The user updated at provided by barong
profile:
oneOf:
- $ref: '#/components/schemas/AdminAccountsObjResProfile'
- type: string
example: 'notApplicable'
description: The user profile provided by barong
AdminAccountsObjResProfile:
type: object
properties:
first_name:
type: string
nullable: true
example: 'TradeBot'
description: The user first name provided by barong
last_name:
type: string
nullable: true
example: 'Four'
description: The user last name provided by barong
dob:
type: string
nullable: true
example: '1900-01-01'
description: The user date of birth provided by barong
address:
type: string
nullable: true
example: 'some addresss'
description: The user address provided by barong
postcode:
type: string
nullable: true
example: '1292'
description: The user post code provided by barong
city:
type: string
nullable: true
example: 'Lahore'
description: The user city provided by barong
country:
type: string
nullable: true
example: 'BEN'
description: The user country provided by barong
metadata:
type: string
nullable: true
example: ''
description: The user metadata provided by barong
AdminNewAccount:
type: object
properties:
firstName:
type: string
example: 'TradeBot'
description: The user first name
lastName:
type: string
example: 'Four'
description: The user last name
email:
type: string
example: 'someone@example.com'
description: The user email address
role:
type: string
example: 'support'
description: The role, admin, support, accountant
AdminUpdateAccount:
type: object
properties:
userID:
type: string
example: 'IDBA46F631C1'
description: The user id need to updated
email:
type: string
example: 'someone@example.com'
description: The updated user email address (user needs to confirm this by clicking email with a link in it)
AdminDeleteAccount:
type: object
properties:
userID:
type: string
example: 'IDBA46F631C1'
description: The user need to deleted
AdminAddPhoneInAccount:
type: object
properties:
userID:
type: string
example: 'IDBA46F631C1'
description: The user id for which need to add phone number
phoneNumber:
type: string
example: '+61452123456'
description: Phone number to add in user account
AdminMembersArrRes:
type: object
properties:
page:
type: integer
example: 1
description: Page number
limit:
type: integer
example: 100
description: Total records per page
count:
type: integer
example: 1000
description: Total records exists in database
members:
type: array
items:
$ref: '#/components/schemas/AdminMembersObjRes'
AdminMembersObjRes:
type: object
properties:
serialNo:
type: string
example: 'SN331EC424CF'
description: The id of the member.
email:
type: string
example: 'devtest.gatewayuvyz2dc39y@blockbid.io'
description: The email of the member.
userID:
type: string
example: 'IDD9645248D2'
description: The user id provided by barong
level:
type: string
example: '3'
description: The user access level
disabled:
type: boolean
example: false
description: Is member disable?
apiDisabled:
type: boolean
example: false
description: Is member have access to api?
timeCreated:
type: string
example: '2018-06-18T09:09:39+02:00'
description: Timestamp when the member was created.
timeUpdated:
type: string
example: '2018-06-18T09:09:39+02:00'
description: Timestamp when the member was updated.
AdminMembersAccountRes:
type: object
properties:
accounts:
oneOf:
- type: string
example: 'notApplicable'
description: The user acoounts provided by peatio
- type: array
items:
$ref: '#/components/schemas/AdminMemberAccountObjRes'
AdminMemberAccountObjRes:
type: object
properties:
currency:
type: string
example: 'bch'
description: The id of the member.
balance:
type: string
example: '4.0'
description: The email of the member.
locked:
type: string
example: '0.0'
description: The user id provided by barong
AdminOrdersArrRes:
type: object
properties:
page:
type: integer
example: 1
description: Page number
limit:
type: integer
example: 100
description: Total records per page
count:
type: integer
example: 1000
description: Total records exists in database
orders:
type: array
items:
$ref: '#/components/schemas/AdminOrderObjRes'
AdminOrderObjRes:
type: object
properties:
orderID:
type: string
example: '753730'
description: The id of the order
side:
type: string
example: 'buy'
description: The order side buy / sell
ordType:
type: string
example: 'limit'
description: The order type limit or market
price:
type: string
example: '315.8778'
description: The price
avgPrice:
type: string
example: '315.8778'
description: The average price
state:
type: string
example: 'wait'
description: The state
market:
type: string
example: 'btcusd'
description: The market
timeCreated:
type: string
example: '2018-06-18T09:09:39+02:00'
description: The datetime when withdraw was created.
originVolume:
type: string
example: '6622.17917521'
description: The origin volume
volume:
type: string
example: '3166622.17907521'
description: The volume
executedVolume:
type: string
example: '0.0001'
description: The executed volume.
tradesCount:
type: string
example: '1'
description: The trade count
userID:
type: string
example: 'IDD9645248D2'
description: The user id provided by barong
AdminCreateDepositSchema:
type: object
properties:
userID:
type: string
example: 'ID1271AF90EB'
description: The user id of the member.
currency:
type: string
example: 'usd'
description: Currency in which user want to deposit, GBP, JNY, USD, AUD etc
amount:
type: number
example: 1.232
description: Actual amount to deposit
AdminCreateWithdrawFiatSchema:
type: object
properties:
userID:
type: string
example: 'ID1271AF90EB'
description: The user id of the member.
bankCode:
type: string
example: '0032005299013'
description: The bank account number
currency:
type: string
example: 'usd'
description: Currency in which user want to withdraw, GBP, JNY, USD, AUD etc
amount:
type: number
example: 1.232
description: Actual amount to withdraw
AdminCreateWithdrawCryptoSchema:
type: object
properties:
userID:
type: string
example: 'ID1271AF90EB'
description: The user id of the member.
address:
type: string
example: '2N8nuYjL94WitEQ2Wp9yppbgFuhrbxrQWhh'
description: The beneficiary ID or wallet address on the Blockchain.
currency:
type: string
example: 'btc'
description: Coin type, BTC, LTC etc
amount:
type: number
example: 1.232
description: Actual amount to withdraw
AdminTradesArrRes:
type: object
properties:
page:
type: integer
example: 1
description: Page number
limit:
type: integer
example: 100
description: Total records per page
count:
type: integer
example: 1000
description: Total records exists in database
trades:
type: array
items:
$ref: '#/components/schemas/AdminTradeObjRes'
AdminTradeObjRes:
type: object
properties:
tradeID:
type: string
example: '753730'
description: The id of the trade
price:
type: string
example: '315.8778'
description: The price
volume:
type: string
example: '3166622.17907521'
description: The volume
funds:
type: string
example: '1.713750'
description: The funds available
market:
type: string
example: 'btcusd'
description: The market
timeCreated:
type: string
example: '2018-06-18T09:09:39+02:00'
description: The datetime when withdraw was created.
side:
type: string
description: The side
askUid:
type: string
example: 'IDBBEFF05A28'
description: The ask uid
bidUid:
type: string
example: 'ID6C6BF8F7F3'
description: The bid uid
AdminWalletsArrRes:
type: object
properties:
page:
type: integer
example: 1
description: Page number
limit:
type: integer
example: 100
description: Total records per page
count:
type: integer
example: 1000
description: Total records exists in database
wallets:
type: array
items:
$ref: '#/components/schemas/AdminWalletObjRes'
AdminWalletObjRes:
type: object
properties:
walletID:
type: string
example: '1'
description: The id of the wallet
currency:
type: string
example: 'btc'
description: The currency
name:
type: string
example: 'Bitcoin Deposit Wallet'
description: The name of wallet
kind:
type: string
example: 'deposit'
description: The kind deposit, hot etc
gateway:
type: string
example: 'bitgo'
description: The gateway
timeCreated:
type: string
example: '2018-06-18T09:09:39+02:00'
description: The datetime when wallet was created.
timeUpdated:
type: string
example: '2018-06-18T09:09:39+02:00'
description: The datetime when wallet was updated.
balance:
type: string
example: '65.916978'
description: The balance
lockedBalance:
type: string
example: '1.26612249'
description: The locked balance
settings:
$ref: '#/components/schemas/AdminWalletSettingObjRes'
AdminWalletSettingObjRes:
type: object
properties:
bitgo_rest_api_access_token:
type: string
example: '901e3f2e525e2576416fa8a34661659491fe5'
description: The bitgo rest api access token
bitgo_rest_api_root:
type: string
example: 'http://domain.com/api/v2'
description: The bitgo rest api root
bitgo_test_net:
type: boolean
example: true
description: The bitgo test net
bitgo_wallet_address:
type: string
example: '2NEWKjP7fRyaF7Z4mHFRDt95z'
description: The bitgo wallet address
bitgo_wallet_id:
type: string
example: '5ac5c259d12790d9f7d1779e9c'
description: The bitgo wallet id
AdminUserPhoneArrRes:
type: array
items:
$ref: '#/components/schemas/AdminUserPhoneObjRes'
AdminUserPhoneObjRes:
type: object
properties:
country:
type: string
example: 'Australia'
description: from which country, user mobile belongs to
number:
type: string
example: '+6112345678'
description: User mobile number
timeValidated:
type: string
example: '2018-06-18T09:09:39+02:00'
description: The datetime when phone was validated.
AdminUserMarketArrRes:
type: object
properties:
page:
type: integer
example: 1
description: Page number
limit:
type: integer
example: 100
description: Total record per page
count:
type: integer
example: 1000
description: Total record exists in database
markets:
type: array
items:
$ref: '#/components/schemas/AdminMarketObjRes'
AdminMarketObjRes:
type: object
properties:
id:
type: string
example: 'xrpusd'
description: market id
askUnit:
type: string
example: 'xrp'
description: 'xrp'
bidUnit:
type: string
example: 'usd'
description: usd
askFee:
type: string
example: '0.0'
description: ask fee
bidFee:
type: string
example: '0.0'
description: bid fee
maxBid:
type: string
example: '0.0'
description: max bid
minAsk:
type: string
example: '0.0'
description: min ask
askPrecision:
type: string
example: '4'
description: ask precision
bidPrecision:
type: string
example: '4'
description: bid precision
position:
type: string
example: '600'
description: position
enabled:
type: boolean
example: '600'
description: position
AdminUpdateAccountScope:
type: object
properties:
userID:
type: string
example: 'IDD9645248D2'
description: The user id provided by barong
role:
type: string
example: 'support'
description: The role, admin, support, accountant
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment