services/rfq/api/docs/docs.go
// Package docs Code generated by swaggo/swag. DO NOT EDIT
package docs
import "github.com/swaggo/swag"
const docTemplate = `{
"schemes": {{ marshal .Schemes }},
"swagger": "2.0",
"info": {
"description": "{{escape .Description}}",
"title": "{{.Title}}",
"contact": {},
"version": "{{.Version}}"
},
"host": "{{.Host}}",
"basePath": "{{.BasePath}}",
"paths": {
"/ack": {
"put": {
"description": "cache an ack request to synchronize relayer actions.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"ack"
],
"summary": "Relay ack",
"parameters": [
{
"description": "query params",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/model.PutRelayerQuoteRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"headers": {
"X-Api-Version": {
"type": "string",
"description": "API Version Number - See docs for more info"
}
}
}
}
}
},
"/bulk_quotes": {
"put": {
"description": "upsert bulk quotes from relayer.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"quotes"
],
"summary": "Upsert quotes",
"parameters": [
{
"description": "query params",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/model.PutBulkQuotesRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"headers": {
"X-Api-Version": {
"type": "string",
"description": "API Version Number - See docs for more info"
}
}
}
}
}
},
"/contracts": {
"get": {
"description": "get quotes from all relayers.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"quotes"
],
"summary": "Get contract addresses",
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/model.GetContractsResponse"
}
},
"headers": {
"X-Api-Version": {
"type": "string",
"description": "API Version Number - See docs for more info"
}
}
}
}
}
},
"/open_quote_requests": {
"get": {
"description": "Get all open quote requests that are currently in Received or Pending status.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"quotes"
],
"summary": "Get open quote requests",
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/model.GetOpenQuoteRequestsResponse"
}
},
"headers": {
"X-Api-Version": {
"type": "string",
"description": "API Version Number - See docs for more info"
}
}
}
}
}
},
"/quotes": {
"get": {
"description": "get quotes from all relayers.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"quotes"
],
"summary": "Get quotes",
"parameters": [
{
"type": "integer",
"description": "origin chain id to filter quotes by",
"name": "originChainID",
"in": "path"
},
{
"type": "string",
"description": "origin chain id to filter quotes by",
"name": "originTokenAddr",
"in": "path"
},
{
"type": "integer",
"description": "destination chain id to filter quotes by",
"name": "destChainID",
"in": "path"
},
{
"type": "string",
"description": "destination token address to filter quotes by",
"name": "destTokenAddr",
"in": "path"
},
{
"type": "string",
"description": "relayer address to filter quotes by",
"name": "relayerAddr",
"in": "path"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/model.GetQuoteResponse"
}
},
"headers": {
"X-Api-Version": {
"type": "string",
"description": "API Version Number - See docs for more info"
}
}
}
}
},
"put": {
"description": "upsert a quote from relayer.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"quotes"
],
"summary": "Upsert quote",
"parameters": [
{
"description": "query params",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/model.PutRelayerQuoteRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"headers": {
"X-Api-Version": {
"type": "string",
"description": "API Version Number - See docs for more info"
}
}
}
}
}
},
"/rfq": {
"put": {
"description": "Initiate an Active Request-For-Quote and return the best quote available.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"quotes"
],
"summary": "Initiate an Active RFQ",
"parameters": [
{
"description": "Initiate an Active Request-For-Quote",
"name": "request",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/model.PutRFQRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/model.PutRFQResponse"
},
"headers": {
"X-Api-Version": {
"type": "string",
"description": "API Version Number - See docs for more info"
}
}
}
}
}
},
"/rfq_stream": {
"get": {
"description": "Establish a WebSocket connection to listen for streaming active quote requests.",
"produces": [
"application/json"
],
"tags": [
"quotes"
],
"summary": "Listen for Active RFQs",
"responses": {
"101": {
"description": "Switching Protocols",
"schema": {
"type": "string"
},
"headers": {
"X-Api-Version": {
"type": "string",
"description": "API Version Number - See docs for more info"
}
}
}
}
}
}
},
"definitions": {
"model.GetContractsResponse": {
"type": "object",
"properties": {
"contracts": {
"description": "Contracts is a map of chain id to contract address",
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"model.GetOpenQuoteRequestsResponse": {
"type": "object",
"properties": {
"created_at": {
"type": "string"
},
"dest_chain_id": {
"type": "integer"
},
"dest_token": {
"type": "string"
},
"expiration_window": {
"type": "integer"
},
"origin_amount_exact": {
"type": "string"
},
"origin_chain_id": {
"type": "integer"
},
"origin_token": {
"type": "string"
},
"user_address": {
"type": "string"
}
}
},
"model.GetQuoteResponse": {
"type": "object",
"properties": {
"dest_amount": {
"description": "DestAmount is the max amount of liquidity which exists for a given destination token, provided in the destination token decimals",
"type": "string"
},
"dest_chain_id": {
"description": "DestChainID is the chain which the relayer is willing to relay to",
"type": "integer"
},
"dest_fast_bridge_address": {
"description": "DestFastBridgeAddress is the address of the fast bridge contract on the destination chain",
"type": "string"
},
"dest_token_addr": {
"description": "DestToken is the token address for which the relayer willing to relay to",
"type": "string"
},
"fixed_fee": {
"description": "FixedFee is the fixed fee for the quote, provided in the destination token terms",
"type": "string"
},
"max_origin_amount": {
"description": "MaxOriginAmount is the maximum amount of origin tokens bridgeable",
"type": "string"
},
"origin_chain_id": {
"description": "OriginChainID is the chain which the relayer is willing to relay from",
"type": "integer"
},
"origin_fast_bridge_address": {
"description": "OriginFastBridgeAddress is the address of the fast bridge contract on the origin chain",
"type": "string"
},
"origin_token_addr": {
"description": "OriginTokenAddr is the token address for which the relayer willing to relay from",
"type": "string"
},
"relayer_addr": {
"description": "Address of the relayer providing the quote",
"type": "string"
},
"updated_at": {
"description": "UpdatedAt is the time that the quote was last upserted",
"type": "string"
}
}
},
"model.PutBulkQuotesRequest": {
"type": "object",
"properties": {
"quotes": {
"type": "array",
"items": {
"$ref": "#/definitions/model.PutRelayerQuoteRequest"
}
}
}
},
"model.PutRFQRequest": {
"type": "object",
"properties": {
"data": {
"$ref": "#/definitions/model.QuoteData"
},
"integrator_id": {
"type": "string"
},
"quote_types": {
"type": "array",
"items": {
"type": "string"
}
},
"user_address": {
"type": "string"
}
}
},
"model.PutRFQResponse": {
"type": "object",
"properties": {
"dest_amount": {
"type": "string"
},
"quote_id": {
"type": "string"
},
"quote_type": {
"type": "string"
},
"reason": {
"type": "string"
},
"relayer_address": {
"type": "string"
},
"success": {
"type": "boolean"
}
}
},
"model.PutRelayerQuoteRequest": {
"type": "object",
"properties": {
"dest_amount": {
"type": "string"
},
"dest_chain_id": {
"type": "integer"
},
"dest_fast_bridge_address": {
"type": "string"
},
"dest_token_addr": {
"type": "string"
},
"fixed_fee": {
"type": "string"
},
"max_origin_amount": {
"type": "string"
},
"origin_chain_id": {
"type": "integer"
},
"origin_fast_bridge_address": {
"type": "string"
},
"origin_token_addr": {
"type": "string"
}
}
},
"model.QuoteData": {
"type": "object",
"properties": {
"dest_amount": {
"type": "string"
},
"dest_chain_id": {
"type": "integer"
},
"dest_token_addr": {
"type": "string"
},
"expiration_window": {
"type": "integer"
},
"origin_amount_exact": {
"type": "string"
},
"origin_chain_id": {
"type": "integer"
},
"origin_token_addr": {
"type": "string"
},
"quote_id": {
"type": "string"
},
"relayer_address": {
"type": "string"
}
}
}
}
}`
// SwaggerInfo holds exported Swagger Info so clients can modify it
var SwaggerInfo = &swag.Spec{
Version: "",
Host: "",
BasePath: "",
Schemes: []string{},
Title: "",
Description: "",
InfoInstanceName: "swagger",
SwaggerTemplate: docTemplate,
LeftDelim: "{{",
RightDelim: "}}",
}
func init() {
swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo)
}