openapi: 3.0.1 info: title: Generic Dmaap and Kafka Information Producer description: Reads data from DMaaP and Kafka and posts it further to information consumers license: name: Copyright (C) 2021 Nordix Foundation. Licensed under the Apache License. url: http://www.apache.org/licenses/LICENSE-2.0 version: "1.0" servers: - url: / tags: - name: Actuator description: Monitor and interact externalDocs: description: Spring Boot Actuator Web API Documentation url: https://docs.spring.io/spring-boot/docs/current/actuator-api/html/ paths: /actuator/threaddump: get: tags: - Actuator summary: Actuator web endpoint 'threaddump' operationId: threaddump responses: 200: description: OK content: text/plain;charset=UTF-8: schema: type: object application/vnd.spring-boot.actuator.v3+json: schema: type: object application/json: schema: type: object application/vnd.spring-boot.actuator.v2+json: schema: type: object /actuator/info: get: tags: - Actuator summary: Actuator web endpoint 'info' operationId: info responses: 200: description: OK content: application/vnd.spring-boot.actuator.v3+json: schema: type: object application/json: schema: type: object application/vnd.spring-boot.actuator.v2+json: schema: type: object /data-producer/v1/info-types/{infoTypeId}: put: tags: - Information Coordinator Service Simulator (exists only in test) operationId: putInfoType parameters: - name: infoTypeId in: path required: true style: simple explode: false schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/producer_info_type_info' required: true responses: 200: description: OK content: application/json: schema: type: object /statistics: get: tags: - Producer job control API summary: Returns statistics operationId: getStatistics responses: 200: description: OK content: application/json: schema: $ref: '#/components/schemas/statistics_info' /generic_dataproducer/health_check: get: tags: - Producer job control API summary: Producer supervision description: The endpoint is provided by the Information Producer and is used for supervision of the producer. operationId: producerSupervision responses: 200: description: The producer is OK content: application/json: schema: type: string /generic_dataproducer/info_job: get: tags: - Producer job control API summary: Get all jobs description: Returns all info jobs, can be used for trouble shooting operationId: getJobs responses: 200: description: Information jobs content: application/json: schema: type: array items: $ref: '#/components/schemas/producer_info_job_request' post: tags: - Producer job control API summary: Callback for Information Job creation/modification description: The call is invoked to activate or to modify a data subscription. The endpoint is provided by the Information Producer. operationId: jobCreatedCallback requestBody: content: application/json: schema: type: string required: true responses: 200: description: OK content: application/json: schema: $ref: '#/components/schemas/void' 400: description: Other error in the request content: application/json: schema: $ref: '#/components/schemas/error_information' 404: description: Information type is not found content: application/json: schema: $ref: '#/components/schemas/error_information' /actuator/loggers: get: tags: - Actuator summary: Actuator web endpoint 'loggers' operationId: loggers responses: 200: description: OK content: application/vnd.spring-boot.actuator.v3+json: schema: type: object application/json: schema: type: object application/vnd.spring-boot.actuator.v2+json: schema: type: object /actuator/health/**: get: tags: - Actuator summary: Actuator web endpoint 'health-path' operationId: health-path responses: 200: description: OK content: application/vnd.spring-boot.actuator.v3+json: schema: type: object application/json: schema: type: object application/vnd.spring-boot.actuator.v2+json: schema: type: object /actuator/shutdown: post: tags: - Actuator summary: Actuator web endpoint 'shutdown' operationId: shutdown responses: 200: description: OK content: application/vnd.spring-boot.actuator.v3+json: schema: type: object application/json: schema: type: object application/vnd.spring-boot.actuator.v2+json: schema: type: object /data-producer/v1/info-producers/{infoProducerId}: get: tags: - Information Coordinator Service Simulator (exists only in test) operationId: getInfoProducer parameters: - name: infoProducerId in: path required: true style: simple explode: false schema: type: string responses: 200: description: OK content: application/json: schema: type: object put: tags: - Information Coordinator Service Simulator (exists only in test) operationId: putInfoProducer parameters: - name: infoProducerId in: path required: true style: simple explode: false schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/producer_registration_info' required: true responses: 200: description: OK content: application/json: schema: type: object /actuator/metrics/{requiredMetricName}: get: tags: - Actuator summary: Actuator web endpoint 'metrics-requiredMetricName' operationId: metrics-requiredMetricName parameters: - name: requiredMetricName in: path required: true style: simple explode: false schema: type: string responses: 200: description: OK content: application/vnd.spring-boot.actuator.v3+json: schema: type: object application/json: schema: type: object application/vnd.spring-boot.actuator.v2+json: schema: type: object /generic_dataproducer/info_job/{infoJobId}: delete: tags: - Producer job control API summary: Callback for Information Job deletion description: The call is invoked to terminate a data subscription. The endpoint is provided by the Information Producer. operationId: jobDeletedCallback parameters: - name: infoJobId in: path required: true style: simple explode: false schema: type: string responses: 200: description: OK content: application/json: schema: $ref: '#/components/schemas/void' /actuator: get: tags: - Actuator summary: Actuator root web endpoint operationId: links responses: 200: description: OK content: application/vnd.spring-boot.actuator.v3+json: schema: type: object additionalProperties: type: object additionalProperties: $ref: '#/components/schemas/Link' application/json: schema: type: object additionalProperties: type: object additionalProperties: $ref: '#/components/schemas/Link' application/vnd.spring-boot.actuator.v2+json: schema: type: object additionalProperties: type: object additionalProperties: $ref: '#/components/schemas/Link' /actuator/logfile: get: tags: - Actuator summary: Actuator web endpoint 'logfile' operationId: logfile responses: 200: description: OK content: text/plain;charset=UTF-8: schema: type: object /data-consumer/v1/info-jobs/{infoJobId}: put: tags: - Information Coordinator Service Simulator (exists only in test) operationId: putIndividualInfoJob parameters: - name: infoJobId in: path required: true style: simple explode: false schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/consumer_job' required: true responses: 200: description: OK content: application/json: schema: type: object /actuator/loggers/{name}: get: tags: - Actuator summary: Actuator web endpoint 'loggers-name' operationId: loggers-name parameters: - name: name in: path required: true style: simple explode: false schema: type: string responses: 200: description: OK content: application/vnd.spring-boot.actuator.v3+json: schema: type: object application/json: schema: type: object application/vnd.spring-boot.actuator.v2+json: schema: type: object post: tags: - Actuator summary: Actuator web endpoint 'loggers-name' operationId: loggers-name_2 parameters: - name: name in: path required: true style: simple explode: false schema: type: string requestBody: content: application/json: schema: type: string enum: - TRACE - DEBUG - INFO - WARN - ERROR - FATAL - OFF responses: 200: description: OK content: '*/*': schema: type: object /actuator/health: get: tags: - Actuator summary: Actuator web endpoint 'health' operationId: health responses: 200: description: OK content: application/vnd.spring-boot.actuator.v3+json: schema: type: object application/json: schema: type: object application/vnd.spring-boot.actuator.v2+json: schema: type: object /dmaap-topic-2: get: tags: - DMAAP Simulator (exists only in test) summary: GET from topic description: The call is invoked to activate or to modify a data subscription. The endpoint is provided by the Information Producer. operationId: getFromPmTopic responses: 200: description: OK content: application/json: schema: $ref: '#/components/schemas/void' /consumer: post: tags: - Test Consumer Simulator (exists only in test) summary: Consume data description: The call is invoked to push data to consumer operationId: postData requestBody: content: application/json: schema: type: string required: true responses: 200: description: OK content: application/json: schema: $ref: '#/components/schemas/void' /dmaap-topic-1: get: tags: - DMAAP Simulator (exists only in test) summary: GET from topic description: The call is invoked to activate or to modify a data subscription. The endpoint is provided by the Information Producer. operationId: getFromTopic responses: 200: description: OK content: application/json: schema: $ref: '#/components/schemas/void' /actuator/metrics: get: tags: - Actuator summary: Actuator web endpoint 'metrics' operationId: metrics responses: 200: description: OK content: application/vnd.spring-boot.actuator.v3+json: schema: type: object application/json: schema: type: object application/vnd.spring-boot.actuator.v2+json: schema: type: object /actuator/heapdump: get: tags: - Actuator summary: Actuator web endpoint 'heapdump' operationId: heapdump responses: 200: description: OK content: application/octet-stream: schema: type: object components: schemas: producer_info_job_request: required: - info_job_identity type: object properties: owner: type: string description: The owner of the job last_updated: type: string description: The time when the job was last updated or created (ISO-8601) info_job_identity: type: string description: Identity of the Information Job target_uri: type: string description: URI for the target of the produced Information info_job_data: type: object description: Json for the job data info_type_identity: type: string description: Type identity for the job description: The body of the Information Producer callbacks for Information Job creation and deletion error_information: type: object properties: detail: type: string description: ' A human-readable explanation specific to this occurrence of the problem.' example: Policy type not found status: type: integer description: 'The HTTP status code generated by the origin server for this occurrence of the problem. ' format: int32 example: 503 description: Problem as defined in https://tools.ietf.org/html/rfc7807 consumer_job: required: - info_type_id - job_definition - job_owner - job_result_uri type: object properties: info_type_id: type: string description: Information type Idenitifier of the subscription job job_result_uri: type: string description: The target URI of the subscribed information job_owner: type: string description: Identity of the owner of the job job_definition: type: object description: Information type specific job data status_notification_uri: type: string description: The target of Information subscription job status notifications description: Information for an Information Job void: type: object description: Void/empty job_statistics: required: - jobId - noOfReceivedBytes - noOfReceivedObjects - noOfSentBytes - noOfSentObjects - typeId type: object properties: noOfSentObjects: type: integer format: int64 jobId: type: string outputTopic: type: string noOfSentBytes: type: integer format: int64 clientId: type: string groupId: type: string noOfReceivedBytes: type: integer format: int64 typeId: type: string inputTopic: type: string noOfReceivedObjects: type: integer format: int64 description: Statistics information for one job statistics_info: type: object properties: jobStatistics: type: array description: Statistics per job items: $ref: '#/components/schemas/job_statistics' description: Statistics information producer_registration_info: required: - info_job_callback_url - info_producer_supervision_callback_url - supported_info_types type: object properties: info_producer_supervision_callback_url: type: string description: callback for producer supervision supported_info_types: type: array description: Supported Information Type IDs items: type: string description: Supported Information Type IDs info_job_callback_url: type: string description: callback for Information Job description: Information for an Information Producer Link: type: object properties: templated: type: boolean href: type: string producer_info_type_info: required: - info_job_data_schema - info_type_information type: object properties: info_type_information: type: object description: Type specific information for the information type info_job_data_schema: type: object description: Json schema for the job data description: Information for an Information Type