Generate api.json
[nonrtric.git] / enrichment-coordinator-service / docs / api.yaml
1 basePath: /
2 paths:
3   /producer_simulator/job_deleted_error:
4     post:
5       summary: 'Callback for EI job creation, returns error'
6       deprecated: false
7       produces:
8         - application/json
9       operationId: jobDeletedCallbackReturnErrorUsingPOST
10       responses:
11         '200':
12           description: OK
13         '201':
14           description: Created
15         '401':
16           description: Unauthorized
17         '403':
18           description: Forbidden
19         '404':
20           description: Not Found
21       parameters:
22         - schema:
23             $ref: '#/definitions/producer_ei_job_request'
24           in: body
25           name: request
26           description: request
27           required: true
28       tags:
29         - Producer Simulator
30       consumes:
31         - application/json
32   /producer_simulator/supervision:
33     get:
34       summary: Producer supervision
35       deprecated: false
36       produces:
37         - application/json
38       operationId: producerSupervisionUsingGET
39       responses:
40         '200':
41           schema:
42             type: string
43           description: OK
44         '401':
45           description: Unauthorized
46         '403':
47           description: Forbidden
48         '404':
49           description: Not Found
50       tags:
51         - Producer Simulator
52   '/A1-EI/v1/eitypes/{eiTypeId}/eijobs':
53     get:
54       summary: EI job identifiers
55       deprecated: false
56       produces:
57         - application/json
58       operationId: getEiJobIdsUsingGET
59       responses:
60         '200':
61           schema:
62             type: array
63             items:
64               type: string
65           description: EI job identifiers
66         '401':
67           description: Unauthorized
68         '403':
69           description: Forbidden
70         '404':
71           schema:
72             $ref: '#/definitions/error_information'
73           description: Enrichment Information type is not found
74       parameters:
75         - in: path
76           name: eiTypeId
77           description: eiTypeId
78           type: string
79           required: true
80         - schema:
81             type: string
82           in: body
83           name: owner
84           description: identifies the owner of the job
85           required: false
86       tags:
87         - A1-E Enrichment Data Consumer API
88   '/A1-EI/v1/eitypes/{eiTypeId}':
89     get:
90       summary: Individual EI type
91       deprecated: false
92       produces:
93         - application/json
94       operationId: getEiTypeUsingGET
95       responses:
96         '200':
97           schema:
98             $ref: '#/definitions/EiType'
99           description: EI type
100         '401':
101           description: Unauthorized
102         '403':
103           description: Forbidden
104         '404':
105           schema:
106             $ref: '#/definitions/error_information'
107           description: Enrichment Information type is not found
108       parameters:
109         - in: path
110           name: eiTypeId
111           description: eiTypeId
112           type: string
113           required: true
114       tags:
115         - A1-E Enrichment Data Consumer API
116   /ei-producer/v1/eitypes:
117     get:
118       summary: EI type identifiers
119       deprecated: false
120       produces:
121         - application/json
122       operationId: getEiTypeIdentifiersUsingGET_1
123       responses:
124         '200':
125           schema:
126             type: array
127             items:
128               type: string
129           description: EI type identifiers
130         '401':
131           description: Unauthorized
132         '403':
133           description: Forbidden
134         '404':
135           description: Not Found
136       tags:
137         - Enrichment Data Producer API
138   /A1-EI/v1/eitypes:
139     get:
140       summary: EI type identifiers
141       deprecated: false
142       produces:
143         - application/json
144       operationId: getEiTypeIdentifiersUsingGET
145       responses:
146         '200':
147           schema:
148             type: array
149             items:
150               type: string
151           description: EI type identifiers
152         '401':
153           description: Unauthorized
154         '403':
155           description: Forbidden
156         '404':
157           description: Not Found
158       tags:
159         - A1-E Enrichment Data Consumer API
160   /producer_simulator/job_deleted:
161     post:
162       summary: Callback for EI job deletion
163       deprecated: false
164       produces:
165         - application/json
166       operationId: jobDeletedCallbackUsingPOST
167       responses:
168         '200':
169           description: OK
170         '201':
171           description: Created
172         '401':
173           description: Unauthorized
174         '403':
175           description: Forbidden
176         '404':
177           description: Not Found
178       parameters:
179         - schema:
180             $ref: '#/definitions/producer_ei_job_request'
181           in: body
182           name: request
183           description: request
184           required: true
185       tags:
186         - Producer Simulator
187       consumes:
188         - application/json
189   '/A1-EI/v1/eitypes/{eiTypeId}/eijobs/{eiJobId}/status':
190     get:
191       summary: EI Job status
192       deprecated: false
193       produces:
194         - application/json
195       operationId: getEiJobStatusUsingGET
196       responses:
197         '200':
198           schema:
199             $ref: '#/definitions/EiJobStatus'
200           description: EI Job status
201         '401':
202           description: Unauthorized
203         '403':
204           description: Forbidden
205         '404':
206           schema:
207             $ref: '#/definitions/error_information'
208           description: Enrichment Information type or job is not found
209       parameters:
210         - in: path
211           name: eiJobId
212           description: eiJobId
213           type: string
214           required: true
215         - in: path
216           name: eiTypeId
217           description: eiTypeId
218           type: string
219           required: true
220       tags:
221         - A1-E Enrichment Data Consumer API
222   '/ei-producer/v1/eiproducers/{eiProducerId}/status':
223     get:
224       summary: EI producer status
225       deprecated: false
226       produces:
227         - application/json
228       operationId: getEiProducerStatusUsingGET
229       responses:
230         '200':
231           schema:
232             $ref: '#/definitions/producer_status'
233           description: EI jobs
234         '401':
235           description: Unauthorized
236         '403':
237           description: Forbidden
238         '404':
239           schema:
240             $ref: '#/definitions/error_information'
241           description: Enrichment Information producer is not found
242       parameters:
243         - in: path
244           name: eiProducerId
245           description: eiProducerId
246           type: string
247           required: true
248       tags:
249         - Enrichment Data Producer API
250   /producer_simulator/supervision_error:
251     get:
252       summary: Producer supervision error
253       deprecated: false
254       produces:
255         - application/json
256       operationId: producerSupervisionErrorUsingGET
257       responses:
258         '200':
259           schema:
260             type: string
261           description: OK
262         '401':
263           description: Unauthorized
264         '403':
265           description: Forbidden
266         '404':
267           description: Not Found
268       tags:
269         - Producer Simulator
270   /ei-producer/v1/eiproducers:
271     get:
272       summary: EI producer identifiers
273       deprecated: false
274       produces:
275         - application/json
276       operationId: getEiProducerIdentifiersUsingGET
277       responses:
278         '200':
279           schema:
280             type: array
281             items:
282               type: string
283           description: EI producer identifiers
284         '401':
285           description: Unauthorized
286         '403':
287           description: Forbidden
288         '404':
289           description: Not Found
290       tags:
291         - Enrichment Data Producer API
292   '/ei-producer/v1/eitypes/{eiTypeId}':
293     get:
294       summary: Individual EI Type
295       deprecated: false
296       produces:
297         - application/json
298       operationId: getEiTypeUsingGET_1
299       responses:
300         '200':
301           schema:
302             $ref: '#/definitions/producer_ei_type_info'
303           description: EI type
304         '401':
305           description: Unauthorized
306         '403':
307           description: Forbidden
308         '404':
309           schema:
310             $ref: '#/definitions/error_information'
311           description: Enrichment Information type is not found
312       parameters:
313         - in: path
314           name: eiTypeId
315           description: eiTypeId
316           type: string
317           required: true
318       tags:
319         - Enrichment Data Producer API
320   /producer_simulator/job_created_error:
321     post:
322       summary: 'Callback for EI job creation, returns error'
323       deprecated: false
324       produces:
325         - application/json
326       operationId: jobCreatedCallbackReturnErrorUsingPOST
327       responses:
328         '200':
329           description: OK
330         '201':
331           description: Created
332         '401':
333           description: Unauthorized
334         '403':
335           description: Forbidden
336         '404':
337           description: Not Found
338       parameters:
339         - schema:
340             $ref: '#/definitions/producer_ei_job_request'
341           in: body
342           name: request
343           description: request
344           required: true
345       tags:
346         - Producer Simulator
347       consumes:
348         - application/json
349   '/A1-EI/v1/eitypes/{eiTypeId}/eijobs/{eiJobId}':
350     get:
351       summary: Individual EI Job
352       deprecated: false
353       produces:
354         - application/json
355       operationId: getIndividualEiJobUsingGET
356       responses:
357         '200':
358           schema:
359             $ref: '#/definitions/EiJob'
360           description: EI Job
361         '401':
362           description: Unauthorized
363         '403':
364           description: Forbidden
365         '404':
366           schema:
367             $ref: '#/definitions/error_information'
368           description: Enrichment Information type or job is not found
369       parameters:
370         - in: path
371           name: eiJobId
372           description: eiJobId
373           type: string
374           required: true
375         - in: path
376           name: eiTypeId
377           description: eiTypeId
378           type: string
379           required: true
380       tags:
381         - A1-E Enrichment Data Consumer API
382     delete:
383       summary: Individual EI Job
384       deprecated: false
385       produces:
386         - application/json
387       operationId: deleteIndividualEiJobUsingDELETE
388       responses:
389         '200':
390           description: Not used
391         '204':
392           description: Job deleted
393         '401':
394           description: Unauthorized
395         '403':
396           description: Forbidden
397         '404':
398           schema:
399             $ref: '#/definitions/error_information'
400           description: Enrichment Information type or job is not found
401       parameters:
402         - in: path
403           name: eiJobId
404           description: eiJobId
405           type: string
406           required: true
407         - in: path
408           name: eiTypeId
409           description: eiTypeId
410           type: string
411           required: true
412       tags:
413         - A1-E Enrichment Data Consumer API
414     put:
415       summary: Individual EI Job
416       deprecated: false
417       produces:
418         - application/json
419       operationId: putIndividualEiJobUsingPUT
420       responses:
421         '200':
422           description: Job updated
423         '201':
424           description: Job created
425         '401':
426           description: Unauthorized
427         '403':
428           description: Forbidden
429         '404':
430           schema:
431             $ref: '#/definitions/error_information'
432           description: Enrichment Information type is not found
433       parameters:
434         - in: path
435           name: eiJobId
436           description: eiJobId
437           type: string
438           required: true
439         - schema:
440             $ref: '#/definitions/EiJob'
441           in: body
442           name: eiJobInfo
443           description: eiJobInfo
444           required: true
445         - in: path
446           name: eiTypeId
447           description: eiTypeId
448           type: string
449           required: true
450       tags:
451         - A1-E Enrichment Data Consumer API
452       consumes:
453         - application/json
454   '/ei-producer/v1/eiproducers/{eiProducerId}':
455     get:
456       summary: Individual EI producer
457       deprecated: false
458       produces:
459         - application/json
460       operationId: getEiProducerUsingGET
461       responses:
462         '200':
463           schema:
464             $ref: '#/definitions/producer_registration_info'
465           description: EI Jobs
466         '401':
467           description: Unauthorized
468         '403':
469           description: Forbidden
470         '404':
471           schema:
472             $ref: '#/definitions/error_information'
473           description: Enrichment Information producer is not found
474       parameters:
475         - in: path
476           name: eiProducerId
477           description: eiProducerId
478           type: string
479           required: true
480       tags:
481         - Enrichment Data Producer API
482     delete:
483       summary: Individual EI producer
484       deprecated: false
485       produces:
486         - application/json
487       operationId: deleteEiProducerUsingDELETE
488       responses:
489         '200':
490           description: Not used
491         '204':
492           description: Producer deleted
493         '401':
494           description: Unauthorized
495         '403':
496           description: Forbidden
497         '404':
498           schema:
499             $ref: '#/definitions/error_information'
500           description: Producer is not found
501       parameters:
502         - in: path
503           name: eiProducerId
504           description: eiProducerId
505           type: string
506           required: true
507       tags:
508         - Enrichment Data Producer API
509     put:
510       summary: Individual EI producer
511       deprecated: false
512       produces:
513         - application/json
514       operationId: putEiProducerUsingPUT
515       responses:
516         '200':
517           description: Producer updated
518         '201':
519           description: Producer created
520         '401':
521           description: Unauthorized
522         '403':
523           description: Forbidden
524         '404':
525           description: Not Found
526       parameters:
527         - in: path
528           name: eiProducerId
529           description: eiProducerId
530           type: string
531           required: true
532         - schema:
533             $ref: '#/definitions/producer_registration_info'
534           in: body
535           name: registrationInfo
536           description: registrationInfo
537           required: true
538       tags:
539         - Enrichment Data Producer API
540       consumes:
541         - application/json
542   '/ei-producer/v1/eiproducers/{eiProducerId}/eijobs':
543     get:
544       summary: EI job definitions
545       deprecated: false
546       produces:
547         - application/json
548       description: EI job definitions for one EI producer
549       operationId: getEiProducerJobsUsingGET
550       responses:
551         '200':
552           schema:
553             type: array
554             items:
555               $ref: '#/definitions/producer_ei_job_request'
556           description: EI jobs
557         '401':
558           description: Unauthorized
559         '403':
560           description: Forbidden
561         '404':
562           schema:
563             $ref: '#/definitions/error_information'
564           description: Enrichment Information producer is not found
565       parameters:
566         - in: path
567           name: eiProducerId
568           description: eiProducerId
569           type: string
570           required: true
571       tags:
572         - Enrichment Data Producer API
573   /producer_simulator/job_created:
574     post:
575       summary: Callback for EI job creation
576       deprecated: false
577       produces:
578         - application/json
579       operationId: jobCreatedCallbackUsingPOST
580       responses:
581         '200':
582           description: OK
583         '201':
584           description: Created
585         '401':
586           description: Unauthorized
587         '403':
588           description: Forbidden
589         '404':
590           description: Not Found
591       parameters:
592         - schema:
593             $ref: '#/definitions/producer_ei_job_request'
594           in: body
595           name: request
596           description: request
597           required: true
598       tags:
599         - Producer Simulator
600       consumes:
601         - application/json
602 host: 'localhost:43453'
603 definitions:
604   EiType:
605     description: Information for an EI type
606     type: object
607     title: EiType
608     properties:
609       eiJobParametersSchema:
610         description: Json schema for the job data
611         type: object
612   producer_ei_job_request:
613     description: The body of the EI producer callbacks for EI job creation and deletion
614     type: object
615     title: producer_ei_job_request
616     required:
617       - ei_job_identity
618     properties:
619       ei_job_identity:
620         description: Idenitity of the EI job
621         type: string
622       ei_job_data:
623         description: Json for the job data
624         type: object
625       target_uri:
626         description: URI for the target of the EI
627         type: string
628       ei_type_identity:
629         description: Type idenitity for the job
630         type: string
631   error_information:
632     description: 'Problem as defined in https://tools.ietf.org/html/rfc7807'
633     type: object
634     title: error_information
635     properties:
636       detail:
637         description: A human-readable explanation specific to this occurrence of the problem.
638         type: string
639         example: EI job type not found
640       status:
641         format: int32
642         description: The HTTP status code generated by the origin server for this occurrence of the problem.
643         type: integer
644         example: 404
645   void:
646     description: Void/empty
647     type: object
648     title: void
649   EiJob:
650     description: Information for an Enrichment Information Job
651     type: object
652     title: EiJob
653     required:
654       - jobOwner
655       - jobParameters
656       - targetUri
657     properties:
658       targetUri:
659         description: The target of the EI data
660         type: string
661       jobOwner:
662         description: Identity of the owner of the job
663         type: string
664       jobParameters:
665         description: EI Type specific job data
666         type: object
667   producer_ei_type_registration_info:
668     description: Information for an EI type
669     type: object
670     title: producer_ei_type_registration_info
671     required:
672       - ei_type_identity
673     properties:
674       ei_type_identity:
675         description: EI type identity
676         type: string
677       ei_job_data_schema:
678         description: Json schema for the job data
679         type: object
680   EiJobStatus:
681     description: Status for an EI Job
682     type: object
683     title: EiJobStatus
684     required:
685       - operationalState
686     properties:
687       operationalState:
688         description: |-
689           Operational state, values:
690           ENABLED: TBD
691           DISABLED: TBD.
692         type: string
693         enum:
694           - ENABLED
695           - DISABLED
696   Mono«ResponseEntity«object»»:
697     type: object
698     title: Mono«ResponseEntity«object»»
699   producer_ei_type_info:
700     description: Information for an EI type
701     type: object
702     title: producer_ei_type_info
703     properties:
704       ei_producer_ids:
705         description: Registered producers
706         type: array
707         items:
708           type: string
709       ei_job_data_schema:
710         description: Json schema for the job data
711         type: object
712   producer_registration_info:
713     description: Information for an EI producer
714     type: object
715     title: producer_registration_info
716     required:
717       - ei_job_creation_callback_url
718       - ei_job_deletion_callback_url
719       - ei_producer_supervision_callback_url
720       - supported_ei_types
721     properties:
722       supported_ei_types:
723         description: Supported EI types
724         type: array
725         items:
726           $ref: '#/definitions/producer_ei_type_registration_info'
727       ei_job_creation_callback_url:
728         description: callback for job creation
729         type: string
730       ei_job_deletion_callback_url:
731         description: callback for job deletion
732         type: string
733       ei_producer_supervision_callback_url:
734         description: callback for producer supervision
735         type: string
736   producer_status:
737     description: Status for an EI Producer
738     type: object
739     title: producer_status
740     required:
741       - operational_state
742     properties:
743       operational_state:
744         description: |-
745           Operational state, values:
746           ENABLED: TBD
747           DISABLED: TBD.
748         type: string
749         enum:
750           - ENABLED
751           - DISABLED
752 swagger: '2.0'
753 info:
754   description: This page lists all the rest apis for the service.
755   title: Enrichment Data service
756   version: '1.0'
757 tags:
758   - name: A1-E Enrichment Data Consumer API
759     description: Consumer Controller
760   - name: Enrichment Data Producer API
761     description: Producer Controller
762   - name: Producer Simulator
763     description: Producer Simulator Controller
764