為滿足不同使用者的交易需求,CoinEx站內已支援P2P API相關功能,詳見以下說明。
一、CoinEx P2P API 使用說明
1、API支援的客戶
任何完成了P2P商家驗證的站內用戶,若您尚未擁有商家身份,需先前往頁面完成P2P商家申請。
2、執行效率與內容
透過API進行操作的用戶,資訊取得與請求執行效率與頁面內無差別,回傳內容因欄位限製而刪減。
3、API支援目錄
- P2P店舖營業狀態管理
- P2P廣告管理
- P2P用戶廣告列表
- P2P市場廣告列表
- P2P訂單列表
- P2P廣告價格修改
- P2P市場深度數據
二、P2P API 介面文檔
使用前,需造訪CoinEx公共API進行認證操作。
1、P2P店舖營業狀態管理
接口信息
- URL路徑:/v2/p2p/exchange-status
- 請求方法:POST
- 介面描述:設定P2P店舖的營業狀態(開啟或關閉)
- 權限要求:需要認證
請求參數
請求體
| 參數名 | 必填 | 類型 | 描述 |
| status | 是 | String | 店鋪狀態,可選值:OPEN(開啟)或CLOSED(關閉) |
請求範例
POST /v2/p2p/exchange-status HTTP/1.1
Host: api.coinex.com
Content-Type: application/json
{
"status": "OPEN"
}
響應參數
| 參數名 | 類型 | 描述 |
| status | String | 設定後的店鋪狀態,OPEN或CLOSED |
響應範例
{
"code": 0,
"message": "OK",
"data": {
"status": "OPEN"
}
}
2、P2P廣告管理
接口信息
- URL路徑:/v2/p2p/manage-ads
- 請求方法:POST
- 介面描述:大量管理P2P廣告(上線或下線)
- 權限要求:需要認證
請求參數
請求體
| 參數名 | 必填 | 類型 | 描述 |
| status | 是 | String | 操作類型,可選值:ONLINE(上线)或OFFLINE(下线) |
| ad_ids | 否 | Array[String] | 廣告ID列表,不傳則操作所有符合條件的廣告 |
請求範例
POST /v2/p2p/manage-ads HTTP/1.1
Host: api.coinex.com
Content-Type: application/json
{
"status": "ONLINE",
"ad_ids": ["5f7c8b9d1a2b3c4d5e6f7g8h", "5f7c8b9d1a2b3c4d5e6f7g9i"]
}
響應參數
| 參數名 | 類型 | 描述 |
| affected_ad_ids | Array[String] | 成功操作的廣告ID列表 |
響應範例
{
"code": 0,
"message": "OK",
"data": {
"affected_ad_ids": ["5f7c8b9d1a2b3c4d5e6f7g8h", "5f7c8b9d1a2b3c4d5e6f7g9i"]
}
}
3、P2P用戶廣告列表
接口信息
- URL路徑:/v2/p2p/ads
- 請求方法:GET
- 介面描述:取得目前使用者的所有廣告列表
- 權限要求:需要認證
請求參數
無
請求範例
GET /v2/p2p/ads HTTP/1.1 Host: api.coinex.com
響應參數
傳回廣告物件數組,每個廣告物件包含以下欄位:
| 參數名 | 類型 | 描述 |
| ad_id | String | 廣告ID |
| created_at | Number | 創建時間(毫秒時間戳記) |
| updated_at | Number | 更新時間(毫秒時間戳記) |
| ad_number | String | 廣告編號 |
| ad_side | String | 廣告方向,買(買入)或賣(賣) |
| base_ccy | String | 基礎貨幣 |
| quote_ccy | String | 計價貨幣 |
| price | String | 價格 |
| available_amount | String | 可用數量 |
| quote_min_limit | String | 最小交易限額(計價貨幣) |
| quote_max_limit | String | 最大交易限額(計價貨幣) |
| status | String | 廣告狀態,可選值:ONLINE(上線)或OFFLINE(下線) |
響應範例
{
"code": 0,
"message": "OK",
"data": [
{
"ad_id": "5f7c8b9d1a2b3c4d5e6f7g8h",
"created_at": 1618456789000,
"updated_at": 1618456789000,
"ad_number": "AD123456789",
"ad_side": "BUY",
"base_ccy": "BTC",
"quote_ccy": "CNY",
"price": "200000",
"available_amount": "0.5",
"quote_min_limit": "500",
"quote_max_limit": "50000",
"status": "ONLINE"
},
{
"ad_id": "5f7c8b9d1a2b3c4d5e6f7g9i",
"created_at": 1618456790000,
"updated_at": 1618456790000,
"ad_number": "AD123456790",
"ad_side": "SELL",
"base_ccy": "ETH",
"quote_ccy": "CNY",
"price": "10000",
"available_amount": "5",
"quote_min_limit": "200",
"quote_max_limit": "20000",
"status": "OFFLINE"
}
]
}
4、P2P市場廣告列表
接口信息
- URL路徑:/v2/p2p/market/ads
- 請求方法:GET
- 介面描述:取得P2P市場廣告列表
- 權限要求:不需要認證
請求參數
查詢參數
| 參數名 | 必填 | 類型 | 描述 |
| base_ccy | 是 | String | 基礎貨幣 |
| quote_ccy | 是 | String | 計價貨幣 |
| order_side | 是 | String | 訂單方向,訂單方向與廣告方向相反,取值為BUY或SELL |
| target_quote_amount | 否 | Decimal | 目標交易金額(計價貨幣) |
| sort_by | 否 | String | 排序字段,預設為PRICE,可選 COMPLETION_RATE(完單率)DEAL_COUNT(成交數)ACCEPTANCE_RATE(接單率) |
| sort_type | 否 | String | 排序方式,ASC(升序)或DESC(降序),預設為ASC |
| page | 否 | Integer | 頁碼,預設為1 |
| limit | 否 | Integer | 每頁數量,預設為10 |
請求範例
GET /v2/p2p/market/ads?base_ccy=BTC"e_ccy=CNY&order_side=BUY&page=1&limit=10 HTTP/1.1 Host: api.coinex.com
響應參數
| 參數名 | 類型 | 描述 |
| data | Array | 廣告列表,每個元素結構同用戶廣告列表 |
| pagination | Object | 分頁訊息 |
| pagination.total | Integer | 總記錄數 |
| pagination.has_next | Boolean | 是否有下一頁 |
響應範例
{
"code": 0,
"message": "OK",
"data": [
{
"ad_id": "5f7c8b9d1a2b3c4d5e6f7g8h",
"created_at": 1618456789000,
"updated_at": 1618456789000,
"ad_number": "AD123456789",
"ad_side": "BUY",
"base_ccy": "BTC",
"quote_ccy": "CNY",
"price": "200000",
"available_amount": "0.5",
"quote_min_limit": "500",
"quote_max_limit": "50000",
"status": "ONLINE"
},
],
"pagination": {
"total": 50,
"has_next": true
}
}
5、P2P訂單列表
接口信息
- URL路徑:/v2/p2p/order
- 請求方法:GET
- 介面描述:取得用戶P2P訂單列表
- 權限要求:需要認證
請求參數
查詢參數
| 參數名 | 必填 | 類型 | 描述 |
| start_time | 否 | Number | 開始時間(毫秒時間戳記) |
| end_time | 否 | Number | 結束時間(毫秒時間戳記) |
| ad_side | 否 | String | 廣告方向,BUY或SELL |
| quote_ccy | 否 | String | 計價貨幣 |
| status | 否 | string | 訂單狀態 |
| page | 否 | Integer | 頁碼,預設為1 |
| limit | 否 | Integer | 每頁數量,預設為10 |
請求範例
GET /v2/p2p/order?start_time=1618456789000&end_time=1618556789000&status=CREATED&page=1&limit=10 HTTP/1.1 Host: api.coinex.com
響應參數
| 參數名 | 類型 | 描述 |
| data | Array | 訂單列表 |
| pagination | Object | 分頁訊息 |
| pagination.total | Integer | 總記錄數 |
| pagination.has_next | Boolean | 是否有下一頁 |
訂單對象包含以下字段:
| 參數名 | 類型 | 描述 |
| order_id | Integer | 訂單ID |
| order_num | String | 訂單編號 |
| ad_id | String | 廣告ID |
| status | String | 訂單狀態,可選值:CREATED(待接單)、CONFIRMED(待付款)、PAID(已付款)、FINISHED(已完成)、CANCELED(已取消) |
| created_at | Number | 創建時間(毫秒時間戳記) |
| finished_at | Number | 完成時間(毫秒時間戳記) |
| confirm_due_at | Number | 確認截止時間(毫秒時間戳記) |
| payment_due_at | Number | 付款截止時間(毫秒時間戳記) |
| order_side | String | 訂單方向,BUY或SELL |
| price | String | 價格 |
| base_ccy | String | 基礎貨幣 |
| base_ccy_amount | String | 基礎貨幣數量 |
| quote_ccy | String | 計價貨幣 |
| quote_ccy_amount | String | 計價貨幣數量 |
| cancel_type | String | 取消類型,選用值:CONFIRM_TIMEOUT(商家逾時未確認)、MERCHANT_CREATED_CANCEL(商家拒絕接單)、CUSTOMER_CREATED_CANCEL(用戶接單前取消)、PAY_TIMEOUT(買方逾時未付款)、BUYER_CANCEL(買方取消)、SERVICE_CANCEL(客服手動取消)、SYSTEM_CANCEL(系統取消) |
響應範例
{
"code": 0,
"message": "OK",
"data": [
{
"order_id": 12345,
"order_num": "P2P123456789",
"ad_id": "5f7c8b9d1a2b3c4d5e6f7g8h",
"status": "FINISHED",
"created_at": 1618456789000,
"finished_at": 1618466789000,
"confirm_due_at": 1618476789000,
"payment_due_at": 1618486789000,
"order_side": "BUY",
"price": "200000",
"base_ccy": "BTC",
"base_ccy_amount": "0.1",
"quote_ccy": "CNY",
"quote_ccy_amount": "20000",
"cancel_type": ""
},
],
"pagination": {
"total": 25,
"has_next": true
}
}
6、P2P廣告價格修改
接口信息
- URL路徑:/v2/p2p/modify-ads
- 請求方法:POST
- 介面描述:大量修改P2P廣告價格
- 權限要求:需要認證
請求參數
請求體
| 參數名 | 必填 | 類型 | 描述 |
| ads | 是 | Array | 廣告修改訊息數組 |
ads數組中的每個元素包含以下欄位:
| 參數名 | 必填 | 類型 | 描述 |
| ad_id | 是 | String | 廣告ID |
| price | 是 | Decimal | 新價格 |
請求範例
POST /v2/p2p/modify-ads HTTP/1.1
Host: api.coinex.com
Content-Type: application/json
{
"ads": [
{
"ad_id": "5f7c8b9d1a2b3c4d5e6f7g8h",
"price": "210000"
},
{
"ad_id": "5f7c8b9d1a2b3c4d5e6f7g9i",
"price": "11000"
}
]
}
響應參數
傳回每個廣告修改的結果數組,每個元素包含以下欄位:
| 參數名 | 類型 | 描述 |
| code | Integer | 結果代碼,0表示成功 |
| message | String | 結果訊息 |
| data | Object | 成功時回傳更新後的廣告訊息,失敗時為null |
響應範例
{
"code": 0,
"message": "OK",
"data": [
{
"code": 0,
"message": "OK",
"data": {
"ad_id": "5f7c8b9d1a2b3c4d5e6f7g8h",
"created_at": 1618456789000,
"updated_at": 1618556789000,
"ad_number": "AD123456789",
"ad_side": "BUY",
"base_ccy": "BTC",
"quote_ccy": "CNY",
"price": "210000",
"available_amount": "0.5",
"quote_min_limit": "500",
"quote_max_limit": "50000",
"status": "ONLINE"
}
},
{
"code": 11002,
"message": "adv not exists",
"data": null
}
]
}
7、P2P市場深度數據
接口信息
- URL路徑:/v2/p2p/market/depth
- 請求方法:GET
- 介面描述:取得P2P市場深度數據
- 權限要求:不需要認證
請求參數
查詢參數
| 參數名 | 必填 | 類型 | 描述 |
| base_ccy | 是 | String | 基礎貨幣 |
| quote_ccy | 是 | String | 計價貨幣 |
請求範例
GET /v2/p2p/market/depth?base_ccy=BTC"e_ccy=CNY HTTP/1.1 Host: api.coinex.com
響應參數
| 參數名 | 類型 | 描述 |
| base_ccy | String | 基礎貨幣 |
| quote_ccy | String | 計價貨幣 |
| index_price | String | 指數價格 |
| depth | Object | 深度數據 |
| depth.bids | Array | 買單深度 |
| depth.asks | Array | 賣單深度 |
深度数组中的每个元素包含以下字段:
| 參數名 | 類型 | 描述 |
| price | String | 價格 |
| amount | String | 數量 |
響應範例
{
"code": 0,
"message": "OK",
"data": {
"base_ccy": "BTC",
"quote_ccy": "CNY",
"index_price": "200000",
"depth": {
"bids": [
{
"price": "199000",
"amount": "1.5",
},
{
"price": "198000",
"amount": "2.0",
}
],
"asks": [
{
"price": "201000",
"amount": "1.0",
},
{
"price": "202000",
"amount": "1.8",
},
]
}
}
}