blob: bb34e2bc12cad9c58f113f1901dd123149ed0cf2 [file] [log] [blame]
PatrikBuhrd1d08542020-09-11 16:50:37 +02001swagger: '2.0'
2info:
3 description: This page lists all the rest apis for the service.
4 version: '1.0'
5 title: Enrichment Data service
6host: 'localhost:8081'
7basePath: /
8tags:
9 - name: A1-E Enrichment Data Consumer API
10 description: Consumer Controller
PatrikBuhrebf32112020-09-16 13:17:29 +020011 - name: Enrichment Data Producer API
12 description: Producer Controller
13 - name: Producer Simulator
14 description: Producer Simulator Controller
PatrikBuhrd1d08542020-09-11 16:50:37 +020015paths:
16 /A1-EI/v1/eitypes:
17 get:
18 tags:
19 - A1-E Enrichment Data Consumer API
20 summary: Query EI type identifiers
21 description: DETAILS TBD
22 operationId: getEiTypeIdentifiersUsingGET
23 produces:
24 - application/json
25 responses:
26 '200':
27 description: EI type identifiers
28 schema:
29 type: array
30 items:
31 type: string
32 '401':
33 description: Unauthorized
34 '403':
35 description: Forbidden
36 '404':
37 description: Not Found
38 deprecated: false
39 '/A1-EI/v1/eitypes/{eiTypeId}':
40 get:
41 tags:
42 - A1-E Enrichment Data Consumer API
43 summary: Definitions for an individual EI Type
44 description: Query EI type
45 operationId: getEiTypeUsingGET
46 produces:
47 - application/json
48 parameters:
49 - name: eiTypeId
50 in: path
51 description: eiTypeId
52 required: true
53 type: string
54 responses:
55 '200':
56 description: EI type
57 schema:
58 $ref: '#/definitions/ei_type_info'
59 '401':
60 description: Unauthorized
61 '403':
62 description: Forbidden
63 '404':
64 description: Enrichment Information type is not found
65 schema:
66 $ref: '#/definitions/error_information'
67 deprecated: false
68 '/A1-EI/v1/eitypes/{eiTypeId}/eijobs':
69 get:
70 tags:
71 - A1-E Enrichment Data Consumer API
72 summary: Query EI job identifiers
73 description: Returns the identifiers for an EI Type
74 operationId: getEiJobIdsUsingGET
75 produces:
76 - application/json
77 parameters:
78 - name: eiTypeId
79 in: path
80 description: eiTypeId
81 required: true
82 type: string
83 - in: body
84 name: owner
85 description: identifies the owner of the job
86 required: false
87 schema:
88 type: string
89 responses:
90 '200':
91 description: EI type
92 schema:
93 type: array
94 items:
95 type: string
96 '401':
97 description: Unauthorized
98 '403':
99 description: Forbidden
100 '404':
101 description: Enrichment Information type is not found
102 schema:
103 $ref: '#/definitions/error_information'
104 deprecated: false
105 '/A1-EI/v1/eitypes/{eiTypeId}/eijobs/{eiJobId}':
106 get:
107 tags:
108 - A1-E Enrichment Data Consumer API
109 summary: Individual EI Job
110 operationId: getIndividualEiJobUsingGET
111 produces:
112 - application/json
113 parameters:
114 - name: eiJobId
115 in: path
116 description: eiJobId
117 required: true
118 type: string
119 - name: eiTypeId
120 in: path
121 description: eiTypeId
122 required: true
123 type: string
124 responses:
125 '200':
126 description: EI Job
127 schema:
128 $ref: '#/definitions/ei_job_info'
129 '401':
130 description: Unauthorized
131 '403':
132 description: Forbidden
133 '404':
134 description: Enrichment Information type or job is not found
135 schema:
136 $ref: '#/definitions/error_information'
137 deprecated: false
138 put:
139 tags:
140 - A1-E Enrichment Data Consumer API
141 summary: Individual EI Job
142 description: Create or update an EI Job
143 operationId: putIndividualEiJobUsingPUT
144 consumes:
145 - application/json
146 produces:
147 - application/json
148 parameters:
149 - name: eiJobId
150 in: path
151 description: eiJobId
152 required: true
153 type: string
154 - in: body
155 name: eiJobInfo
156 description: eiJobInfo
157 required: true
158 schema:
159 $ref: '#/definitions/ei_job_info'
160 - name: eiTypeId
161 in: path
162 description: eiTypeId
163 required: true
164 type: string
165 responses:
166 '200':
167 description: Job updated
168 schema:
169 type: object
170 '201':
171 description: Job created
172 schema:
173 type: object
174 '401':
175 description: Unauthorized
176 '403':
177 description: Forbidden
178 '404':
179 description: Enrichment Information type is not found
180 schema:
181 $ref: '#/definitions/error_information'
182 deprecated: false
183 delete:
184 tags:
185 - A1-E Enrichment Data Consumer API
186 summary: Individual EI Job
187 description: Delete an EI job
188 operationId: deleteIndividualEiJobUsingDELETE
189 produces:
190 - application/json
191 parameters:
192 - name: eiJobId
193 in: path
194 description: eiJobId
195 required: true
196 type: string
197 - name: eiTypeId
198 in: path
199 description: eiTypeId
200 required: true
201 type: string
202 responses:
203 '200':
204 description: Not used
205 schema:
206 type: object
207 '204':
208 description: Job deleted
209 schema:
210 type: object
211 '401':
212 description: Unauthorized
213 '403':
214 description: Forbidden
215 '404':
216 description: Enrichment Information type or job is not found
217 schema:
218 $ref: '#/definitions/error_information'
219 deprecated: false
220 '/A1-EI/v1/eitypes/{eiTypeId}/eijobs/{eiJobId}/status':
221 get:
222 tags:
223 - A1-E Enrichment Data Consumer API
224 summary: EI Job status
225 operationId: getEiJobStatusUsingGET
226 produces:
227 - application/json
228 parameters:
229 - name: eiJobId
230 in: path
231 description: eiJobId
232 required: true
233 type: string
234 - name: eiTypeId
235 in: path
236 description: eiTypeId
237 required: true
238 type: string
239 responses:
240 '200':
241 description: EI Job status
242 schema:
243 $ref: '#/definitions/ei_job_status'
244 '401':
245 description: Unauthorized
246 '403':
247 description: Forbidden
248 '404':
249 description: Enrichment Information type or job is not found
250 schema:
251 $ref: '#/definitions/error_information'
252 deprecated: false
PatrikBuhrebf32112020-09-16 13:17:29 +0200253 /ei-producer/v1/eiproducers:
254 get:
255 tags:
256 - Enrichment Data Producer API
257 summary: Query EI producer identifiers
258 description: DETAILS TBD
259 operationId: getEiProducerIdentifiersUsingGET
260 produces:
261 - application/json
262 responses:
263 '200':
264 description: EI producer identifiers
265 schema:
266 type: array
267 items:
268 type: string
269 '401':
270 description: Unauthorized
271 '403':
272 description: Forbidden
273 '404':
274 description: Not Found
275 deprecated: false
276 '/ei-producer/v1/eiproducers/{eiProducerId}':
277 get:
278 tags:
279 - Enrichment Data Producer API
280 summary: Job definition for an individual EI producer
281 description: Query EI jobs
282 operationId: getEiProducerUsingGET
283 produces:
284 - application/json
285 parameters:
286 - name: eiProducerId
287 in: path
288 description: eiProducerId
289 required: true
290 type: string
291 responses:
292 '200':
293 description: EI Jobs
294 schema:
295 $ref: '#/definitions/producer_ei_type_info'
296 '401':
297 description: Unauthorized
298 '403':
299 description: Forbidden
300 '404':
301 description: Enrichment Information producer is not found
302 schema:
303 $ref: '#/definitions/error_information'
304 deprecated: false
305 put:
306 tags:
307 - Enrichment Data Producer API
308 summary: Definitions for an individual EI producer
309 description: Put EI producer
310 operationId: putEiProducerUsingPUT
311 consumes:
312 - application/json
313 produces:
314 - application/json
315 parameters:
316 - name: eiProducerId
317 in: path
318 description: eiProducerId
319 required: true
320 type: string
321 - in: body
322 name: registrationInfo
323 description: registrationInfo
324 required: true
325 schema:
326 $ref: '#/definitions/producer_registration_info'
327 responses:
328 '200':
329 description: Producer updated
330 schema:
331 type: object
332 '201':
333 description: Producer created
334 schema:
335 type: object
336 '401':
337 description: Unauthorized
338 '403':
339 description: Forbidden
340 '404':
341 description: Not Found
342 deprecated: false
343 delete:
344 tags:
345 - Enrichment Data Producer API
346 summary: Individual EI Producer
347 description: Delete an EI Producer
348 operationId: deleteEiProducerUsingDELETE
349 produces:
350 - application/json
351 parameters:
352 - name: eiProducerId
353 in: path
354 description: eiProducerId
355 required: true
356 type: string
357 responses:
358 '200':
359 description: Not used
360 schema:
361 type: object
362 '204':
363 description: Producer deleted
364 schema:
365 type: object
366 '401':
367 description: Unauthorized
368 '403':
369 description: Forbidden
370 '404':
371 description: Producer is not found
372 schema:
373 $ref: '#/definitions/error_information'
374 deprecated: false
375 '/ei-producer/v1/eiproducers/{eiProducerId}/eijobs':
376 get:
377 tags:
378 - Enrichment Data Producer API
379 summary: Job definition for an individual EI producer
380 description: Query EI producer jobs
381 operationId: getEiProducerJobsUsingGET
382 produces:
383 - application/json
384 parameters:
385 - name: eiProducerId
386 in: path
387 description: eiProducerId
388 required: true
389 type: string
390 responses:
391 '200':
392 description: EI jobs
393 schema:
394 type: array
395 items:
396 $ref: '#/definitions/producer_ei_job_request'
397 '401':
398 description: Unauthorized
399 '403':
400 description: Forbidden
401 '404':
402 description: Enrichment Information producer is not found
403 schema:
404 $ref: '#/definitions/error_information'
405 deprecated: false
406 /ei-producer/v1/eitypes:
407 get:
408 tags:
409 - Enrichment Data Producer API
410 summary: Query EI type identifiers
411 description: DETAILS TBD
412 operationId: getEiTypeIdentifiersUsingGET_1
413 produces:
414 - application/json
415 responses:
416 '200':
417 description: EI type identifiers
418 schema:
419 type: array
420 items:
421 type: string
422 '401':
423 description: Unauthorized
424 '403':
425 description: Forbidden
426 '404':
427 description: Not Found
428 deprecated: false
429 '/ei-producer/v1/eitypes/{eiTypeId}':
430 get:
431 tags:
432 - Enrichment Data Producer API
433 summary: Definitions for an individual EI Type
434 description: Query EI type
435 operationId: getEiTypeUsingGET_1
436 produces:
437 - application/json
438 parameters:
439 - name: eiTypeId
440 in: path
441 description: eiTypeId
442 required: true
443 type: string
444 responses:
445 '200':
446 description: EI type
447 schema:
448 $ref: '#/definitions/producer_ei_type_info'
449 '401':
450 description: Unauthorized
451 '403':
452 description: Forbidden
453 '404':
454 description: Enrichment Information type is not found
455 schema:
456 $ref: '#/definitions/error_information'
457 deprecated: false
458 /producer_simulator/job_created:
459 post:
460 tags:
461 - Producer Simulator
462 summary: Callback for job creation
463 operationId: jobCreatedCallbackUsingPOST
464 consumes:
465 - application/json
466 produces:
467 - application/json
468 parameters:
469 - in: body
470 name: request
471 description: request
472 required: true
473 schema:
474 $ref: '#/definitions/producer_ei_job_request'
475 responses:
476 '200':
477 description: OK
478 schema:
479 type: object
480 '201':
481 description: Created
482 '401':
483 description: Unauthorized
484 '403':
485 description: Forbidden
486 '404':
487 description: Not Found
488 deprecated: false
489 /producer_simulator/job_deleted:
490 post:
491 tags:
492 - Producer Simulator
493 summary: Callback for job deletion
494 operationId: jobDeletedCallbackUsingPOST
495 consumes:
496 - application/json
497 produces:
498 - application/json
499 parameters:
500 - in: body
501 name: request
502 description: request
503 required: true
504 schema:
505 $ref: '#/definitions/producer_ei_job_request'
506 responses:
507 '200':
508 description: OK
509 schema:
510 type: object
511 '201':
512 description: Created
513 '401':
514 description: Unauthorized
515 '403':
516 description: Forbidden
517 '404':
518 description: Not Found
519 deprecated: false
PatrikBuhrd1d08542020-09-11 16:50:37 +0200520definitions:
521 ei_job_info:
522 type: object
PatrikBuhrebf32112020-09-16 13:17:29 +0200523 required:
524 - job_data
525 - owner
PatrikBuhrd1d08542020-09-11 16:50:37 +0200526 properties:
527 job_data:
528 type: object
529 description: EI Type specific job data
530 owner:
531 type: string
532 description: Identity of the owner of the job
PatrikBuhrd1d08542020-09-11 16:50:37 +0200533 title: ei_job_info
534 description: Information for a Enrichment Information Job
535 ei_job_status:
536 type: object
PatrikBuhrebf32112020-09-16 13:17:29 +0200537 required:
538 - operational_state
PatrikBuhrd1d08542020-09-11 16:50:37 +0200539 properties:
540 operational_state:
541 type: string
542 description: |-
543 Operational state, values:
544 ENABLED: TBD
545 DISABLED: TBD.
546 enum:
547 - ENABLED
548 - DISABLED
549 title: ei_job_status
550 description: Status for an EI Job
551 ei_type_info:
552 type: object
553 properties:
554 job_data_schema:
555 type: object
556 description: Json schema for the job data
557 title: ei_type_info
558 description: Information for an EI type
559 error_information:
560 type: object
561 properties:
562 detail:
563 type: string
564 example: EI job type not found
565 description: ' A human-readable explanation specific to this occurrence of the problem.'
566 status:
567 type: integer
568 format: int32
569 example: 503
570 description: 'The HTTP status code generated by the origin server for this occurrence of the problem. '
571 title: error_information
572 description: 'Problem as defined in https://tools.ietf.org/html/rfc7807'
PatrikBuhrebf32112020-09-16 13:17:29 +0200573 producer_ei_job_request:
574 type: object
575 required:
576 - identity
577 properties:
578 identity:
579 type: string
580 description: Json for the job data
581 job_data:
582 type: object
583 description: Json for the job data
584 type_identity:
585 type: string
586 description: Type idenitity for the job
587 title: producer_ei_job_request
588 description: Information EI job start
589 producer_ei_type_info:
590 type: object
591 properties:
592 job_data_schema:
593 type: object
594 description: Json schema for the job data
595 producer_ids:
596 type: array
597 description: Registered producers
598 items:
599 type: string
600 title: producer_ei_type_info
601 description: Information for an EI type
602 producer_ei_type_registration_info:
603 type: object
604 required:
605 - ei_type_identity
606 properties:
607 ei_type_identity:
608 type: string
609 description: EI type identity
610 job_data_schema:
611 type: object
612 description: Json schema for the job data
613 title: producer_ei_type_registration_info
614 description: Information for an EI type
615 producer_registration_info:
616 type: object
617 required:
618 - job_creation_callback_url
619 - job_deletion_callback_url
620 - supported_ei_types
621 properties:
622 job_creation_callback_url:
623 type: string
624 description: callback for job creation
625 job_deletion_callback_url:
626 type: string
627 description: callback for job deletion
628 supported_ei_types:
629 type: array
630 description: Supported EI types
631 items:
632 $ref: '#/definitions/producer_ei_type_registration_info'
633 title: producer_registration_info
634 description: Information for an EI Producer
PatrikBuhrd1d08542020-09-11 16:50:37 +0200635