-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapi.yml
134 lines (131 loc) · 4.71 KB
/
api.yml
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
# When updating, remember to `pnpm api-docs`
openapi: 3.0.0
info:
title: BuidlGuidl Member Oracle
version: 0.1.0
description: |
An oracle to prove membership in the [BuidlGuidl](https://buidlguidl.com).
This API provides you with the full Merkle tree and a method to get the proof for an address.
servers:
- url: "https://buidlers.byteatatime.dev"
paths:
/api/addresses:
get:
summary: Retrieve the Merkle tree containing addresses
tags:
- Addresses
responses:
"200":
description: OK
content:
application/json:
schema:
type: object
example:
format: standard-v1
tree: [...]
values:
- value: ["0x598cb95773D9b66a27a5780DB5EED2d018685879"]
treeIndex: 1182
- ...
leafEncoding:
- address
security: []
/api/addresses/proof:
get:
summary: Retrieve the Merkle proof for a specific address
tags:
- Addresses
parameters:
- name: address
in: query
required: true
schema:
type: string
example: "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
description: The Ethereum address for which to retrieve the Merkle proof
responses:
"200":
description: OK
content:
application/json:
schema:
type: array
items:
type: string
example:
- "0xa63432221e410d098d85dae511b25232fb60df8eec8d56ff75fc44cb5f960819"
- "0x3294c6b0b4620cc8bb3803827565831fb6f54668eb747853f567f00c49cced36"
- "0x1262fcdcc9e7cfbb8fbd968db9ce6125035ab3ea4b9a80487641993b65360c7f"
- "0x8fe1547464856c7bd072b2758f0c247bc6f5bcfe81ec055959d2a694761f488b"
- "0xd8401469d0ca73cbd35918bafb8011f2514327357fcf93344bcb2669164bee23"
- "0x578ddd1a2088b5c1aac8f6fbf8cbee727e88827423e17209f5fab7e1dedd1cae"
- "0x7db71dedef28f1a1235c3661350be69cf6bec596917d3ea2f4080259a2125283"
- "0xf9f583b1a8150e2b0dd22508e769f1429ff63649588ac5c21d8e4549c4a80d07"
- "0x99945d9012f574040382dbe5e181f3e2fe8f37d605e1a0e52a4e6d316d2fa897"
- "0x8301cd939a646f765c1963d81dec969ef691f8aef97fb6e75140869a49461066"
"400":
description: Bad Request
content:
text/plain:
schema:
type: string
example: Invalid address
"404":
description: Not Found
content:
text/plain:
schema:
type: string
example: Address not found
security: []
/api/buidlers/proof:
get:
summary: Retrieve the Merkle proof for a specific Buidler
tags:
- Buidlers
parameters:
- name: address
in: query
required: true
schema:
type: string
example: "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
description: The Ethereum address for which to retrieve the Merkle proof
responses:
"200":
description: OK
content:
application/json:
schema:
type: array
items:
type: string
example:
- "0xa63432221e410d098d85dae511b25232fb60df8eec8d56ff75fc44cb5f960819"
- "0x3294c6b0b4620cc8bb3803827565831fb6f54668eb747853f567f00c49cced36"
- "0x1262fcdcc9e7cfbb8fbd968db9ce6125035ab3ea4b9a80487641993b65360c7f"
- "0x8fe1547464856c7bd072b2758f0c247bc6f5bcfe81ec055959d2a694761f488b"
- "0xd8401469d0ca73cbd35918bafb8011f2514327357fcf93344bcb2669164bee23"
- "0x578ddd1a2088b5c1aac8f6fbf8cbee727e88827423e17209f5fab7e1dedd1cae"
- "0x7db71dedef28f1a1235c3661350be69cf6bec596917d3ea2f4080259a2125283"
- "0xf9f583b1a8150e2b0dd22508e769f1429ff63649588ac5c21d8e4549c4a80d07"
- "0x99945d9012f574040382dbe5e181f3e2fe8f37d605e1a0e52a4e6d316d2fa897"
- "0x8301cd939a646f765c1963d81dec969ef691f8aef97fb6e75140869a49461066"
"400":
description: Bad Request
content:
text/plain:
schema:
type: string
example: Invalid address
"404":
description: Not Found
content:
text/plain:
schema:
type: string
example: Address not found
security: []
servers:
- url: "https://buidlers.byteatatime.dev"