-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathswagger.json
129 lines (129 loc) · 3.48 KB
/
swagger.json
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
{
"swagger": "2.0",
"info": {
"version": "1.0.0",
"title": "api-judge",
"description": "Endpoints for encrypting and decrypting secrets. For use with the Manchester Codes Api Whisperer game",
"license": {
"name": "MIT",
"url": "https://opensource.org/licenses/MIT"
}
},
"basePath": "/",
"tags": [
{
"name": "Encrypt",
"description": "Endpoints for encrypting secrets"
},
{
"name": "Decrypt",
"description": "Endpoints for decrypting secrets"
}
],
"schemes": ["http", "https"],
"consumes": ["application/json"],
"produces": ["application/json"],
"paths": {
"/get-keys": {
"post": {
"tags": ["Encrypt"],
"summary": "returns keys which contain encrypted secret",
"parameters": [
{
"name": "PostSecretRequest",
"in": "body",
"description": "encrypt a secret and specify the number of keys and threshold for decryption",
"schema": {
"type": "object",
"required": ["secret", "shares", "threshold"],
"properties": {
"secret": {
"type": "string"
},
"shares": {
"type": "integer"
},
"threshold": {
"type": "integer"
}
}
}
}
],
"responses": {
"200": {
"description": "secret successfully encrypted",
"schema": {
"required": ["keys"],
"properties": {
"keys": {
"type": "array",
"items": {
"type": "string",
"description": "key required to decrypt secret"
}
}
}
}
}
},
"produces": ["application/json"]
}
},
"/claim-victory": {
"post": {
"tags": ["Decrypt"],
"parameters": [
{
"name": "ClaimVictoryRequest",
"in": "body",
"description": "post keys for decryption and an api endpoint to POST the secret to",
"schema": {
"required": ["keys", "successURL"],
"properties": {
"keys": {
"type": "array",
"items": {
"type": "string",
"description": "the keys to decrypt"
}
},
"successURL": {
"type": "string",
"description": "the api endpoint to POST the decrypted secret to"
}
}
}
}
],
"responses": {
"200": {
"description": "keys successfully decrypted",
"schema": {
"required": ["message"],
"properties": {
"message": {
"type": "string",
"description": "instructions"
}
}
}
},
"400": {
"description": "bad request",
"schema": {
"required": ["message"],
"properties": {
"message": {
"type": "string",
"description": "instructions"
}
}
}
}
},
"produces": ["application/json"]
}
}
}
}