synapsecns/sanguine

View on GitHub
services/rfq/api/docs/docs.go

Summary

Maintainability
A
3 hrs
Test Coverage
// 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)
}