Documentation
Documentation
https://apidocs.bithumb.com/docs
RateLimits
https://raw.githubusercontent.com/api-evangelist/bithumb/refs/heads/main/rate-limits/rate-limits.yml
openapi: 3.0.3
info:
title: Bithumb Global REST Account Spot Trading API
description: 'REST API for Bithumb Global (bithumb.pro), South Korea''s leading cryptocurrency exchange. Provides public market data and authenticated private endpoints for spot trading, account management, and deposit/withdrawal operations across 396+ cryptocurrencies.
'
version: 1.0.0
contact:
name: Bithumb Developer Support
url: https://apidocs.bithumb.com
termsOfService: https://www.bithumb.com/u1/US139
servers:
- url: https://global-openapi.bithumb.pro/openapi/v1
description: Bithumb Global REST API v1
tags:
- name: Spot Trading
description: Authenticated spot order management
paths:
/spot/placeOrder:
post:
summary: Place a spot order
description: Creates a new spot order. Requires transaction authentication.
operationId: placeSpotOrder
tags:
- Spot Trading
security:
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- symbol
- type
- side
- price
- quantity
- timestamp
properties:
symbol:
type: string
example: BTC-USDT
type:
type: string
enum:
- limit
- market
side:
type: string
enum:
- buy
- sell
price:
type: string
description: Order price. Set to -1 for market orders.
quantity:
type: string
description: Order quantity. For market buy, this is the quote currency amount.
timestamp:
type: string
description: Request timestamp in milliseconds
msgNo:
type: string
description: Client order ID (max 50 chars)
apiKey:
type: string
signature:
type: string
responses:
'200':
description: Order placed successfully
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/BaseResponse'
- type: object
properties:
data:
type: object
properties:
orderId:
type: string
symbol:
type: string
/spot/cancelOrder:
post:
summary: Cancel a spot order
description: Cancels an existing spot order. Requires transaction authentication.
operationId: cancelSpotOrder
tags:
- Spot Trading
security:
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- orderId
- symbol
properties:
orderId:
type: string
symbol:
type: string
apiKey:
type: string
timestamp:
type: integer
format: int64
signature:
type: string
responses:
'200':
description: Order cancelled
content:
application/json:
schema:
$ref: '#/components/schemas/BaseResponse'
/spot/cancelOrder/batch:
post:
summary: Batch cancel spot orders
description: Cancels multiple spot orders. Requires transaction authentication.
operationId: batchCancelSpotOrders
tags:
- Spot Trading
security:
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- symbol
properties:
symbol:
type: string
ids:
type: string
description: Comma-separated order IDs (max 100). If empty, cancels all orders for the symbol.
apiKey:
type: string
timestamp:
type: integer
format: int64
signature:
type: string
example:
symbol: ETH-USDT
ids: 74740189190115328,74740189190115329
responses:
'200':
description: Orders cancelled
content:
application/json:
schema:
$ref: '#/components/schemas/BaseResponse'
/spot/placeOrders:
post:
summary: Batch place spot orders
description: Places multiple spot orders (up to 10). Requires transaction authentication.
operationId: batchPlaceSpotOrders
tags:
- Spot Trading
security:
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- multiParams
properties:
multiParams:
type: string
description: JSON-encoded array of order parameter objects (max 10 orders)
apiKey:
type: string
timestamp:
type: integer
format: int64
signature:
type: string
responses:
'200':
description: Orders placed
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/BaseResponse'
- type: object
properties:
data:
type: array
items:
type: object
properties:
data:
type: object
properties:
orderId:
type: string
symbol:
type: string
code:
type: string
msg:
type: string
timestamp:
type: integer
format: int64
/spot/singleOrder:
post:
summary: Query single order
description: Returns details of a specific order.
operationId: getSpotSingleOrder
tags:
- Spot Trading
security:
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- orderId
- symbol
properties:
orderId:
type: string
symbol:
type: string
apiKey:
type: string
timestamp:
type: integer
format: int64
signature:
type: string
responses:
'200':
description: Order details
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/BaseResponse'
- type: object
properties:
data:
$ref: '#/components/schemas/Order'
/spot/openOrders:
post:
summary: Query open orders
description: Returns a paginated list of open orders for a symbol.
operationId: getSpotOpenOrders
tags:
- Spot Trading
security:
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- symbol
properties:
symbol:
type: string
page:
type: string
description: Page number (default 1)
count:
type: string
description: Records per page (default 10)
apiKey:
type: string
timestamp:
type: integer
format: int64
signature:
type: string
responses:
'200':
description: Open order list
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/BaseResponse'
- type: object
properties:
data:
type: object
properties:
num:
type: integer
format: int64
list:
type: array
items:
$ref: '#/components/schemas/Order'
/spot/orderList:
post:
summary: Query order history
description: Returns a paginated list of historical (completed/cancelled) orders.
operationId: getSpotOrderList
tags:
- Spot Trading
security:
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- side
- symbol
- status
- queryRange
properties:
side:
type: string
enum:
- buy
- sell
symbol:
type: string
status:
type: string
description: Order status filter (e.g. 'traded' for history)
queryRange:
type: string
enum:
- thisweek
- thisweekago
description: thisweek=last 7 days, thisweekago=before 7 days ago
page:
type: string
count:
type: string
apiKey:
type: string
timestamp:
type: integer
format: int64
signature:
type: string
responses:
'200':
description: Order history
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/BaseResponse'
- type: object
properties:
data:
type: object
properties:
num:
type: integer
format: int64
list:
type: array
items:
$ref: '#/components/schemas/Order'
/spot/orderDetail:
post:
summary: Query order trade details
description: Returns trade-level fill details for an order.
operationId: getSpotOrderDetail
tags:
- Spot Trading
security:
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- orderId
- symbol
properties:
orderId:
type: string
symbol:
type: string
page:
type: string
description: Page number (default 1)
count:
type: string
description: Records per page (default 10)
apiKey:
type: string
timestamp:
type: integer
format: int64
signature:
type: string
responses:
'200':
description: Order fill details
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/BaseResponse'
- type: object
properties:
data:
type: object
properties:
num:
type: integer
format: int64
list:
type: array
items:
type: object
properties:
orderId:
type: string
orderSign:
type: string
description: taker or maker
getCount:
type: string
getCountUnit:
type: string
loseCount:
type: string
loseCountUnit:
type: string
price:
type: string
priceUnit:
type: string
fee:
type: string
feeUnit:
type: string
time:
type: integer
format: int64
fsymbol:
type: string
side:
type: string
enum:
- buy
- sell
/spot/myTrades:
post:
summary: Query my trades
description: Returns recent personal trade history for a symbol.
operationId: getSpotMyTrades
tags:
- Spot Trading
security:
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- symbol
properties:
symbol:
type: string
startTime:
type: integer
format: int64
description: Start timestamp in ms (defaults to current time if omitted)
limit:
type: integer
apiKey:
type: string
timestamp:
type: integer
format: int64
signature:
type: string
responses:
'200':
description: Personal trade history
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/BaseResponse'
- type: object
properties:
data:
type: array
items:
type: object
properties:
id:
type: integer
format: int64
price:
type: number
amount:
type: number
side:
type: string
enum:
- buy
- sell
direction:
type: string
enum:
- taker
- maker
time:
type: integer
format: int64
components:
schemas:
BaseResponse:
type: object
properties:
code:
type: string
example: '0'
msg:
type: string
example: success
timestamp:
type: integer
format: int64
params:
type: array
items: {}
Order:
type: object
properties:
orderId:
type: string
symbol:
type: string
price:
type: string
tradedNum:
type: string
description: Completed quantity
quantity:
type: string
description: Total quantity
avgPrice:
type: string
description: Average fill price
status:
type: string
enum:
- send
- pending
- success
- cancel
type:
type: string
enum:
- market
- limit
side:
type: string
enum:
- buy
- sell
createTime:
type: string
tradeTotal:
type: string
securitySchemes:
ApiKeyAuth:
type: apiKey
in: query
name: apiKey
description: 'API key issued from bithumb.pro. All authenticated requests must also include `timestamp` (Unix ms) and `signature` (HmacSHA256 of sorted request parameters joined with "&").
'