-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathk8s-job-done-webhooks-open-api.yaml
197 lines (191 loc) · 4.55 KB
/
k8s-job-done-webhooks-open-api.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
openapi: 3.0.3
info:
title: K8S Job Webhooks REST API
contact:
email: [email protected]
tags:
- name: Webhooks
- name: Job Done Watchers
paths:
/webhooks:
post:
tags:
- Webhooks
summary: Create a Webhook
operationId: createWebhook
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Webhook'
responses:
'201':
description: Webhook created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Webhook'
get:
tags:
- Webhooks
summary: Get a list of Webhooks
operationId: getWebhooks
responses:
'200':
description: A list of Webhooks
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Webhook'
/job-done-watchers:
post:
tags:
- Job Done Watchers
summary: Create a Job Done Watcher
operationId: createJobDoneWatcher
parameters:
- in: header
name: Idempotency-Key
required: false
allowEmptyValue: false
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/JobDoneWatcher'
responses:
'201':
description: JobDoneWatcher created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/JobDoneWatcher'
get:
tags:
- Job Done Watchers
summary: Get a list of Job Done Watchers
operationId: getWebhookJobDoneWatchers
parameters:
- in: query
required: false
name: jobName
schema:
type: string
- in: query
required: false
name: status
schema:
$ref: '#/components/schemas/JobDoneWatcherStatus'
responses:
'200':
description: A list of Job Done Watchers
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/JobDoneWatcher'
/job-done-watchers/{id}:
get:
tags:
- Job Done Watchers
summary: Get a Job Done Watcher
operationId: getJobDoneWatcher
parameters:
- in: path
required: true
name: id
schema:
type: string
responses:
'200':
description: A Job Done Watcher
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/JobDoneWatcher'
components:
schemas:
Webhook:
type: object
properties:
id:
type: string
readOnly: true
description:
type: string
url:
type: string
format: url
requestBody:
type: string
createdAt:
type: string
readOnly: true
format: date-time
JobDoneWatcher:
type: object
properties:
id:
type: string
readOnly: true
jobName:
type: string
timeoutSeconds:
type: integer
default: 0
status:
$ref: '#/components/schemas/JobDoneWatcherStatus'
createdAt:
type: string
readOnly: true
format: date-time
jobDoneTriggerWebhooks:
type: array
items:
$ref: '#/components/schemas/JobDoneTriggerWebhook'
JobDoneWatcherStatus:
readOnly: true
type: string
enum:
- COMPLETED
- PARTIALLY_COMPLETED
- PROCESSING
- PENDING
- CANCELLED
- FAILED
- TIMEOUT
JobDoneTriggerWebhook:
type: object
properties:
id:
type: string
readOnly: true
webhookId:
type: string
timeoutSeconds:
type: integer
default: 0
status:
$ref: '#/components/schemas/JobDoneTriggerWebhookStatus'
calledAt:
type: string
readOnly: true
format: date-time
JobDoneTriggerWebhookStatus:
readOnly: true
type: string
enum:
- CALLED
- NOT_CALLED
- FAILED
- TIMEOUT
- CANCELLED