blob: 6cd3525b0eda705c9146595ebf7cbe7dcb7d95d9 [file] [log] [blame]
{
"components": {"schemas": {
"producer_info_job_request": {
"description": "The body of the Information Producer callbacks for Information Job creation and deletion",
"type": "object",
"required": ["info_job_identity"],
"properties": {
"owner": {
"description": "The owner of the job",
"type": "string"
},
"last_updated": {
"description": "The time when the job was last updated or created (ISO-8601)",
"type": "string"
},
"info_job_identity": {
"description": "Identity of the Information Job",
"type": "string"
},
"target_uri": {
"description": "URI for the target of the produced Information",
"type": "string"
},
"info_job_data": {
"description": "Json for the job data",
"type": "object"
},
"info_type_identity": {
"description": "Type identity for the job",
"type": "string"
}
}
},
"error_information": {
"description": "Problem as defined in https://tools.ietf.org/html/rfc7807",
"type": "object",
"properties": {
"detail": {
"description": " A human-readable explanation specific to this occurrence of the problem.",
"type": "string",
"example": "Policy type not found"
},
"status": {
"format": "int32",
"description": "The HTTP status code generated by the origin server for this occurrence of the problem. ",
"type": "integer",
"example": 503
}
}
},
"void": {
"description": "Void/empty",
"type": "object"
},
"producer_registration_info": {
"description": "Information for an Information Producer",
"type": "object",
"required": [
"info_job_callback_url",
"info_producer_supervision_callback_url",
"supported_info_types"
],
"properties": {
"info_producer_supervision_callback_url": {
"description": "callback for producer supervision",
"type": "string"
},
"supported_info_types": {
"description": "Supported Information Type IDs",
"type": "array",
"items": {
"description": "Supported Information Type IDs",
"type": "string"
}
},
"info_job_callback_url": {
"description": "callback for Information Job",
"type": "string"
}
}
},
"Link": {
"type": "object",
"properties": {
"templated": {"type": "boolean"},
"href": {"type": "string"}
}
},
"producer_info_type_info": {
"description": "Information for an Information Type",
"type": "object",
"required": [
"info_job_data_schema",
"info_type_information"
],
"properties": {
"info_type_information": {
"description": "Type specific information for the information type",
"type": "object"
},
"info_job_data_schema": {
"description": "Json schema for the job data",
"type": "object"
}
}
}
}},
"openapi": "3.0.1",
"paths": {
"/dmaap_dataproducer/info_job": {
"post": {
"summary": "Callback for Information Job creation/modification",
"requestBody": {
"content": {"application/json": {"schema": {"type": "string"}}},
"required": true
},
"description": "The call is invoked to activate or to modify a data subscription. The endpoint is provided by the Information Producer.",
"operationId": "jobCreatedCallback",
"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"}}}
}
},
"tags": ["Producer job control API"]
},
"get": {
"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"}
}}}
}},
"tags": ["Producer job control API"]
}
},
"/dmaap_dataproducer/health_check": {"get": {
"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"}}}
}},
"tags": ["Producer job control API"]
}},
"/actuator/threaddump": {"get": {
"summary": "Actuator web endpoint 'threaddump'",
"operationId": "handle_2_1_3",
"responses": {"200": {
"description": "OK",
"content": {"*/*": {"schema": {"type": "object"}}}
}},
"tags": ["Actuator"]
}},
"/actuator/info": {"get": {
"summary": "Actuator web endpoint 'info'",
"operationId": "handle_9",
"responses": {"200": {
"description": "OK",
"content": {"*/*": {"schema": {"type": "object"}}}
}},
"tags": ["Actuator"]
}},
"/data-producer/v1/info-types/{infoTypeId}": {"put": {
"requestBody": {
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/producer_info_type_info"}}},
"required": true
},
"operationId": "putInfoType",
"responses": {"200": {
"description": "OK",
"content": {"application/json": {"schema": {"type": "object"}}}
}},
"parameters": [{
"schema": {"type": "string"},
"in": "path",
"name": "infoTypeId",
"required": true
}],
"tags": ["Information Coordinator Service Simulator (exists only in test)"]
}},
"/actuator/loggers": {"get": {
"summary": "Actuator web endpoint 'loggers'",
"operationId": "handle_6",
"responses": {"200": {
"description": "OK",
"content": {"*/*": {"schema": {"type": "object"}}}
}},
"tags": ["Actuator"]
}},
"/actuator/health/**": {"get": {
"summary": "Actuator web endpoint 'health-path'",
"operationId": "handle_12",
"responses": {"200": {
"description": "OK",
"content": {"*/*": {"schema": {"type": "object"}}}
}},
"tags": ["Actuator"]
}},
"/data-producer/v1/info-producers/{infoProducerId}": {
"get": {
"operationId": "getInfoProducer",
"responses": {"200": {
"description": "OK",
"content": {"application/json": {"schema": {"type": "object"}}}
}},
"parameters": [{
"schema": {"type": "string"},
"in": "path",
"name": "infoProducerId",
"required": true
}],
"tags": ["Information Coordinator Service Simulator (exists only in test)"]
},
"put": {
"requestBody": {
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/producer_registration_info"}}},
"required": true
},
"operationId": "putInfoProducer",
"responses": {"200": {
"description": "OK",
"content": {"application/json": {"schema": {"type": "object"}}}
}},
"parameters": [{
"schema": {"type": "string"},
"in": "path",
"name": "infoProducerId",
"required": true
}],
"tags": ["Information Coordinator Service Simulator (exists only in test)"]
}
},
"/actuator/metrics/{requiredMetricName}": {"get": {
"summary": "Actuator web endpoint 'metrics-requiredMetricName'",
"operationId": "handle_5",
"responses": {"200": {
"description": "OK",
"content": {"*/*": {"schema": {"type": "object"}}}
}},
"parameters": [{
"schema": {"type": "string"},
"in": "path",
"name": "requiredMetricName",
"required": true
}],
"tags": ["Actuator"]
}},
"/actuator": {"get": {
"summary": "Actuator root web endpoint",
"operationId": "links_1",
"responses": {"200": {
"description": "OK",
"content": {"*/*": {"schema": {
"additionalProperties": {
"additionalProperties": {"$ref": "#/components/schemas/Link"},
"type": "object"
},
"type": "object"
}}}
}},
"tags": ["Actuator"]
}},
"/actuator/logfile": {"get": {
"summary": "Actuator web endpoint 'logfile'",
"operationId": "handle_8",
"responses": {"200": {
"description": "OK",
"content": {"*/*": {"schema": {"type": "object"}}}
}},
"tags": ["Actuator"]
}},
"/actuator/loggers/{name}": {
"post": {
"summary": "Actuator web endpoint 'loggers-name'",
"operationId": "handle_0",
"responses": {"200": {
"description": "OK",
"content": {"*/*": {"schema": {"type": "object"}}}
}},
"parameters": [{
"schema": {"type": "string"},
"in": "path",
"name": "name",
"required": true
}],
"tags": ["Actuator"]
},
"get": {
"summary": "Actuator web endpoint 'loggers-name'",
"operationId": "handle_7",
"responses": {"200": {
"description": "OK",
"content": {"*/*": {"schema": {"type": "object"}}}
}},
"parameters": [{
"schema": {"type": "string"},
"in": "path",
"name": "name",
"required": true
}],
"tags": ["Actuator"]
}
},
"/dmaap_dataproducer/info_job/{infoJobId}": {"delete": {
"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",
"responses": {"200": {
"description": "OK",
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/void"}}}
}},
"parameters": [{
"schema": {"type": "string"},
"in": "path",
"name": "infoJobId",
"required": true
}],
"tags": ["Producer job control API"]
}},
"/actuator/health": {"get": {
"summary": "Actuator web endpoint 'health'",
"operationId": "handle_11",
"responses": {"200": {
"description": "OK",
"content": {"*/*": {"schema": {"type": "object"}}}
}},
"tags": ["Actuator"]
}},
"/consumer": {"post": {
"summary": "Consume data",
"requestBody": {
"content": {"application/json": {"schema": {"type": "string"}}},
"required": true
},
"description": "The call is invoked to push data to consumer",
"operationId": "postData",
"responses": {"200": {
"description": "OK",
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/void"}}}
}},
"tags": ["Test Consumer Simulator (exists only in test)"]
}},
"/dmaap-topic-1": {"get": {
"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"}}}
}},
"tags": ["DMAAP Simulator (exists only in test)"]
}},
"/actuator/metrics": {"get": {
"summary": "Actuator web endpoint 'metrics'",
"operationId": "handle_4",
"responses": {"200": {
"description": "OK",
"content": {"*/*": {"schema": {"type": "object"}}}
}},
"tags": ["Actuator"]
}},
"/actuator/heapdump": {"get": {
"summary": "Actuator web endpoint 'heapdump'",
"operationId": "handle_10",
"responses": {"200": {
"description": "OK",
"content": {"*/*": {"schema": {"type": "object"}}}
}},
"tags": ["Actuator"]
}}
},
"info": {
"license": {
"name": "Copyright (C) 2021 Nordix Foundation. Licensed under the Apache License.",
"url": "http://www.apache.org/licenses/LICENSE-2.0"
},
"description": "Reads data from DMAAP and sends it further to information consumers",
"title": "Generic Dmaap Information Producer",
"version": "1.0"
},
"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/"
}
}]
}