3 title: Data management and exposure
4 description: <h1>API documentation</h1><h2>General</h2><p> The service is mainly
5 a broker between data producers and data consumers. A data producer has the ability
6 to produce one or several types of data (Information Type). One type of data can
7 be produced by zero to many producers. <br /><br />A data consumer can have several
8 active data subscriptions (Information Job). One Information Job consists of the
9 type of data to produce and additional parameters for filtering of the data. These
10 parameters are different for different data types.</p><h2>APIs provided by the
11 service</h2><h4>A1-EI</h4><p> This API is between Near-RT RIC and the Non-RT
12 RIC. The Near-RT RIC is a data consumer, which creates Information Jobs to subscribe
13 for data. In this context, the information is referred to as 'Enrichment Information',
14 EI.</p><h4>Data producer API</h4><p> This API is provided by the Non-RT RIC platform
15 and is intended to be part of the O-RAN R1 interface. The API is for use by different
16 kinds of data producers and provides support for:<ul><li>Registry of supported
17 information types and which parameters needed to setup a subscription.</li><li>Registry
18 of existing data producers.</li><li>Callback API provided by producers to setup
19 subscriptions.</li></ul></p><h4>Data consumer API</h4><p> This API is provided
20 by the Non-RT RIC platform and is intended to be part of the O-RAN R1 interface. The
21 API is for use by different kinds of data consumers and provides support for:<ul><li>Querying
22 of available types of data to consume.</li><li>Management of data subscription
23 jobs</li><li>Optional callback API provided by consumers to get notification on
24 added and removed information types.</li></ul></p><h4>Service status</h4><p> This
25 API provides a means to monitor the health of this service.</p>
27 name: Copyright (C) 2020 Nordix Foundation. Licensed under the Apache License.
28 url: http://www.apache.org/licenses/LICENSE-2.0
33 - name: A1-EI (callbacks)
34 - name: Data producer (callbacks)
35 description: API implemented by data producers
37 - name: Data consumer (callbacks)
38 - name: A1-EI (registration)
39 description: Data consumer EI job registration
40 - name: A1-EI (callbacks)
41 description: Data consumer EI job status callbacks
42 - name: Service status
43 - name: A1-EI (registration)
44 - name: Data producer (registration)
45 - name: Data producer (callbacks)
46 - name: Data producer (registration)
47 description: API for data producers
49 description: API for data consumers
50 - name: Service status
51 description: API for monitoring of the service
53 description: Monitor and interact
55 description: Spring Boot Actuator Web API Documentation
56 url: https://docs.spring.io/spring-boot/docs/current/actuator-api/html/
58 /example_dataproducer/info_job/{infoJobId}:
61 - Data producer (callbacks)
62 summary: Callback for Information Job deletion
63 description: The call is invoked to terminate a data subscription. The endpoint
64 is provided by the Information Producer.
65 operationId: jobDeletedCallback
80 $ref: '#/components/schemas/Void'
81 /data-producer/v1/info-types:
84 - Data producer (registration)
85 summary: Info Type identifiers
86 operationId: getInfoTypdentifiers
89 description: Info Type identifiers
96 /A1-EI/v1/eitypes/{eiTypeId}:
99 - A1-EI (registration)
100 summary: Individual EI type
101 operationId: getEiType
116 $ref: '#/components/schemas/EiTypeObject'
118 description: Enrichment Information type is not found
122 $ref: '#/components/schemas/ProblemDetails'
123 /actuator/threaddump:
127 summary: Actuator web endpoint 'threaddump'
128 operationId: threaddump_4
136 /example_dataproducer/info_job:
139 - Data producer (callbacks)
140 summary: Callback for Information Job creation/modification
141 description: The call is invoked to activate or to modify a data subscription.
142 The endpoint is provided by the Information Producer.
143 operationId: jobCreatedCallback
148 $ref: '#/components/schemas/producer_info_job_request'
156 $ref: '#/components/schemas/Void'
157 /data-producer/v1/info-types/{infoTypeId}:
160 - Data producer (registration)
161 summary: Individual Information Type
162 operationId: getInfoType
173 description: Info Type
177 $ref: '#/components/schemas/producer_info_type_info'
179 description: Information type is not found
183 $ref: '#/components/schemas/ProblemDetails'
186 - Data producer (registration)
187 summary: Individual Information Type
188 operationId: putInfoType
201 $ref: '#/components/schemas/producer_info_type_info'
205 description: Type updated
209 $ref: '#/components/schemas/Void'
211 description: Type created
215 $ref: '#/components/schemas/Void'
217 description: Input validation failed
221 $ref: '#/components/schemas/ProblemDetails'
224 - Data producer (registration)
225 summary: Individual Information Type
226 operationId: deleteInfoType
237 description: Not used
241 $ref: '#/components/schemas/Void'
243 description: Producer deleted
247 $ref: '#/components/schemas/Void'
249 description: Information type is not found
253 $ref: '#/components/schemas/ProblemDetails'
255 description: The Information type has one or several active producers
259 $ref: '#/components/schemas/ProblemDetails'
260 /data-consumer/v1/info-type-subscription/{subscriptionId}:
264 summary: Individual subscription for information types (registration/deregistration)
265 operationId: getIndividualTypeSubscription
267 - name: subscriptionId
276 description: Type subscription
280 $ref: '#/components/schemas/consumer_type_subscription_info'
282 description: Subscription is not found
286 $ref: '#/components/schemas/ProblemDetails'
290 summary: Individual subscription for information types (registration/deregistration)
291 description: This service operation is used to subscribe to notifications for
292 changes in the availability of data types.
293 operationId: putIndividualTypeSubscription
295 - name: subscriptionId
306 $ref: '#/components/schemas/consumer_type_subscription_info'
310 description: Subscription updated
314 $ref: '#/components/schemas/Void'
316 description: Subscription created
320 $ref: '#/components/schemas/Void'
324 summary: Individual subscription for information types (registration/deregistration)
325 operationId: deleteIndividualTypeSubscription
327 - name: subscriptionId
336 description: Not used
340 $ref: '#/components/schemas/Void'
342 description: Subscription deleted
346 $ref: '#/components/schemas/Void'
348 description: Subscription is not found
352 $ref: '#/components/schemas/ProblemDetails'
357 summary: Actuator web endpoint 'loggers'
358 operationId: loggers_2
370 summary: Actuator web endpoint 'health-path'
371 operationId: health-path_2
379 /data-consumer/v1/info-types:
383 summary: Information type identifiers
384 operationId: getinfoTypeIdentifiers
387 description: Information type identifiers
394 /actuator/metrics/{requiredMetricName}:
398 summary: Actuator web endpoint 'metrics-requiredMetricName'
399 operationId: metrics-requiredMetricName_2
401 - name: requiredMetricName
419 summary: Actuator root web endpoint
428 additionalProperties:
430 additionalProperties:
431 $ref: '#/components/schemas/Link'
432 /data-consumer/v1/info-jobs:
436 summary: Information Job identifiers
437 description: query for information job identifiers
438 operationId: getJobIds
442 description: selects subscription jobs of matching information type
450 description: selects result for one owner
458 description: Information information job identifiers
466 description: Information type is not found
470 $ref: '#/components/schemas/ProblemDetails'
471 /actuator/loggers/{name}:
475 summary: Actuator web endpoint 'loggers-name'
476 operationId: loggers-name_4
495 summary: Actuator web endpoint 'loggers-name'
496 operationId: loggers-name_3
512 /example_dataconsumer/info_jobs/{infoJobId}/status:
516 summary: Callback for changed Information Job status
517 description: The primitive is implemented by the data consumer and is invoked
518 when a Information Job status has been changed.
519 operationId: jobStatusCallback
532 $ref: '#/components/schemas/EiJobStatusObject'
540 $ref: '#/components/schemas/Void'
541 /A1-EI/v1/eijobs/{eiJobId}/status:
544 - A1-EI (registration)
545 summary: EI job status
546 operationId: getEiJobStatus_1
557 description: EI job status
561 $ref: '#/components/schemas/EiJobStatusObject'
563 description: Enrichment Information job is not found
567 $ref: '#/components/schemas/ProblemDetails'
568 /data-producer/v1/info-producers/{infoProducerId}/status:
571 - Data producer (registration)
572 summary: Information producer status
573 operationId: getInfoProducerStatus
575 - name: infoProducerId
584 description: Information producer status
588 $ref: '#/components/schemas/producer_status'
590 description: Information producer is not found
594 $ref: '#/components/schemas/ProblemDetails'
595 /data-consumer/v1/info-jobs/{infoJobId}/status:
600 operationId: getEiJobStatus
611 description: Information subscription job status
615 $ref: '#/components/schemas/consumer_job_status'
617 description: Information subscription job is not found
621 $ref: '#/components/schemas/ProblemDetails'
626 summary: Actuator web endpoint 'metrics'
627 operationId: metrics_2
639 summary: Actuator web endpoint 'info'
648 /example_dataproducer/health_check:
651 - Data producer (callbacks)
652 summary: Producer supervision
653 description: The endpoint is provided by the Information Producer and is used
654 for supervision of the producer.
655 operationId: producerSupervision
658 description: The producer is OK
666 - A1-EI (registration)
667 summary: EI type identifiers
668 operationId: getEiTypeIdentifiers
671 description: EI type identifiers
678 /data-producer/v1/info-producers/{infoProducerId}:
681 - Data producer (registration)
682 summary: Individual Information Producer
683 operationId: getInfoProducer
685 - name: infoProducerId
694 description: Information producer
698 $ref: '#/components/schemas/producer_registration_info'
700 description: Information producer is not found
704 $ref: '#/components/schemas/ProblemDetails'
707 - Data producer (registration)
708 summary: Individual Information Producer
709 operationId: putInfoProducer
711 - name: infoProducerId
722 $ref: '#/components/schemas/producer_registration_info'
726 description: Producer updated
730 $ref: '#/components/schemas/Void'
732 description: Producer created
736 $ref: '#/components/schemas/Void'
738 description: Input validation failed
742 $ref: '#/components/schemas/ProblemDetails'
744 description: Producer type not found
748 $ref: '#/components/schemas/ProblemDetails'
751 - Data producer (registration)
752 summary: Individual Information Producer
753 operationId: deleteInfoProducer
755 - name: infoProducerId
764 description: Not used
768 $ref: '#/components/schemas/Void'
770 description: Producer deleted
774 $ref: '#/components/schemas/Void'
776 description: Producer is not found
780 $ref: '#/components/schemas/ProblemDetails'
785 summary: Returns status and statistics of this service
786 operationId: getStatus
789 description: Service is living
793 $ref: '#/components/schemas/service_status_info'
794 /data-consumer/v1/info-type-subscription:
798 summary: Information type subscription identifiers
799 description: query for information type subscription identifiers
800 operationId: getInfoTypeSubscriptions
804 description: selects result for one owner
812 description: Information type subscription identifiers
819 /A1-EI/v1/eijobs/{eiJobId}:
822 - A1-EI (registration)
823 summary: Individual EI job
824 operationId: getIndividualEiJob_1
839 $ref: '#/components/schemas/EiJobObject'
841 description: Enrichment Information job is not found
845 $ref: '#/components/schemas/ProblemDetails'
848 - A1-EI (registration)
849 summary: Individual EI job
850 operationId: putIndividualEiJob
863 $ref: '#/components/schemas/EiJobObject'
867 description: Job updated
871 $ref: '#/components/schemas/Void'
873 description: Job created
877 $ref: '#/components/schemas/Void'
879 description: Input validation failed
883 $ref: '#/components/schemas/ProblemDetails'
885 description: Enrichment Information type is not found
889 $ref: '#/components/schemas/ProblemDetails'
891 description: Cannot modify job type
895 $ref: '#/components/schemas/ProblemDetails'
898 - A1-EI (registration)
899 summary: Individual EI job
900 operationId: deleteIndividualEiJob_1
911 description: Not used
915 $ref: '#/components/schemas/Void'
917 description: Job deleted
921 $ref: '#/components/schemas/Void'
923 description: Enrichment Information job is not found
927 $ref: '#/components/schemas/ProblemDetails'
932 summary: Actuator web endpoint 'logfile'
933 operationId: logfile_2
941 /data-consumer/v1/info-jobs/{infoJobId}:
945 summary: Individual data subscription job
946 operationId: getIndividualEiJob
957 description: Information subscription job
961 $ref: '#/components/schemas/consumer_job'
963 description: Information subscription job is not found
967 $ref: '#/components/schemas/ProblemDetails'
971 summary: Individual data subscription job
972 description: The job will be enabled when a producer is available
973 operationId: putIndividualInfoJob
984 description: when true, a validation of that the type exists and that the
985 job matches the type schema.
996 $ref: '#/components/schemas/consumer_job'
1000 description: Job updated
1004 $ref: '#/components/schemas/Void'
1006 description: Job created
1010 $ref: '#/components/schemas/Void'
1012 description: Input validation failed
1016 $ref: '#/components/schemas/ProblemDetails'
1018 description: Information type is not found
1022 $ref: '#/components/schemas/ProblemDetails'
1024 description: Cannot modify job type
1028 $ref: '#/components/schemas/ProblemDetails'
1032 summary: Individual data subscription job
1033 operationId: deleteIndividualEiJob
1044 description: Not used
1048 $ref: '#/components/schemas/Void'
1050 description: Job deleted
1054 $ref: '#/components/schemas/Void'
1056 description: Information subscription job is not found
1060 $ref: '#/components/schemas/ProblemDetails'
1061 /data-producer/v1/info-producers:
1064 - Data producer (registration)
1065 summary: Information producer identifiers
1066 operationId: getInfoProducerIdentifiers
1068 - name: info_type_id
1070 description: If given, only the producers for the EI Data type is returned.
1078 description: Information producer identifiers
1085 /data-consumer/v1/info-types/{infoTypeId}:
1089 summary: Individual information type
1090 operationId: getInfoType_1
1101 description: Information type
1105 $ref: '#/components/schemas/consumer_information_type'
1107 description: Information type is not found
1111 $ref: '#/components/schemas/ProblemDetails'
1116 summary: Actuator web endpoint 'health'
1117 operationId: health_2
1128 - A1-EI (registration)
1129 summary: EI job identifiers
1130 description: query for EI job identifiers
1131 operationId: getEiJobIds
1135 description: selects EI jobs of matching EI type
1143 description: selects EI jobs for one EI job owner
1151 description: EI job identifiers
1159 description: Enrichment Information type is not found
1163 $ref: '#/components/schemas/ProblemDetails'
1164 /data-producer/v1/info-producers/{infoProducerId}/info-jobs:
1167 - Data producer (registration)
1168 summary: Information Job definitions
1169 description: Information Job definitions for one Information Producer
1170 operationId: getInfoProducerJobs
1172 - name: infoProducerId
1181 description: Information producer
1187 $ref: '#/components/schemas/producer_info_job_request'
1189 description: Information producer is not found
1193 $ref: '#/components/schemas/ProblemDetails'
1194 /example_dataconsumer/info_type_status:
1197 - Data consumer (callbacks)
1198 summary: Callback for changed Information type registration status
1199 description: The primitive is implemented by the data consumer and is invoked
1200 when a Information type status has been changed. <br/>Subscription are managed
1201 by primitives in 'Data consumer'
1202 operationId: typeStatusCallback
1207 $ref: '#/components/schemas/consumer_type_registration_info'
1215 $ref: '#/components/schemas/Void'
1220 summary: Actuator web endpoint 'heapdump'
1221 operationId: heapdump_2
1231 consumer_information_type:
1240 description: The number of registered producers for the type
1244 description: 'Allowed values: <br/>ENABLED: one or several producers for
1245 the information type are available <br/>DISABLED: no producers for the
1246 information type are available'
1252 description: Json schema for the job data
1253 description: Information for an Information type
1256 description: Information for an EI type
1257 service_status_info:
1267 description: Number of Information Producers
1271 description: Number of Information Types
1275 description: Number of Information Jobs
1279 description: status text
1280 producer_registration_info:
1282 - info_job_callback_url
1283 - info_producer_supervision_callback_url
1284 - supported_info_types
1287 info_producer_supervision_callback_url:
1289 description: callback for producer supervision
1290 supported_info_types:
1292 description: Supported Information Type IDs
1295 description: Supported Information Type IDs
1296 info_job_callback_url:
1298 description: callback for Information Job
1299 description: Information for an Information Producer
1300 consumer_type_registration_info:
1309 description: Information type identifier
1312 description: Json schema for the job data
1315 description: 'Allowed values: <br/>REGISTERED: the information type has
1316 been registered <br/>DEREGISTERED: the information type has been removed'
1320 description: Information for an Information type
1326 description: A human-readable explanation specific to this occurrence of
1328 example: Information Job type not found
1331 description: The HTTP status code generated by the origin server for this
1332 occurrence of the problem.
1335 description: A problem detail to carry details in a HTTP response according
1344 description: 'Allowed values for EI job status: <br/>ENABLED: the A1-EI
1345 producer is able to deliver EI result for the EI job <br/>DISABLED: the
1346 A1-EI producer is unable to deliver EI result for the EI job'
1350 description: Status for an EI job
1351 consumer_job_status:
1359 description: 'Allowed values: <br/>ENABLED: the A1-Information producer
1360 is able to deliver result for the Information Job <br/>DISABLED: the A1-Information
1361 producer is unable to deliver result for the Information Job'
1367 description: An array of all registered Information Producer Identifiers.
1370 description: An array of all registered Information Producer Identifiers.
1371 description: Status for an Information Job
1382 description: EI type Idenitifier of the EI job
1385 description: The target URI of the EI data
1388 description: Identity of the owner of the job
1389 statusNotificationUri:
1391 description: The target of EI job status notifications
1394 description: EI type specific job data
1395 description: Information for an Enrichment Information Job
1396 producer_info_type_info:
1398 - info_job_data_schema
1401 info_type_information:
1403 description: Type specific information for the information type
1404 info_job_data_schema:
1406 description: Json schema for the job data
1407 description: Information for an Information Type
1408 producer_info_job_request:
1415 description: The owner of the job
1418 description: The time when the job was last updated or created (ISO-8601)
1421 description: Identity of the Information Job
1424 description: URI for the target of the produced Information
1427 description: Json for the job data
1430 description: Type identity for the job
1431 description: The body of the Information Producer callbacks for Information
1432 Job creation and deletion
1443 description: Information type Idenitifier of the subscription job
1446 description: The target URI of the subscribed information
1449 description: Identity of the owner of the job
1452 description: Information type specific job data
1453 status_notification_uri:
1455 description: The target of Information subscription job status notifications
1456 description: Information for an Information Job
1464 description: Represents the operational states
1468 description: Status for an Info Producer
1471 description: 'Void/empty '
1479 consumer_type_subscription_info:
1487 description: Identity of the owner of the subscription
1490 description: The target URI of the subscribed information
1491 description: Information for an information type subscription