-
Notifications
You must be signed in to change notification settings - Fork 5
/
openapi.yaml
288 lines (285 loc) · 8.03 KB
/
openapi.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
openapi: 3.0.0
info:
title: Netvyne API
description: Moderation API Service
version: '1.0'
termsOfService: https://blog.netvyne.com/blog/eula
contact:
name: API Support
url: https://blog.netvyne.com/blog/support
email: info@netvyne.com
license:
name: ©2023 Netvyne, Inc.
url: https://www.netvyne.com
x-logo:
altText: Netvyne Logo
backgroundColor: '#FFFFFF'
url: https://www.netvyne.com/logo-full-light.png
x-konfig-ignore:
object-with-no-properties: true
servers:
- url: https://api.netvyne.com/v1
tags:
- name: settings
- name: comment
- name: example
- name: webhook
paths:
/categories:
post:
tags:
- settings
summary: Set/update the categories used for moderation of comments
operationId: Settings_updateCategories
security:
- Bearer: []
description: >-
The body of this request contains categories that you desire; these must
be explained at the InstructionsURL. Requires prior authorization.
requestBody:
description: Categories
content:
application/json:
schema:
$ref: '#/components/schemas/server.HandleUpdateCategories.request'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SettingsUpdateCategoriesResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/core.ErrorResponse'
/comments:
post:
tags:
- comment
summary: Submit a comment for processing
operationId: Comment_submitProcessingDetails
security:
- Bearer: []
description: The body of this request contains the details of this comment
requestBody:
description: comment
content:
application/json:
schema:
$ref: '#/components/schemas/server.HandlePostComment.request'
required: true
responses:
'200':
description: >-
ParentCommentID will not be set in response if corresponding parent
comment not submitted prior
content:
application/json:
schema:
$ref: '#/components/schemas/server.HandlePostComment.response'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/core.ErrorResponse'
/demo_webhook:
post:
tags:
- example
summary: Sample of a route that receives the webhook response
operationId: Example_webhookResponseHandling
description: >-
The body of the request contains the marked categories for a given item
that you submitted.
You should implement such a route and set it as your webhook URL
Your endpoint must quickly return a successful status code (2xx) prior
to any complex logic that could cause a timeout.
Note: A webhook can come for the same item multiple times; make sure use
the latest prediction and disregard prior ones.
requestBody:
description: Marked Categories
content:
application/json:
schema:
$ref: '#/components/schemas/server.HandlePostDemoWebhook.request'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ExampleWebhookResponseHandlingResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/core.ErrorResponse'
/instructions:
post:
tags:
- settings
summary: >-
Set/update the instructions url at which moderation instructions are
provided
operationId: Settings_setInstructionsUrl
security:
- Bearer: []
description: The body of this request contains the InstructionsURL that you desire
requestBody:
description: InstructionsURL
content:
application/json:
schema:
$ref: '#/components/schemas/server.HandleUpdateInstructions.request'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SettingsSetInstructionsUrlResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/core.ErrorResponse'
/webhooks:
post:
tags:
- webhook
summary: Set/update the webhook url at which results are received
operationId: Webhook_updateWebhookUrl
security:
- Bearer: []
description: The body of this request contains WebhookURL that you desire
requestBody:
description: WebhookURL
content:
application/json:
schema:
$ref: '#/components/schemas/server.HandleUpdateWebook.request'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookUpdateWebhookUrlResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/core.ErrorResponse'
components:
securitySchemes:
Bearer:
description: '"Type ''Bearer TOKEN'' to correctly set the API Key"'
type: apiKey
name: Authorization
in: header
schemas:
core.ErrorResponse:
type: object
properties:
Code:
type: integer
Message:
type: string
core.WebhookCategory:
type: object
properties:
Confidence:
type: number
DisplayName:
type: string
Value:
type: boolean
server.HandlePostComment.request:
type: object
properties:
ID:
type: string
ParentCommentID:
type: string
Text:
type: string
UserName:
type: string
server.HandlePostComment.response:
type: object
properties:
ID:
type: string
ParentCommentID:
type: string
Text:
type: string
UserName:
type: string
server.HandlePostDemoWebhook.request:
type: object
properties:
APIVersion:
type: string
Categories:
type: array
items:
$ref: '#/components/schemas/core.WebhookCategory'
ID:
type: string
LastComputedAt:
type: string
Type:
type: string
server.HandlePostDemoWebhook.response:
type: object
server.HandleUpdateCategories.request:
type: object
properties:
Categories:
type: array
items:
type: string
server.HandleUpdateCategories.response:
type: object
server.HandleUpdateInstructions.request:
type: object
properties:
InstructionsURL:
type: string
server.HandleUpdateInstructions.response:
type: object
server.HandleUpdateWebook.request:
type: object
properties:
WebhookURL:
type: string
server.HandleUpdateWebook.response:
type: object
SettingsUpdateCategoriesResponse:
type: object
properties: {}
example: {}
ExampleWebhookResponseHandlingResponse:
type: object
properties: {}
example: {}
SettingsSetInstructionsUrlResponse:
type: object
properties: {}
example: {}
WebhookUpdateWebhookUrlResponse:
type: object
properties: {}
example: {}