# CRYP 文件
## 版本紀錄
| 版本 | 修改內容 | 日期 |
| -------- | -------- | -------- |
| 1.0 | 初版 | 2023-03-09 |
| 1.1 | 新增錢包地址API.Response新增參數:公鑰 | 2023-03-10 |
| 1.2 | 金額相關參數,型態皆改為string | 2023-03-14 |
| 1.3 | Tx交易紀錄查詢API Response.status 新增狀態 0:待確認 | 2023-03-15 |
| 1.4 | 新增 8. ADA | 2023-04-12 |
| 1.5 | 新增 7.4. 各幣種備註 | 2023-04-12 |
| 1.6 | 交易紀錄通知API.Response.status新增類型: 0:鏈上交易確認中| 2023-05-31 |
| 1.7 | 新增 9. 查詢高度API | 2023-06-07 |
| 1.8 | 新增 10. SOL新增地址API | 2023-06-21 |
| 1.9 | 新增 11. 補資料API | 2023-07-27 |
## 1. 文件說明
### 1.1 名詞解釋
- **平台**
本文件所屬的接口平台。
- **請求URL**
API請求Domain。(視不同幣別提供對應URL)
- **商戶**
使用本文件的平台企業。
- **商戶類型**
平台給予商戶本身代碼
### 1.2 請求方式
- 依照各API採用方式進行交互。
- {coin_domainURL}: http://pre-cc.1-pay.co/
### 1.3 API 固定回傳格式
| 參數含意 | 參數名稱 | 說明 |
| -------- |:------ |:------- |
| 狀態 | status | API呼叫狀態<br>參考備註7-2. 交易狀態代碼 |
| 回傳資料 | data | 依各自API回傳不同資料 |
status:
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 狀態碼 | code | int | 狀態碼 |
| 訊息 | messages | string | 訊息 |
#### 回傳範例
```json=
{
"status":{
"code":0,
"messages":"success"
},
"data":{
...
}
}
```
## 2. 新增錢包地址
### 2-1. 請求方式
* `POST {coin_domainURL}/address`
### 2-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| -------- |:-------- |:-------- |:--------: |:-------- |
| 商戶類型 | merchant_id | string | ✔️ | 商戶類型 (例如: OP) |
| 鏈類型 | chain_type | string | ✔️ | 鏈類型<br>參考備註7-1. 幣別代碼 |
#### 輸入資料範例
```json=
{
"merchant_id": "OP",
"chain_type": "BSC"
}
```
### 2-3. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 地址 | address | string | 回傳的地址 |
| 公鑰 | public_key | string | 地址公鑰(明碼) |
| 私鑰 | secret_key | string | 地址私鑰(明碼) |
#### 回傳範例
```json=
{
"status":{
"code":0,
"messages":"success"
},
"data":{
"address":"address...",
"public_key":"0x434344d...",
"secret_key":"0x1234d..."
}
}
```
## 3. 提款
### 3-1. 請求方式
* `POST {coin_domainURL}/withdraw`
### 3-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| -------- |:-------- |:-------- |:--------:|:-------- |
| 商戶類型 | merchant_id | string | ✔️ | 商戶類型 (例如: OP)|
| 幣別 | crypto_type | string| ✔️ |幣別 (例如:BNB)<br>參考備註7-1. 幣別代碼 |
| 鏈類型 | chain_type | string | ✔️ | 鏈類型<br>參考備註7-1. 幣別代碼 |
| 地址私鑰 | secret_key | string | ✔️ | 地址私鑰 |
| 地址 | from_address | string | ✔️ | 地址 |
| 提款地址 | to_address | string | ✔️ | 提款地址 |
| 數量 | amount | string | ✔️ | 提幣數量 (例如:0.001)<br>精度:小數後八位 |
| 備註 | memo | string | ❌ |若該鏈需要memo,則需填入 |
#### 輸入資料範例
```json=
{
"merchant_id":"OP",
"crypto_type":"BNB",
"chain_type": "BSC",
"secret_key":"asd4432",
"from_address":"0x128D99cFD664065940c2F5d9d425b3937622d008",
"to_address":"0xAAAD99cFD664065940c2F5d9d425b3937622d008",
"amount": "0.0001",
"memo": ""
}
```
### 3-3. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| txhash | tx_hash | string | 鏈上Tx Hash |
| 備註 | memo | string |備註 |
#### 回傳範例
```json=
{
"status":{
"code":0,
"messages":"success"
},
"data":{
"tx_hash":"abcderf1423554...",
"memo": ""
}
}
```
## 4. 鏈上餘額查詢
`單一幣種查詢`
### 4-1. 請求方式
* `GET {coin_domainURL}/{address}/balance/{crypto_type}?chain_type={chain_type}`
### 4-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| ---------- |:---------- |:---------- |:----------:|:----------|
| 交易幣別 | crypto_type | string | ✔️ |幣別 (例如:BNB)<br>參考備註7-1. 幣別代碼 |
| 鏈類型 | chain_type | string | ✔️ | 鏈類型<br>參考備註7-1. 幣別代碼 |
| 地址 | address| string | ✔️ |地址 |
### 4-3. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 餘額 | balance | string | 該地址鏈上餘額 |
#### 回傳範例
```json=
{
"status":{
"code":0,
"messages":"success"
},
"data":{
"balance": "0.0001"
}
}
```
## 5. Tx交易紀錄查詢
### 5-1. 請求方式
* `GET {coin_domainURL}/tx/{txHash}?{crypto_type}&{chain_type}`
### 5-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| ---------- |:---------- |:---------- |:----------:|:----------|
| 交易幣別 | crypto_type | string | ✔️ |幣別 (例如:BNB)<br>參考備註7-1. 幣別代碼 |
| 鏈類型 | chain_type | string | ✔️ | 鏈類型<br>參考備註7-1. 幣別代碼 |
| TxHash | tx_hash| string | ✔️ |鏈上Tx Hash |
### 5-3. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 區塊高度 | block_height | int | 此筆tx的交易區塊高度 |
| TxHash | tx_hash | string | 鏈上交易TxHash |
| 交易幣別 | crypto_type | string |幣別 (例如:BNB)<br>參考備註7-1. 幣別代碼 |
| 鏈類型 | chain_type | string | 鏈類型<br>參考備註7-1. 幣別代碼 |
| 來源地址 | from_address | string | 來源地址 |
| 目的地址 | to_address | string | 目的地址 |
| 數量 | amount | string | 金額 |
| 手續費 | fee | string | 交易手續費 |
| 手續費幣別 | fee_crypto | string | 手續費使用幣別 |
| 狀態 | status | int | 0:待確認 1: 鏈上交易成功, 2: 鏈上交易失敗 |
| 備註 | memo | string | 若該鏈有支援備註功能,會有備註訊息 |
#### 回傳範例
```json=
{
"status":{
"code":0,
"messages":"success"
},
"data":{
"block_height":194049,
"tx_hash":"0x12435...",
"chain_type":"BSC",
"crypto_type":"BNB",
"from_address":"0xaaa....",
"to_address":"0xbbb...",
"amount":"0.005",
"fee":"0.00001",
"fee_crypto":"BNB",
"status": 1,
"memo":""
}
}
```
## 6. 交易紀錄通知
`當鏈上有新交易時,會將交易內容逐筆通知給商戶`
### 6-1. 請求方式
* `POST {op_domainURL}/transaction`
### 6-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| ---------- |:---------- |:---------- |:----------:|:----------|
| 交易類型 | tx_type | int | ✔️ | 1: 充值, 2: 提幣 |
| 區塊高度 | block_height | int | ✔️ | 此筆tx的交易區塊高度 |
| TxHash | tx_hash | string | ✔️ | 鏈上交易TxHash |
| 幣別 | crypto_type | string | ✔️ |幣別 (例如:BNB)<br>參考備註7-1. 幣別代碼 |
| 鏈類型 | chain_type| string | ✔️ |鏈類型 (例如:BSC)<br>參考備註7-1. 幣別代碼 |
| 來源地址 | from_address | string | ✔️ | 來源地址 |
| 目的地址 | to_address | string | ✔️ | 目的地址 |
| 數量 | amount | string | ✔️ | 金額 |
| 手續費 | fee | string | ✔️ | 交易手續費 |
| 手續費幣別 | fee_crypto | string | ✔️ | 手續費使用幣別 |
| 狀態 | status | int | ✔️ | 0:鏈上交易確認中 1: 鏈上交易成功, 2: 鏈上交易失敗 |
| 備註 | memo | string | ❌ | 若該鏈有支援備註功能,會有備註訊息 |
### 6-3. Response
`若商戶確認該款項後,再回傳以下格式`
| 參數含意 | 參數名稱 | 說明 |
| -------- |:------ |:------- |
| 狀態 | status | 只回傳成功 |
| 回傳資料 | data | 留空即可 |
status:
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 狀態碼 | code | int | 固定為 0 |
| 訊息 | messages | string | 固定為 success |
#### 回傳範例
```json=
{
"status":{
"code":0,
"messages":"success"
},
"data":{}
}
```
## 7. 備註
### 7-1. 幣別代碼(幣別會再補齊)
| 鏈類型<br> chain_type | 幣種<br>crypto_type | 智能合约<br>Contract |
| --- | --- | --- |
| ETH | ETH | USDC |
| POLYGON | MATIC | LINK |
| BSC | BNB | BNX , XRP |
| TRON | TRX | USDT |
| OPTIMISM | OP | ETH |
| BTC | BTC | -- |
| ARBITRUM | ETH | USDC |
| ADA | ADA | -- |
| BCH | BCH | -- |
| DOT | DOT | -- |
| FLOW | FLOW | -- |
| SOL | SOL | ACS , BONK |
| LTC | LTC | -- |
| ETC | ETC | -- |
| AVAX-CChain | AVAX | -- |
| AVAX-XChain | AVAX | FITFI , GMX |
| XTZ | XTZ | -- |
| XLM | XLM | -- |
| ONE | ONE | -- |
| NEO | FLM | GAS |
| LUNC | THETA | -- |
| ZEN | ZEN | -- |
| NEAR | NEAR | -- |
| XRP | XRP | -- |
| ASTAR | ASTR | -- |
| ALGO | ALGO | -- |
| APTOS | APT | ALT |
| ARWEAVE | AR | -- |
| AZERO | AZERO | -- |
| LUNC | LUNA | USTC |
| BSV | BSV | -- |
| CFX | CFX | -- |
| DASH | DASH | -- |
| XPC | XPC | -- |
| MINA | MINA | -- |
| SXP | SXP | -- |
| DOGE | DOGE | -- |
### 7-2. 交易狀態代碼
| 代碼 | 訊息 | 說明 |
| -------- | -------- | -------- |
| 200 | success | 成功 |
| 10400 | internal error | 失敗 |
| 10401 | param invalid | 參數錯誤 |
| 10402 | balance insufficient | 可用餘額不足 |
| 10403 | tx not found | 找不到此Tx紀錄 |
| 10404 | address invalid length | 地址長度錯誤 |
| 10405 | crypto not found | 無可用幣種 |
| 10406 | transaction fee insufficient | 交易手續費不足 |
| 10407 | withdraw failed | 交易失敗 |
### 7-3. 各鏈別請求路徑(coin_domain)
| 鏈類型<br>chain_type | Dev | Pre&OL |
| --- | --- | --- |
| ETH | {domain}:30000 | {domain}/cryp-eth |
| POLYGON | {domain}:30001 | {domain}/cryp-polygon |
| BSC | {domain}:30002 | {domain}/cryp-bsc |
| TRON | {domain}:30003 | {domain}/cryp-tron |
| Optimism | {domain}:30004 | {domain}/cryp-optimism |
| BTC | {domain}:30005 | {domain}/cryp-btc |
| ARBITRUM | {domain}:30006 | {domain}/cryp-arbitrum |
| ADA | {domain}:30007 | {domain}/cryp-ada |
| AVAX-CCHAIN | {domain}:30008 | {domain}/cryp-avax-cchain |
| BCH | {domain}:30009 | {domain}/cryp-bch |
| DOT | {domain}:30010 | {domain}/cryp-dot |
| FLOW | {domain}:30011 | {domain}/cryp-flow |
| SOL | {domain}:30012 | {domain}/cryp-sol |
| LTC | {domain}:30013 | {domain}/cryp-ltc |
| ETC | {domain}:30014 | {domain}/cryp-etc |
| XTZ | {domain}:30015 | {domain}/cryp-xtz |
| XLM| {domain}:30016 | {domain}/cryp-xlm |
| ONE| {domain}:30017 | {domain}/cryp-one |
| THETA| {domain}:30018 | {domain}/cryp-theta |
| AVAX-XCHAIN| {domain}:30019 | {domain}/cryp-avax-xchain |
| NEO| {domain}:30020 | {domain}/cryp-neo |
| ZEN| {domain}:30022 | {domain}/cryp-zen |
| NEAR| {domain}:30023 | {domain}/cryp-near |
| XRP| {domain}:30024 | {domain}/cryp-xrp |
| ASTAR| {domain}:30025 | {domain}/cryp-astar |
| ALGO| {domain}:30026 | {domain}/cryp-algo |
| APTOS| {domain}:30027 | {domain}/cryp-aptos |
| ARWEAVE| {domain}:30028 | {domain}/cryp-arweave |
| AZERO| {domain}:30029 | {domain}/cryp-azero |
| LUNC| {domain}:30031 | {domain}/cryp-lunc |
| CFX| {domain}:30032 | {domain}/cryp-conflux |
| DASH| {domain}:30033 | {domain}/cryp-dash |
| XPC| {domain}:30034 | {domain}/cryp-xpc |
| BSV| {domain}:30035 | {domain}/cryp-bsv |
| MINA| {domain}:30036 | {domain}/cryp-mina |
| SXP| {domain}:30037 | {domain}/cryp-sxp |
| CASPER| {domain}:30039 | {domain}/cryp-casper |
| DOGE| {domain}:30038 | {domain}/cryp-doge |
| DGB| {domain}:30040 | {domain}/cryp-digibyte |
| ETHW| {domain}:30041 | {domain}/cryp-ethereumpow |
| FLR| {domain}:30042 | {domain}/cryp-flare |
| CORE| {domain}:30043 | {domain}/cryp-coredao |
| HEDERA| {domain}:30044 | {domain}/cryp-hedera |
### 7.4. 各幣種備註
#### FLOW
* 新增錢包地址API,回傳需等待約10秒
* 提幣時地址餘額需大於0.003
## 8. ADA
### 8-1. 新增錢包地址
#### 8-1-1. 請求方式
* `POST {coin_domainURL}/ada/address`
#### 8-1-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| -------- |:-------- |:-------- |:--------: |:-------- |
| 商戶類型 | merchant_id | string | ✔️ | 商戶類型 (例如: OP) |
| 鏈類型 | chain_type | string | ✔️ | 鏈類型<br>參考備註7-1. 幣別代碼 |
##### 輸入資料範例
```json=
{
"merchant_id": "OP",
"chain_type": "ADA"
}
```
#### 8-1-3. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 錢包ID | wallet_id | string | 錢包ID |
| 地址 | address | string | 回傳的地址 |
| 公鑰 | public_key | string | 地址公鑰(明碼) |
| 私鑰 | secret_key | string | 地址私鑰(明碼) |
##### 回傳範例
```json=
{
"status":{
"code":0,
"messages":"success"
},
"data":{
"wallet_id":"id...",
"address":"address...",
"public_key":"0x434344d...",
"secret_key":"0x1234d..."
}
}
```
### 8-2. 提款
#### 8-2-1. 請求方式
* `POST {coin_domainURL}/ada/withdraw`
#### 8-2-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| -------- |:-------- |:-------- |:--------:|:-------- |
| 商戶類型 | merchant_id | string | ✔️ | 商戶類型 (例如: OP)|
| 幣別 | crypto_type | string| ✔️ |幣別 (例如:BNB)<br>參考備註7-1. 幣別代碼 |
| 鏈類型 | chain_type | string | ✔️ | 鏈類型<br>參考備註7-1. 幣別代碼 |
| 錢包ID | wallet_id | string | ✔️ | 錢包ID |
| 地址私鑰 | secret_key | string | ✔️ | 地址私鑰 |
| 地址 | from_address | string | ✔️ | 地址 |
| 提款地址 | to_address | string | ✔️ | 提款地址 |
| 數量 | amount | string | ✔️ | 提幣數量 (例如:0.001)<br>精度:小數後八位 |
##### 輸入資料範例
```json=
{
"merchant_id":"OP",
"crypto_type":"ADA",
"chain_type": "ADA",
"wallet_id": "id....",
"secret_key":"asd4432",
"from_address":"0x128D99cFD664065940c2F5d9d425b3937622d008",
"to_address":"0xAAAD99cFD664065940c2F5d9d425b3937622d008",
"amount": "0.0001",
}
```
#### 8-2-3. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| txhash | tx_hash | string | 鏈上Tx Hash |
| 備註 | memo | string |備註 |
##### 回傳範例
```json=
{
"status":{
"code":0,
"messages":"success"
},
"data":{
"tx_hash":"abcderf1423554...",
"memo": ""
}
}
```
### 8-3. 鏈上餘額查詢
`單一幣種查詢`
#### 8-3-1. 請求方式
* `GET {coin_domainURL}/ada/{wallet_id}/balance/{crypto_type}?{chain_type}`
#### 8-3-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| ---------- |:---------- |:---------- |:----------:|:----------|
| 交易幣別 | crypto_type | string | ✔️ |幣別 (例如:BNB)<br>參考備註7-1. 幣別代碼 | 錢包ID | wallet_id | string | ✔️ | 錢包ID |
| 鏈類型 | chain_type | string | ✔️ | 鏈類型<br>參考備註7-1. 幣別代碼 |
| 錢包ID | wallet_id | string | ✔️ | 錢包ID |
#### 8-3-3. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 餘額 | balance | string | 該錢包鏈上餘額 |
##### 回傳範例
```json=
{
"status":{
"code":0,
"messages":"success"
},
"data":{
"balance": "0.0001"
}
}
```
### 8-4. Tx交易紀錄查詢
#### 8-4-1. 請求方式
* `GET {coin_domainURL}/ada/tx/{txHash}?{crypto_type}&{chain_type}`
#### 8-4-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| ---------- |:---------- |:---------- |:----------:|:----------|
| 交易幣別 | crypto_type | string | ✔️ |幣別 (例如:BNB)<br>參考備註7-1. 幣別代碼 |
| 鏈類型 | chain_type | string | ✔️ | 鏈類型<br>參考備註7-1. 幣別代碼 |
| TxHash | tx_hash| string | ✔️ |鏈上Tx Hash |
#### 8-4-3. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 區塊高度 | block_height | int | 此筆tx的交易區塊高度 |
| TxHash | tx_hash | string | 鏈上交易TxHash |
| 交易幣別 | crypto_type | string |幣別 (例如:BNB)<br>參考備註7-1. 幣別代碼 |
| 鏈類型 | chain_type | string | 鏈類型<br>參考備註7-1. 幣別代碼 |
| 來源地址 | from_address | []string | 來源地址 |
| 目的地址 | to_address | string | 目的地址 |
| 數量 | amount | string | 金額 |
| 手續費 | fee | string | 交易手續費 |
| 手續費幣別 | fee_crypto | string | 手續費使用幣別 |
| 狀態 | status | int | 0:待確認 1: 鏈上交易成功, 2: 鏈上交易失敗 |
| 備註 | memo | string | 若該鏈有支援備註功能,會有備註訊息 |
#### 回傳範例
```json=
{
"status":{
"code":0,
"messages":"success"
},
"data":{
"block_height":194049,
"tx_hash":"0x12435...",
"chain_type":"BSC",
"crypto_type":"BNB",
"from_address": {
"0xaaa....",
},
"to_address":"0xbbb...",
"amount":"0.005",
"fee":"0.00001",
"fee_crypto":"BNB",
"status": 1,
"memo":""
}
}
```
### 8-5. 交易紀錄通知
`當鏈上有新交易時,會將交易內容逐筆通知給商戶`
#### 8-5-1. 請求方式
* `POST {op_domainURL}/ada/transaction`
#### 8-5-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| ---------- |:---------- |:---------- |:----------:|:----------|
| 交易類型 | tx_type | int | ✔️ | 1: 充值, 2: 提幣 |
| 區塊高度 | block_height | int | ✔️ | 此筆tx的交易區塊高度 |
| TxHash | tx_hash | string | ✔️ | 鏈上交易TxHash |
| 幣別 | crypto_type | string | ✔️ |幣別 (例如:BNB)<br>參考備註7-1. 幣別代碼 |
| 鏈類型 | chain_type| string | ✔️ |鏈類型 (例如:BSC)<br>參考備註7-1. 幣別代碼 |
| 來源地址 | from_address | []string | ✔️ | 來源地址 |
| 目的地址 | to_address | string | ✔️ | 目的地址 |
| 數量 | amount | string | ✔️ | 金額 |
| 手續費 | fee | string | ✔️ | 交易手續費 |
| 手續費幣別 | fee_crypto | string | ✔️ | 手續費使用幣別 |
| 狀態 | status | int | ✔️ | 0:鏈上交易確認中 1: 鏈上交易成功, 2: 鏈上交易失敗 |
| 備註 | memo | string | ❌ | 若該鏈有支援備註功能,會有備註訊息 |
#### 8-5-3. Response
`若商戶確認該款項後,再回傳以下格式`
| 參數含意 | 參數名稱 | 說明 |
| -------- |:------ |:------- |
| 狀態 | status | 只回傳成功 |
| 回傳資料 | data | 留空即可 |
status:
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 狀態碼 | code | int | 固定為 0 |
| 訊息 | messages | string | 固定為 success |
##### 回傳範例
```json=
{
"status":{
"code":0,
"messages":"success"
},
"data":{}
}
```
## 9. 查詢高度API
### 9-1. 請求方式
* `GET {coin_domainURL}/blockHeight`
### 9-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| -------- |:-------- |:-------- |:--------:|:-------- |
| 無 |
#### 輸入資料範例
```json=
{}
```
### 9-3. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| db區塊高度 | db_block_height | int | db區塊高度 |
| 節點區塊高度 | node_block_height | int | 節點區塊高度 |
| 高度差距 | diff | int | 高度差距 |
#### 回傳範例
```json=
{
"status": {
"code": 200,
"messages": "success"
},
"data": {
"db_block_height": 20761888,
"node_block_height": 20761887,
"diff": -1
}
}
```
## 10. SOL
### 10-1. 新增錢包地址
#### 10-1-1. 請求方式
* `POST {coin_domainURL}/address`
#### 10-1-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| -------- |:-------- |:-------- |:--------: |:-------- |
| 商戶類型 | merchant_id | string | ✔️ | 商戶類型 (例如: OP) |
| 鏈類型 | chain_type | string | ✔️ | 鏈類型<br>參考備註7-1. 幣別代碼 |
| 幣別 | crypto_type | string | ✔️ | 幣別 |
##### 輸入資料範例
```json=
{
"merchant_id": "OP",
"chain_type": "SOL",
"crypto_type": "SOL"
}
```
#### 10-1-3. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 錢包ID | wallet_id | string | 錢包ID |
| 地址 | address | string | 回傳的地址 |
| 公鑰 | public_key | string | 地址公鑰(明碼) |
| 私鑰 | secret_key | string | 地址私鑰(明碼) |
##### 回傳範例
```json=
{
"status":{
"code":0,
"messages":"success"
},
"data":{
"wallet_id":"id...",
"address":"address...",
"public_key":"0x434344d...",
"secret_key":"0x1234d..."
}
}
```
## 11. 補資料API
### 11-1. 依區塊高度
#### 11-1-1. 請求方式
* `POST {coin_domainURL}/{cryp-type}/block/{blockHeight}/transaction`
#### 11-1-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| -------- |:-------- |:-------- |:--------: |:-------- |
| 區塊高度 | blockHeight | int | ✔️ | 欲補資料的區塊高度 |
#### 11-1-3. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 為該鏈db.transaction |||
##### 回傳範例
```json=
{
"status": {
"code": 200,
"messages": "success"
},
"data": [
{
"ID": 0,
"CreateTime": 0,
"UpdateTime": 0,
"TxType": 1,
"BlockHeight": 16538528,
"TxHash": "0xf464cdfc56b817a0e7f9b570d33b432ef5a331f4a1f751cb9e484153f01d1eb9",
"CryptoType": "DOT",
"ChainType": "DOT",
"FromAddress": "1qnJN7FViy3HZaxZK9tGAA71zxHSBeUweirKqCaox4t8GT7",
"ToAddress": "15oYecp2mfsJtPeRSZLcdmtvSWid2NizBJKjBL1Dc5DonnCH",
"Amount": "152.82933894",
"Fee": "0.0207077217",
"FeeCrypto": "",
"Confirm": 0,
"Status": 0,
"Memo": "",
"NotifyStatus": 0,
"RiskControlStatus": 0
}
]
}
```
### 11-2. 依地址
```
cryp-ada, cryp-sol, cryp-aptos
視排程:監聽區塊高度更新方式,因上述服務是以地址更新高度交易資料,故才使用這隻API
```
#### 11-2-1. 請求方式
* `POST {coin_domainURL}/block/{address}/transaction`
#### 11-2-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| -------- |:-------- |:-------- |:--------: |:-------- |
| 地址 | address | int | ✔️ | 欲補資料的地址 |
#### 11-1-3. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 為該鏈db.transaction |||
##### 回傳範例
```json=
{
"status": {
"code": 200,
"messages": "success"
},
"data": [
{
"ID": 0,
"CreateTime": 0,
"UpdateTime": 0,
"TxType": 1,
"BlockHeight": 16538528,
"TxHash": "0xf464cdfc56b817a0e7f9b570d33b432ef5a331f4a1f751cb9e484153f01d1eb9",
"CryptoType": "DOT",
"ChainType": "DOT",
"FromAddress": "1qnJN7FViy3HZaxZK9tGAA71zxHSBeUweirKqCaox4t8GT7",
"ToAddress": "15oYecp2mfsJtPeRSZLcdmtvSWid2NizBJKjBL1Dc5DonnCH",
"Amount": "152.82933894",
"Fee": "0.0207077217",
"FeeCrypto": "",
"Confirm": 0,
"Status": 0,
"Memo": "",
"NotifyStatus": 0,
"RiskControlStatus": 0
}
]
}
```
## 12. 手續費(BTC-LIKE)
### 12-1. 修改手續費
#### 12-1-1. 請求方式
* `POST {coin_domainURL}/{cryp-type}/fee/update`
### 12-2. Request
| 參數含意 | 參數名稱 | 參數類型 | 必填 | 說明 |
| -------- |:-------- |:-------- |:--------: |:-------- |
| BTC手續費單位 | satoshi | int | ✔️ | 所需耗費的gas |
#### 12-2-1.
| 參數含意 | 參數名稱 | 說明 |
| -------- |:------ |:------- |
| 狀態 | status | 只回傳成功 |
| 回傳資料 | data | 留空即可 |
#### 12-2-2. Response.data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| 為該鏈db.transaction |||
##### 回傳範例
```json=
{
"status": {
"code": 200,
"messages": "success"
},
"data": []
}
```
### 12-2. 查詢手續費
#### 12-2-1. 請求方式
* `GET {coin_domainURL}/{cryp-type}/fee`
#### 12-2-2. Response.Data
| 參數含意 | 參數名稱 | 參數類型 | 說明 |
| -------- |:------ |:------ |:------- |
| BTC手續費單位 | satoshi | string | BTC最小單位 |
| BTC價格 | btc | string | BTC單位 |
```json=
{
"status": {
"code": 200,
"messages": "success"
},
"data": {
"satoshi": "45",
"btc": "0.00000045"
}
}
```