Эндпоинты модулей
Данный эндпоинты доступны на уровне модулей. Вы можете использовать GRPC клиент, чтобы делать вызовы
Эндпоинты POST
Данные эндпоинты требуют наличие подписанной транзакции (Tx). Здесь вы можете найти пример использования клиента cosmjs https://github.com/sei-protocol/sei-chain/blob/master/oracle/oracle.js
Размещение ордеров
Модуль DEX
Данный эндпоинт принимает запрос на массовое размещение ордеров.
rpc PlaceOrders(MsgPlaceOrders) returns (MsgPlaceOrdersResponse);
message MsgPlaceOrders {
string creator = 1;
repeated OrderPlacement orders = 2;
string contractAddr = 3;
repeated cosmos.base.v1beta1.Coin funds = 5 [
(gogoproto.nullable) = false,
(gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"
];
}
message MsgPlaceOrdersResponse {
repeated uint64 orderIds = 1;
}
Отмена ордеров
Модуль DEX
Данный эндпоинт принимает запрос на массовую отмену ордеров.
rpc CancelOrders(MsgCancelOrders) returns (MsgCancelOrdersResponse);
message MsgCancelOrders {
string creator = 1;
repeated OrderCancellation orderCancellations = 2;
string contractAddr = 3;
}
message MsgCancelOrdersResponse {}
Ликвидация
Модуль DEX
Эндпоинт ликвидирует аккаунт.
message MsgLiquidation {
string creator = 1;
string accountToLiquidate = 2;
string contractAddr = 3;
}
message MsgLiquidationResponse {}
Предварительное голосование по обменному курсу
Модуль Оракул
Данный эндпоинт отправляет оракулу хэш предварительного голосования для следующего цикла.
message MsgAggregateExchangeRatePrevote {
string hash = 1;
string feeder = 2;
string validator = 3;
}
message MsgAggregateExchangeRatePrevoteResponse {}
Голосование по обменному курсу
Модуль Оракул
Эндпоинт используется для голосования по величине обменного курса в текущем цикле голосования. Предоставляемые биржевые курсы должны совпадать с хэшем предварительного голосования предыдущего цикла голосования (для текущего цикла голосования).
message MsgAggregateExchangeRateVote {
string salt = 1;
string exchange_rates = 2;
string feeder = 3;
string validator = 4;
}
message MsgAggregateExchangeRateVoteResponse {}
Эндпоинты GET
Получение последних сделок
Модуль DEX
Эндпоинт принимает id рынка и возвращает сделки, размещенные в последнем блоке.
GetSettledTradesRequest {
int market_id;
}
GetSettledTradesResponse {
vector<Order> settled_trades;
}
Получение полной книги ордеров
Модуль DEX
Эндпоинт принимает id рынка и возвращает полную книгу ордеров в последнем блоке.
Сервис: codchen.matrixchain.dex.Query
Метод: LongBook
Формат сообщения:
// Request
QueryGetLongBookRequest {
uint64 id = 1;
}
// Response
QueryGetLongBookResponse {
LongBook LongBook = 1 [(gogoproto.nullable) = false];
}
// Example (using grpc-client-cli)
> grpc-client-cli localhost:9090
? Choose a service: codchen.matrixchain.dex.Query
? Choose a method: LongBook
Message json (type ? to see defaults): {"id": 0}
Получение краткой книги ордеров
Модуль DEX
Эндпоинт принимает id рынка и возвращает краткую книгу ордеров в последнем блоке.
Сервис: codchen.matrixchain.dex.Query
Метод: ShortBook
Формат сообщения:
// Request
QueryGetShortBookRequest {
uint64 id = 1;
}
// Response
QueryGetShortBookResponse {
ShortBook ShortBook = 1 [(gogoproto.nullable) = false];
}
// Example (using grpc-client-cli)
> grpc-client-cli localhost:9090
? Choose a service: codchen.matrixchain.dex.Query
? Choose a method: ShortBook
Message json (type ? to see defaults): {"id": 0}
Получение обменного курса
Модуль Оракул
Эндпоинт возвращает обменный курс для определенной валюты.
Сервис: seiprotocol.seichain.oracle.Query
Метод: ExchangeRate
Формат сообщения:
// Request
QueryExchangeRatesRequest {}
// Response
QueryExchangeRateResponse {
OracleExchangeRate oracle_exchange_rate = 1 [(gogoproto.nullable) = false];
}
// Example (using grpc-client-cli)
> grpc-client-cli localhost:9090
? Choose a service: seiprotocol.seichain.oracle.Query
? Choose a method: ExchangeRate
Message json (type ? to see defaults): {"denom": "foo"}
Получение обменных курсов
Модуль Оракул
Эндпоинт возвращает все активные обменные курсы.
Сервис: seiprotocol.seichain.oracle.Query
Метод: ExchangeRates
Формат сообщения:
// Request
QueryExchangeRateRequest {
string denom = 1;
}
DenomOracleExchangeRatePair {
string denom = 1;
OracleExchangeRate oracle_exchange_rate = 2 [(gogoproto.nullable) = false];
}
// Response
QueryExchangeRatesResponse {
// exchange_rates defines a list of the exchange rate for all whitelisted denoms.
repeated DenomOracleExchangeRatePair denom_oracle_exchange_rate_pairs = 1;
}
// Example (using grpc-client-cli)
> grpc-client-cli localhost:9090
? Choose a service: seiprotocol.seichain.oracle.Query
? Choose a method: ExchangeRates
Message json (type ? to see defaults): {}
Получение целей для голосования
Модуль Оракул
Эндпоинт возвращает все наименования, доступные для голосования по цене.
Сервис: seiprotocol.seichain.oracle.Query
Метод: VoteTargets
Формат сообщения:
// Request
QueryVoteTargetsRequest {}
// Response
QueryVoteTargetsResponse {
repeated string vote_targets = 1;
}
// Example (using grpc-client-cli)
> grpc-client-cli localhost:9090
? Choose a service: seiprotocol.seichain.oracle.Query
? Choose a method: VoteTargets
Message json (type ? to see defaults): {}
Получение счетчика пропусков
Модуль Оракул
Эндпоинт возвращает счетчик пропусков для конкретного валидатора.
Сервис: seiprotocol.seichain.oracle.Query
Метод: MissCounter
Формат сообщения:
// Request
QueryMissCounterRequest {
string validator_addr = 1;
}
// Response
QueryMissCounterResponse {
uint64 miss_counter = 1;
}
// Example (using grpc-client-cli)
> grpc-client-cli localhost:9090
? Choose a service: seiprotocol.seichain.oracle.Query
? Choose a method: MissCounter
Message json (type ? to see defaults): {"validator_addr": "seivaloperADDR"}
Last updated