blob: b3acfdaf9d59bc53c55d1dd112d49e59a3e14bde [file] [log] [blame]
openapi: 3.0.1
info:
title: Generic Dmaap Information Producer
description: Reads data from DMAAP and sends 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:
/dmaap_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'
/dmaap_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
/actuator/threaddump:
get:
tags:
- Actuator
summary: Actuator web endpoint 'threaddump'
operationId: handle_2_1_3
responses:
200:
description: OK
content:
'*/*':
schema:
type: object
/actuator/info:
get:
tags:
- Actuator
summary: Actuator web endpoint 'info'
operationId: handle_9
responses:
200:
description: OK
content:
'*/*':
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
/actuator/loggers:
get:
tags:
- Actuator
summary: Actuator web endpoint 'loggers'
operationId: handle_6
responses:
200:
description: OK
content:
'*/*':
schema:
type: object
/actuator/health/**:
get:
tags:
- Actuator
summary: Actuator web endpoint 'health-path'
operationId: handle_12
responses:
200:
description: OK
content:
'*/*':
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: handle_5
parameters:
- name: requiredMetricName
in: path
required: true
style: simple
explode: false
schema:
type: string
responses:
200:
description: OK
content:
'*/*':
schema:
type: object
/actuator:
get:
tags:
- Actuator
summary: Actuator root web endpoint
operationId: links_1
responses:
200:
description: OK
content:
'*/*':
schema:
type: object
additionalProperties:
type: object
additionalProperties:
$ref: '#/components/schemas/Link'
/actuator/logfile:
get:
tags:
- Actuator
summary: Actuator web endpoint 'logfile'
operationId: handle_8
responses:
200:
description: OK
content:
'*/*':
schema:
type: object
/actuator/loggers/{name}:
get:
tags:
- Actuator
summary: Actuator web endpoint 'loggers-name'
operationId: handle_7
parameters:
- name: name
in: path
required: true
style: simple
explode: false
schema:
type: string
responses:
200:
description: OK
content:
'*/*':
schema:
type: object
post:
tags:
- Actuator
summary: Actuator web endpoint 'loggers-name'
operationId: handle_0
parameters:
- name: name
in: path
required: true
style: simple
explode: false
schema:
type: string
responses:
200:
description: OK
content:
'*/*':
schema:
type: object
/dmaap_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/health:
get:
tags:
- Actuator
summary: Actuator web endpoint 'health'
operationId: handle_11
responses:
200:
description: OK
content:
'*/*':
schema:
type: object
/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: handle_4
responses:
200:
description: OK
content:
'*/*':
schema:
type: object
/actuator/heapdump:
get:
tags:
- Actuator
summary: Actuator web endpoint 'heapdump'
operationId: handle_10
responses:
200:
description: OK
content:
'*/*':
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
void:
type: object
description: Void/empty
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