Enrichment Coordination Service
First part. Consumer API defined.
Change-Id: I0841cba636c2e79ed0e54978641434e83aff77e5
Issue-ID: NONRTRIC-173
Signed-off-by: PatrikBuhr <patrik.buhr@est.tech>
diff --git a/enrichment-coordinator-service/docs/api.yaml b/enrichment-coordinator-service/docs/api.yaml
new file mode 100644
index 0000000..a5c07e7
--- /dev/null
+++ b/enrichment-coordinator-service/docs/api.yaml
@@ -0,0 +1,300 @@
+swagger: '2.0'
+info:
+ description: This page lists all the rest apis for the service.
+ version: '1.0'
+ title: Enrichment Data service
+host: 'localhost:8081'
+basePath: /
+tags:
+ - name: A1-E Enrichment Data Consumer API
+ description: Consumer Controller
+paths:
+ /A1-EI/v1/eitypes:
+ get:
+ tags:
+ - A1-E Enrichment Data Consumer API
+ summary: Query EI type identifiers
+ description: DETAILS TBD
+ operationId: getEiTypeIdentifiersUsingGET
+ produces:
+ - application/json
+ responses:
+ '200':
+ description: EI type identifiers
+ schema:
+ type: array
+ items:
+ type: string
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Not Found
+ deprecated: false
+ '/A1-EI/v1/eitypes/{eiTypeId}':
+ get:
+ tags:
+ - A1-E Enrichment Data Consumer API
+ summary: Definitions for an individual EI Type
+ description: Query EI type
+ operationId: getEiTypeUsingGET
+ produces:
+ - application/json
+ parameters:
+ - name: eiTypeId
+ in: path
+ description: eiTypeId
+ required: true
+ type: string
+ responses:
+ '200':
+ description: EI type
+ schema:
+ $ref: '#/definitions/ei_type_info'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Enrichment Information type is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ '/A1-EI/v1/eitypes/{eiTypeId}/eijobs':
+ get:
+ tags:
+ - A1-E Enrichment Data Consumer API
+ summary: Query EI job identifiers
+ description: Returns the identifiers for an EI Type
+ operationId: getEiJobIdsUsingGET
+ produces:
+ - application/json
+ parameters:
+ - name: eiTypeId
+ in: path
+ description: eiTypeId
+ required: true
+ type: string
+ - in: body
+ name: owner
+ description: identifies the owner of the job
+ required: false
+ schema:
+ type: string
+ responses:
+ '200':
+ description: EI type
+ schema:
+ type: array
+ items:
+ type: string
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Enrichment Information type is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ '/A1-EI/v1/eitypes/{eiTypeId}/eijobs/{eiJobId}':
+ get:
+ tags:
+ - A1-E Enrichment Data Consumer API
+ summary: Individual EI Job
+ operationId: getIndividualEiJobUsingGET
+ produces:
+ - application/json
+ parameters:
+ - name: eiJobId
+ in: path
+ description: eiJobId
+ required: true
+ type: string
+ - name: eiTypeId
+ in: path
+ description: eiTypeId
+ required: true
+ type: string
+ responses:
+ '200':
+ description: EI Job
+ schema:
+ $ref: '#/definitions/ei_job_info'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Enrichment Information type or job is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ put:
+ tags:
+ - A1-E Enrichment Data Consumer API
+ summary: Individual EI Job
+ description: Create or update an EI Job
+ operationId: putIndividualEiJobUsingPUT
+ consumes:
+ - application/json
+ produces:
+ - application/json
+ parameters:
+ - name: eiJobId
+ in: path
+ description: eiJobId
+ required: true
+ type: string
+ - in: body
+ name: eiJobInfo
+ description: eiJobInfo
+ required: true
+ schema:
+ $ref: '#/definitions/ei_job_info'
+ - name: eiTypeId
+ in: path
+ description: eiTypeId
+ required: true
+ type: string
+ responses:
+ '200':
+ description: Job updated
+ schema:
+ type: object
+ '201':
+ description: Job created
+ schema:
+ type: object
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Enrichment Information type is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ delete:
+ tags:
+ - A1-E Enrichment Data Consumer API
+ summary: Individual EI Job
+ description: Delete an EI job
+ operationId: deleteIndividualEiJobUsingDELETE
+ produces:
+ - application/json
+ parameters:
+ - name: eiJobId
+ in: path
+ description: eiJobId
+ required: true
+ type: string
+ - name: eiTypeId
+ in: path
+ description: eiTypeId
+ required: true
+ type: string
+ responses:
+ '200':
+ description: Not used
+ schema:
+ type: object
+ '204':
+ description: Job deleted
+ schema:
+ type: object
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Enrichment Information type or job is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ '/A1-EI/v1/eitypes/{eiTypeId}/eijobs/{eiJobId}/status':
+ get:
+ tags:
+ - A1-E Enrichment Data Consumer API
+ summary: EI Job status
+ operationId: getEiJobStatusUsingGET
+ produces:
+ - application/json
+ parameters:
+ - name: eiJobId
+ in: path
+ description: eiJobId
+ required: true
+ type: string
+ - name: eiTypeId
+ in: path
+ description: eiTypeId
+ required: true
+ type: string
+ responses:
+ '200':
+ description: EI Job status
+ schema:
+ $ref: '#/definitions/ei_job_status'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Enrichment Information type or job is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+definitions:
+ ei_job_info:
+ type: object
+ properties:
+ job_data:
+ type: object
+ description: EI Type specific job data
+ owner:
+ type: string
+ description: Identity of the owner of the job
+ result_target:
+ type: string
+ description: the deliver information for the EI. This is typically a URL.
+ title: ei_job_info
+ description: Information for a Enrichment Information Job
+ ei_job_status:
+ type: object
+ properties:
+ operational_state:
+ type: string
+ description: |-
+ Operational state, values:
+ ENABLED: TBD
+ DISABLED: TBD.
+ enum:
+ - ENABLED
+ - DISABLED
+ title: ei_job_status
+ description: Status for an EI Job
+ ei_type_info:
+ type: object
+ properties:
+ job_data_schema:
+ type: object
+ description: Json schema for the job data
+ title: ei_type_info
+ description: Information for an EI type
+ error_information:
+ type: object
+ properties:
+ detail:
+ type: string
+ example: EI job type not found
+ description: ' A human-readable explanation specific to this occurrence of the problem.'
+ status:
+ type: integer
+ format: int32
+ example: 503
+ description: 'The HTTP status code generated by the origin server for this occurrence of the problem. '
+ title: error_information
+ description: 'Problem as defined in https://tools.ietf.org/html/rfc7807'
+