-
Notifications
You must be signed in to change notification settings - Fork 33
/
Copy pathswagger.yaml
354 lines (354 loc) · 9.22 KB
/
swagger.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
definitions:
model.GetContractsResponse:
properties:
contracts:
additionalProperties:
type: string
description: Contracts is a map of chain id to contract address
type: object
type: object
model.GetOpenQuoteRequestsResponse:
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
type: object
model.GetQuoteResponse:
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
type: object
model.PutBulkQuotesRequest:
properties:
quotes:
items:
$ref: '#/definitions/model.PutRelayerQuoteRequest'
type: array
type: object
model.PutRFQRequest:
properties:
data:
$ref: '#/definitions/model.QuoteData'
integrator_id:
type: string
quote_types:
items:
type: string
type: array
user_address:
type: string
type: object
model.PutRFQResponse:
properties:
dest_amount:
type: string
quote_id:
type: string
quote_type:
type: string
reason:
type: string
relayer_address:
type: string
success:
type: boolean
type: object
model.PutRelayerQuoteRequest:
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
type: object
model.QuoteData:
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
type: object
info:
contact: {}
paths:
/ack:
put:
consumes:
- application/json
description: cache an ack request to synchronize relayer actions.
parameters:
- description: query params
in: body
name: request
required: true
schema:
$ref: '#/definitions/model.PutRelayerQuoteRequest'
produces:
- application/json
responses:
"200":
description: OK
headers:
X-Api-Version:
description: API Version Number - See docs for more info
type: string
summary: Relay ack
tags:
- ack
/bulk_quotes:
put:
consumes:
- application/json
description: upsert bulk quotes from relayer.
parameters:
- description: query params
in: body
name: request
required: true
schema:
$ref: '#/definitions/model.PutBulkQuotesRequest'
produces:
- application/json
responses:
"200":
description: OK
headers:
X-Api-Version:
description: API Version Number - See docs for more info
type: string
summary: Upsert quotes
tags:
- quotes
/contracts:
get:
consumes:
- application/json
description: get quotes from all relayers.
produces:
- application/json
responses:
"200":
description: OK
headers:
X-Api-Version:
description: API Version Number - See docs for more info
type: string
schema:
items:
$ref: '#/definitions/model.GetContractsResponse'
type: array
summary: Get contract addresses
tags:
- quotes
/open_quote_requests:
get:
consumes:
- application/json
description: Get all open quote requests that are currently in Received or Pending
status.
produces:
- application/json
responses:
"200":
description: OK
headers:
X-Api-Version:
description: API Version Number - See docs for more info
type: string
schema:
items:
$ref: '#/definitions/model.GetOpenQuoteRequestsResponse'
type: array
summary: Get open quote requests
tags:
- quotes
/quotes:
get:
consumes:
- application/json
description: get quotes from all relayers.
parameters:
- description: origin chain id to filter quotes by
in: path
name: originChainID
type: integer
- description: origin chain id to filter quotes by
in: path
name: originTokenAddr
type: string
- description: destination chain id to filter quotes by
in: path
name: destChainID
type: integer
- description: destination token address to filter quotes by
in: path
name: destTokenAddr
type: string
- description: relayer address to filter quotes by
in: path
name: relayerAddr
type: string
produces:
- application/json
responses:
"200":
description: OK
headers:
X-Api-Version:
description: API Version Number - See docs for more info
type: string
schema:
items:
$ref: '#/definitions/model.GetQuoteResponse'
type: array
summary: Get quotes
tags:
- quotes
put:
consumes:
- application/json
description: upsert a quote from relayer.
parameters:
- description: query params
in: body
name: request
required: true
schema:
$ref: '#/definitions/model.PutRelayerQuoteRequest'
produces:
- application/json
responses:
"200":
description: OK
headers:
X-Api-Version:
description: API Version Number - See docs for more info
type: string
summary: Upsert quote
tags:
- quotes
/rfq:
put:
consumes:
- application/json
description: Initiate an Active Request-For-Quote and return the best quote
available.
parameters:
- description: Initiate an Active Request-For-Quote
in: body
name: request
required: true
schema:
$ref: '#/definitions/model.PutRFQRequest'
produces:
- application/json
responses:
"200":
description: OK
headers:
X-Api-Version:
description: API Version Number - See docs for more info
type: string
schema:
$ref: '#/definitions/model.PutRFQResponse'
summary: Initiate an Active RFQ
tags:
- quotes
/rfq_stream:
get:
description: Establish a WebSocket connection to listen for streaming active
quote requests.
produces:
- application/json
responses:
"101":
description: Switching Protocols
headers:
X-Api-Version:
description: API Version Number - See docs for more info
type: string
schema:
type: string
summary: Listen for Active RFQs
tags:
- quotes
swagger: "2.0"