All URIs are relative to https://api.gateio.ws/api/v4
Method | HTTP request | Description |
---|---|---|
ListFuturesContracts | Get /futures/{settle}/contracts | List all futures contracts |
GetFuturesContract | Get /futures/{settle}/contracts/{contract} | Get a single contract |
ListFuturesOrderBook | Get /futures/{settle}/order_book | Futures order book |
ListFuturesTrades | Get /futures/{settle}/trades | Futures trading history |
ListFuturesCandlesticks | Get /futures/{settle}/candlesticks | Get futures candlesticks |
ListFuturesTickers | Get /futures/{settle}/tickers | List futures tickers |
ListFuturesFundingRateHistory | Get /futures/{settle}/funding_rate | Funding rate history |
ListFuturesInsuranceLedger | Get /futures/{settle}/insurance | Futures insurance balance history |
ListFuturesAccounts | Get /futures/{settle}/accounts | Query futures account |
ListFuturesAccountBook | Get /futures/{settle}/account_book | Query account book |
ListPositions | Get /futures/{settle}/positions | List all positions of a user |
GetPosition | Get /futures/{settle}/positions/{contract} | Get single position |
UpdatePositionMargin | Post /futures/{settle}/positions/{contract}/margin | Update position margin |
UpdatePositionLeverage | Post /futures/{settle}/positions/{contract}/leverage | Update position leverage |
UpdatePositionRiskLimit | Post /futures/{settle}/positions/{contract}/risk_limit | Update position risk limit |
ListFuturesOrders | Get /futures/{settle}/orders | List futures orders |
CreateFuturesOrder | Post /futures/{settle}/orders | Create a futures order |
CancelFuturesOrders | Delete /futures/{settle}/orders | Cancel all `open` orders matched |
GetFuturesOrder | Get /futures/{settle}/orders/{order_id} | Get a single order |
CancelFuturesOrder | Delete /futures/{settle}/orders/{order_id} | Cancel a single order |
GetMyTrades | Get /futures/{settle}/my_trades | List personal trading history |
ListPositionClose | Get /futures/{settle}/position_close | List position close history |
ListLiquidates | Get /futures/{settle}/liquidates | List liquidation history |
ListPriceTriggeredOrders | Get /futures/{settle}/price_orders | List all auto orders |
CreatePriceTriggeredOrder | Post /futures/{settle}/price_orders | Create a price-triggered order |
CancelPriceTriggeredOrderList | Delete /futures/{settle}/price_orders | Cancel all open orders |
GetPriceTriggeredOrder | Get /futures/{settle}/price_orders/{order_id} | Get a single order |
CancelPriceTriggeredOrder | Delete /futures/{settle}/price_orders/{order_id} | Cancel a single order |
[]Contract ListFuturesContracts(ctx, settle)
List all futures contracts
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.Background()
settle := btc // string - Settle currency
result, _, err := client.FuturesApi.ListFuturesContracts(ctx, settle)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
No authorization required
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
Contract GetFuturesContract(ctx, settle, contract)
Get a single contract
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
contract | string | Futures contract |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.Background()
settle := btc // string - Settle currency
contract := "BTC_USD" // string - Futures contract
result, _, err := client.FuturesApi.GetFuturesContract(ctx, settle, contract)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
No authorization required
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
FuturesOrderBook ListFuturesOrderBook(ctx, settle, contract, optional)
Futures order book
Bids will be sorted by price from high to low, while asks sorted reversely
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
contract | string | Futures contract | |
optional | ListFuturesOrderBookOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a ListFuturesOrderBookOpts struct
Name | Type | Description | Notes |
---|---|---|---|
interval | optional.String | Order depth. 0 means no aggregation is applied. default to 0 | [default to 0] |
limit | optional.Int32 | Maximum number of order depth data in asks or bids | [default to 10] |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.Background()
settle := btc // string - Settle currency
contract := "BTC_USD" // string - Futures contract
result, _, err := client.FuturesApi.ListFuturesOrderBook(ctx, settle, contract, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
No authorization required
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]FuturesTrade ListFuturesTrades(ctx, settle, contract, optional)
Futures trading history
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
contract | string | Futures contract | |
optional | ListFuturesTradesOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a ListFuturesTradesOpts struct
Name | Type | Description | Notes |
---|---|---|---|
limit | optional.Int32 | Maximum number of records returned in one list | [default to 100] |
lastId | optional.String | Specify list staring point using the id of last record in previous list-query results This parameter is deprecated. Use `from` and `to` instead to limit time range | |
from | optional.Int64 | Specify starting time in Unix seconds. If not specified, `to` and `limit` will be used to limit response items. If items between `from` and `to` are more than `limit`, only `limit` number will be returned. | |
to | optional.Int64 | Specify end time in Unix seconds, default to current time |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.Background()
settle := btc // string - Settle currency
contract := "BTC_USD" // string - Futures contract
result, _, err := client.FuturesApi.ListFuturesTrades(ctx, settle, contract, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
No authorization required
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]FuturesCandlestick ListFuturesCandlesticks(ctx, settle, contract, optional)
Get futures candlesticks
Return specified contract candlesticks. If prefix contract
with mark_
, the contract's mark price candlesticks are returned; if prefix with index_
, index price candlesticks will be returned. Maximum of 2000 points are returned in one query. Be sure not to exceed the limit when specifying from
, to
and interval
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
contract | string | Futures contract | |
optional | ListFuturesCandlesticksOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a ListFuturesCandlesticksOpts struct
Name | Type | Description | Notes |
---|---|---|---|
from | optional.Int64 | Start time of candlesticks, formatted in Unix timestamp in seconds. Default to`to - 100 * interval` if not specified | |
to | optional.Int64 | End time of candlesticks, formatted in Unix timestamp in seconds. Default to current time | |
limit | optional.Int32 | Maximum recent data points returned. `limit` is conflicted with `from` and `to`. If either `from` or `to` is specified, request will be rejected. | [default to 100] |
interval | optional.String | Interval time between data points | [default to 5m] |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.Background()
settle := btc // string - Settle currency
contract := "BTC_USD" // string - Futures contract
result, _, err := client.FuturesApi.ListFuturesCandlesticks(ctx, settle, contract, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
No authorization required
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]FuturesTicker ListFuturesTickers(ctx, settle, optional)
List futures tickers
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
optional | ListFuturesTickersOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a ListFuturesTickersOpts struct
Name | Type | Description | Notes |
---|---|---|---|
contract | optional.String | Futures contract, return related data only if specified |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.Background()
settle := btc // string - Settle currency
result, _, err := client.FuturesApi.ListFuturesTickers(ctx, settle, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
No authorization required
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]FundingRateRecord ListFuturesFundingRateHistory(ctx, settle, contract, optional)
Funding rate history
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
contract | string | Futures contract | |
optional | ListFuturesFundingRateHistoryOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a ListFuturesFundingRateHistoryOpts struct
Name | Type | Description | Notes |
---|---|---|---|
limit | optional.Int32 | Maximum number of records returned in one list | [default to 100] |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.Background()
settle := btc // string - Settle currency
contract := "BTC_USD" // string - Futures contract
result, _, err := client.FuturesApi.ListFuturesFundingRateHistory(ctx, settle, contract, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
No authorization required
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]InsuranceRecord ListFuturesInsuranceLedger(ctx, settle, optional)
Futures insurance balance history
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
optional | ListFuturesInsuranceLedgerOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a ListFuturesInsuranceLedgerOpts struct
Name | Type | Description | Notes |
---|---|---|---|
limit | optional.Int32 | Maximum number of records returned in one list | [default to 100] |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.Background()
settle := btc // string - Settle currency
result, _, err := client.FuturesApi.ListFuturesInsuranceLedger(ctx, settle, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
No authorization required
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
FuturesAccount ListFuturesAccounts(ctx, settle)
Query futures account
Name | Type | Description | Notes |
---|---|---|---|
<<<<<<< HEAD |
contract | optional.String| Futures contract, return related data only if specified | order | optional.Int32| Futures order ID, return related data only if specified | limit | optional.Int32| Maximum number of record returned in one list | [default to 100] offset | optional.Int32| List offset, starting from 0 | [default to 0] lastId | optional.String| Specify list staring point using the `id` of last record in previous list-query results | countTotal | optional.Int32| Whether to return total number matched. Default to 0(no return) | [default to 0]
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. settle | string| Settle currency | [default to btc]
upstream/master
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
result, _, err := client.FuturesApi.ListFuturesAccounts(ctx, settle)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]FuturesAccountBook ListFuturesAccountBook(ctx, settle, optional)
Query account book
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
optional | ListFuturesAccountBookOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a ListFuturesAccountBookOpts struct
Name | Type | Description | Notes |
---|---|---|---|
limit | optional.Int32 | Maximum number of records returned in one list | [default to 100] |
from | optional.Int64 | Start timestamp | |
to | optional.Int64 | End timestamp | |
type_ | optional.String | Changing Type: - dnw: Deposit & Withdraw - pnl: Profit & Loss by reducing position - fee: Trading fee - refr: Referrer rebate - fund: Funding - point_dnw: POINT Deposit & Withdraw - point_fee: POINT Trading fee - point_refr: POINT Referrer rebate |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
result, _, err := client.FuturesApi.ListFuturesAccountBook(ctx, settle, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]Position ListPositions(ctx, settle)
List all positions of a user
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
result, _, err := client.FuturesApi.ListPositions(ctx, settle)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
Position GetPosition(ctx, settle, contract)
Get single position
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
contract | string | Futures contract |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
contract := "BTC_USD" // string - Futures contract
result, _, err := client.FuturesApi.GetPosition(ctx, settle, contract)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
Position UpdatePositionMargin(ctx, settle, contract, change)
Update position margin
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
contract | string | Futures contract | |
change | string | Margin change. Use positive number to increase margin, negative number otherwise. |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
contract := "BTC_USD" // string - Futures contract
change := "0.01" // string - Margin change. Use positive number to increase margin, negative number otherwise.
result, _, err := client.FuturesApi.UpdatePositionMargin(ctx, settle, contract, change)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
Position UpdatePositionLeverage(ctx, settle, contract, leverage)
Update position leverage
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
contract | string | Futures contract | |
leverage | string | New position leverage |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
contract := "BTC_USD" // string - Futures contract
leverage := "10" // string - New position leverage
result, _, err := client.FuturesApi.UpdatePositionLeverage(ctx, settle, contract, leverage)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
Position UpdatePositionRiskLimit(ctx, settle, contract, riskLimit)
Update position risk limit
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
contract | string | Futures contract | |
riskLimit | string | New position risk limit |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
contract := "BTC_USD" // string - Futures contract
riskLimit := "10" // string - New position risk limit
result, _, err := client.FuturesApi.UpdatePositionRiskLimit(ctx, settle, contract, riskLimit)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]FuturesOrder ListFuturesOrders(ctx, settle, contract, status, optional)
List futures orders
Zero-fill order cannot be retrieved 60 seconds after cancellation
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
contract | string | Futures contract | |
status | string | List orders based on status | |
optional | ListFuturesOrdersOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a ListFuturesOrdersOpts struct
Name | Type | Description | Notes |
---|---|---|---|
limit | optional.Int32 | Maximum number of records returned in one list | [default to 100] |
offset | optional.Int32 | List offset, starting from 0 | [default to 0] |
lastId | optional.String | Specify list staring point using the `id` of last record in previous list-query results | |
countTotal | optional.Int32 | Whether to return total number matched. Default to 0(no return) | [default to 0] |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
contract := "BTC_USD" // string - Futures contract
status := "open" // string - List orders based on status
result, _, err := client.FuturesApi.ListFuturesOrders(ctx, settle, contract, status, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
FuturesOrder CreateFuturesOrder(ctx, settle, futuresOrder)
Create a futures order
Zero-fill order cannot be retrieved 60 seconds after cancellation
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
futuresOrder | FuturesOrder |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
futuresOrder := gateapi.FuturesOrder{} // FuturesOrder -
result, _, err := client.FuturesApi.CreateFuturesOrder(ctx, settle, futuresOrder)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: application/json
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]FuturesOrder CancelFuturesOrders(ctx, settle, contract, optional)
Cancel all open
orders matched
Zero-fill order cannot be retrieved 60 seconds after cancellation
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
contract | string | Futures contract | |
optional | CancelFuturesOrdersOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a CancelFuturesOrdersOpts struct
Name | Type | Description | Notes |
---|---|---|---|
side | optional.String | All bids or asks. Both included in not specified |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
contract := "BTC_USD" // string - Futures contract
result, _, err := client.FuturesApi.CancelFuturesOrders(ctx, settle, contract, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
FuturesOrder GetFuturesOrder(ctx, settle, orderId)
Get a single order
Zero-fill order cannot be retrieved 60 seconds after cancellation
Name | Type | Description | Notes |
---|---|---|---|
<<<<<<< HEAD |
limit | optional.Int32| Maximum number of record returned in one list | [default to 100] offset | optional.Int32| List offset, starting from 0 | [default to 0] lastId | optional.String| Specify list staring point using the `id` of last record in previous list-query results | countTotal | optional.Int32| Whether to return total number matched. Default to 0(no return) | [default to 0]
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. settle | string| Settle currency | [default to btc] orderId | string| ID returned on order successfully being created |
upstream/master
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
orderId := "12345" // string - ID returned on order successfully being created
result, _, err := client.FuturesApi.GetFuturesOrder(ctx, settle, orderId)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
FuturesOrder CancelFuturesOrder(ctx, settle, orderId)
Cancel a single order
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
orderId | string | ID returned on order successfully being created |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
orderId := "12345" // string - ID returned on order successfully being created
result, _, err := client.FuturesApi.CancelFuturesOrder(ctx, settle, orderId)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]MyFuturesTrade GetMyTrades(ctx, settle, optional)
List personal trading history
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
optional | GetMyTradesOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a GetMyTradesOpts struct
Name | Type | Description | Notes |
---|---|---|---|
contract | optional.String | Futures contract, return related data only if specified | |
order | optional.Int64 | Futures order ID, return related data only if specified | |
limit | optional.Int32 | Maximum number of records returned in one list | [default to 100] |
offset | optional.Int32 | List offset, starting from 0 | [default to 0] |
lastId | optional.String | Specify list staring point using the `id` of last record in previous list-query results | |
countTotal | optional.Int32 | Whether to return total number matched. Default to 0(no return) | [default to 0] |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
result, _, err := client.FuturesApi.GetMyTrades(ctx, settle, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]PositionClose ListPositionClose(ctx, settle, optional)
List position close history
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
optional | ListPositionCloseOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a ListPositionCloseOpts struct
Name | Type | Description | Notes |
---|---|---|---|
contract | optional.String | Futures contract, return related data only if specified | |
limit | optional.Int32 | Maximum number of records returned in one list | [default to 100] |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
result, _, err := client.FuturesApi.ListPositionClose(ctx, settle, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]FuturesLiquidate ListLiquidates(ctx, settle, optional)
List liquidation history
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
optional | ListLiquidatesOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a ListLiquidatesOpts struct
Name | Type | Description | Notes |
---|---|---|---|
contract | optional.String | Futures contract, return related data only if specified | |
limit | optional.Int32 | Maximum number of records returned in one list | [default to 100] |
at | optional.Int32 | Specify a liquidation timestamp | [default to 0] |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
result, _, err := client.FuturesApi.ListLiquidates(ctx, settle, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]FuturesPriceTriggeredOrder ListPriceTriggeredOrders(ctx, settle, status, optional)
List all auto orders
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
status | string | List orders based on status | |
optional | ListPriceTriggeredOrdersOpts | optional parameters | nil if no parameters |
Optional parameters are passed through a pointer to a ListPriceTriggeredOrdersOpts struct
Name | Type | Description | Notes |
---|---|---|---|
contract | optional.String | Futures contract, return related data only if specified | |
limit | optional.Int32 | Maximum number of records returned in one list | [default to 100] |
offset | optional.Int32 | List offset, starting from 0 | [default to 0] |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
status := "status_example" // string - List orders based on status
result, _, err := client.FuturesApi.ListPriceTriggeredOrders(ctx, settle, status, nil)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
TriggerOrderResponse CreatePriceTriggeredOrder(ctx, settle, futuresPriceTriggeredOrder)
Create a price-triggered order
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
futuresPriceTriggeredOrder | FuturesPriceTriggeredOrder |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
futuresPriceTriggeredOrder := gateapi.FuturesPriceTriggeredOrder{} // FuturesPriceTriggeredOrder -
result, _, err := client.FuturesApi.CreatePriceTriggeredOrder(ctx, settle, futuresPriceTriggeredOrder)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: application/json
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
[]FuturesPriceTriggeredOrder CancelPriceTriggeredOrderList(ctx, settle, contract)
Cancel all open orders
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
contract | string | Futures contract |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
contract := "BTC_USD" // string - Futures contract
result, _, err := client.FuturesApi.CancelPriceTriggeredOrderList(ctx, settle, contract)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
FuturesPriceTriggeredOrder GetPriceTriggeredOrder(ctx, settle, orderId)
Get a single order
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
orderId | string | ID returned on order successfully being created |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
orderId := "orderId_example" // string - ID returned on order successfully being created
result, _, err := client.FuturesApi.GetPriceTriggeredOrder(ctx, settle, orderId)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]
FuturesPriceTriggeredOrder CancelPriceTriggeredOrder(ctx, settle, orderId)
Cancel a single order
Name | Type | Description | Notes |
---|---|---|---|
ctx | context.Context | context for authentication, logging, cancellation, deadlines, tracing, etc. | |
settle | string | Settle currency | [default to btc] |
orderId | string | ID returned on order successfully being created |
package main
import (
"context"
"fmt"
"gateapi"
)
func main() {
client := gateapi.NewAPIClient(gateapi.NewConfiguration())
// uncomment the next line if your are testing against testnet
// client.ChangeBasePath("https://fx-api-testnet.gateio.ws/api/v4")
ctx := context.WithValue(context.Background(),
gateapi.ContextGateAPIV4,
gateapi.GateAPIV4{
Key: "YOUR_API_KEY",
Secret: "YOUR_API_SECRET",
}
)
settle := btc // string - Settle currency
orderId := "orderId_example" // string - ID returned on order successfully being created
result, _, err := client.FuturesApi.CancelPriceTriggeredOrder(ctx, settle, orderId)
if err != nil {
if e, ok := err.(gateapi.GateAPIError); ok {
fmt.Printf("gate api error: %s\n", e.Error())
} else {
fmt.Printf("generic error: %s\n", err.Error())
}
} else {
fmt.Println(result)
}
}
- Content-Type: Not defined
- Accept: application/json
[Back to top] [Back to API list] [Back to Model list] [Back to README]