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></ul></p><h4>Service status</h4><p> This API provides a means to monitor
24 the health of this service.</p>
26 name: Copyright (C) 2020 Nordix Foundation. Licensed under the Apache License.
27 url: http://www.apache.org/licenses/LICENSE-2.0
32 - name: A1-EI (registration)
33 description: Data consumer EI job registration
34 - name: A1-EI (callbacks)
35 description: Data consumer EI job status callbacks
36 - name: Data producer (callbacks)
37 description: API implemented by data producers
38 - name: Data producer (registration)
39 description: API for data producers
40 - name: Service status
41 description: API for monitoring of the service
43 description: API for data consumers
45 /data-producer/v1/info-types:
48 - Data producer (registration)
49 summary: Info Type identifiers
50 operationId: getInfoTypdentifiers
53 description: Info Type identifiers
60 /A1-EI/v1/eitypes/{eiTypeId}:
63 - A1-EI (registration)
64 summary: Individual EI type
65 operationId: getEiType
80 $ref: '#/components/schemas/EiTypeObject'
82 description: Enrichment Information type is not found
86 $ref: '#/components/schemas/ProblemDetails'
87 /data-producer/v1/info-types/{infoTypeId}:
90 - Data producer (registration)
91 summary: Individual Information Type
92 operationId: getInfoType
103 description: Info Type
107 $ref: '#/components/schemas/producer_info_type_info'
109 description: Information type is not found
113 $ref: '#/components/schemas/ProblemDetails'
116 - Data producer (registration)
117 summary: Individual Information Type
118 operationId: putInfoType
131 $ref: '#/components/schemas/producer_info_type_info'
135 description: Type updated
139 $ref: '#/components/schemas/Void'
141 description: Type created
145 $ref: '#/components/schemas/Void'
147 description: Bad request
151 $ref: '#/components/schemas/ProblemDetails'
154 - Data producer (registration)
155 summary: Individual Information Type
156 operationId: deleteInfoType
167 description: Not used
171 $ref: '#/components/schemas/Void'
173 description: Producer deleted
177 $ref: '#/components/schemas/Void'
179 description: Information type is not found
183 $ref: '#/components/schemas/ProblemDetails'
185 description: The Information type has one or several active producers
189 $ref: '#/components/schemas/ProblemDetails'
193 - A1-EI (registration)
194 summary: EI type identifiers
195 operationId: getEiTypeIdentifiers
198 description: EI type identifiers
205 /data-consumer/v1/info-types:
209 summary: Information type identifiers
210 operationId: getinfoTypeIdentifiers
213 description: Information type identifiers
220 /data-producer/v1/info-producers/{infoProducerId}:
223 - Data producer (registration)
224 summary: Individual Information Producer
225 operationId: getInfoProducer
227 - name: infoProducerId
236 description: Information producer
240 $ref: '#/components/schemas/producer_registration_info'
242 description: Information producer is not found
246 $ref: '#/components/schemas/ProblemDetails'
249 - Data producer (registration)
250 summary: Individual Information Producer
251 operationId: putInfoProducer
253 - name: infoProducerId
264 $ref: '#/components/schemas/producer_registration_info'
268 description: Producer updated
272 $ref: '#/components/schemas/Void'
274 description: Producer created
278 $ref: '#/components/schemas/Void'
280 description: Producer not found
284 $ref: '#/components/schemas/ProblemDetails'
287 - Data producer (registration)
288 summary: Individual Information Producer
289 operationId: deleteInfoProducer
291 - name: infoProducerId
300 description: Not used
304 $ref: '#/components/schemas/Void'
306 description: Producer deleted
310 $ref: '#/components/schemas/Void'
312 description: Producer is not found
316 $ref: '#/components/schemas/ProblemDetails'
317 /producer_simulator/info_job/{infoJobId}:
320 - Data producer (callbacks)
321 summary: Callback for Information Job deletion
322 description: The call is invoked to terminate a data subscription. The endpoint
323 is provided by the Information Producer.
324 operationId: jobDeletedCallback
339 $ref: '#/components/schemas/Void'
344 summary: Returns status and statistics of this service
345 operationId: getStatus
348 description: Service is living
352 $ref: '#/components/schemas/status_info'
353 /A1-EI/v1/eijobs/{eiJobId}:
356 - A1-EI (registration)
357 summary: Individual EI job
358 operationId: getIndividualEiJob_1
373 $ref: '#/components/schemas/EiJobObject'
375 description: Enrichment Information job is not found
379 $ref: '#/components/schemas/ProblemDetails'
382 - A1-EI (registration)
383 summary: Individual EI job
384 operationId: putIndividualEiJob
397 $ref: '#/components/schemas/EiJobObject'
401 description: Job updated
405 $ref: '#/components/schemas/Void'
407 description: Job created
411 $ref: '#/components/schemas/Void'
413 description: Enrichment Information type is not found
417 $ref: '#/components/schemas/ProblemDetails'
420 - A1-EI (registration)
421 summary: Individual EI job
422 operationId: deleteIndividualEiJob_1
433 description: Not used
437 $ref: '#/components/schemas/Void'
439 description: Job deleted
443 $ref: '#/components/schemas/Void'
445 description: Enrichment Information job is not found
449 $ref: '#/components/schemas/ProblemDetails'
450 /producer_simulator/health_check:
453 - Data producer (callbacks)
454 summary: Producer supervision
455 description: The endpoint is provided by the Information Producer and is used
456 for supervision of the producer.
457 operationId: producerSupervision
460 description: The producer is OK
465 /data-consumer/v1/info-jobs:
469 summary: Information Job identifiers
470 description: query for information job identifiers
471 operationId: getJobIds
475 description: selects subscription jobs of matching information type
483 description: selects subscription jobs for one job owner
491 description: Information information job identifiers
499 description: Information type is not found
503 $ref: '#/components/schemas/ProblemDetails'
504 /data-consumer/v1/info-jobs/{infoJobId}:
508 summary: Individual data subscription job
509 operationId: getIndividualEiJob
520 description: Information subscription job
524 $ref: '#/components/schemas/consumer_job'
526 description: Information subscription job is not found
530 $ref: '#/components/schemas/ProblemDetails'
534 summary: Individual data subscription job
535 description: The job will be enabled when a producer is available
536 operationId: putIndividualInfoJob
547 description: when true, a validation of that the type exists and that the
548 job matches the type schema.
559 $ref: '#/components/schemas/consumer_job'
563 description: Job updated
567 $ref: '#/components/schemas/Void'
569 description: Job created
573 $ref: '#/components/schemas/Void'
575 description: Information type is not found
579 $ref: '#/components/schemas/ProblemDetails'
583 summary: Individual data subscription job
584 operationId: deleteIndividualEiJob
595 description: Not used
599 $ref: '#/components/schemas/Void'
601 description: Job deleted
605 $ref: '#/components/schemas/Void'
607 description: Information subscription job is not found
611 $ref: '#/components/schemas/ProblemDetails'
612 /data-producer/v1/info-producers:
615 - Data producer (registration)
616 summary: Information producer identifiers
617 operationId: getInfoProducerIdentifiers
621 description: If given, only the producers for the EI Data type is returned.
629 description: Information producer identifiers
636 /data-consumer/v1/info-types/{infoTypeId}:
640 summary: Individual information type
641 operationId: getInfoType_1
652 description: Information type
656 $ref: '#/components/schemas/consumer_information_type'
658 description: Information type is not found
662 $ref: '#/components/schemas/ProblemDetails'
663 /producer_simulator/info_job:
666 - Data producer (callbacks)
667 summary: Callback for Information Job creation/modification
668 description: The call is invoked to activate or to modify a data subscription.
669 The endpoint is provided by the Information Producer.
670 operationId: jobCreatedCallback
675 $ref: '#/components/schemas/producer_info_job_request'
683 $ref: '#/components/schemas/Void'
684 /example_dataconsumer/info_jobs/{infoJobId}/status:
688 summary: Callback for changed Information Job status
689 description: The primitive is implemented by the data consumer and is invoked
690 when a Information Job status has been changed.
691 operationId: jobStatusCallback
704 $ref: '#/components/schemas/EiJobStatusObject'
712 $ref: '#/components/schemas/Void'
716 - A1-EI (registration)
717 summary: EI job identifiers
718 description: query for EI job identifiers
719 operationId: getEiJobIds
723 description: selects EI jobs of matching EI type
731 description: selects EI jobs for one EI job owner
739 description: EI job identifiers
747 description: Enrichment Information type is not found
751 $ref: '#/components/schemas/ProblemDetails'
752 /A1-EI/v1/eijobs/{eiJobId}/status:
755 - A1-EI (registration)
756 summary: EI job status
757 operationId: getEiJobStatus_1
768 description: EI job status
772 $ref: '#/components/schemas/EiJobStatusObject'
774 description: Enrichment Information job is not found
778 $ref: '#/components/schemas/ProblemDetails'
779 /data-producer/v1/info-producers/{infoProducerId}/status:
782 - Data producer (registration)
783 summary: Information producer status
784 operationId: getInfoProducerStatus
786 - name: infoProducerId
795 description: Information producer status
799 $ref: '#/components/schemas/producer_status'
801 description: Information producer is not found
805 $ref: '#/components/schemas/ProblemDetails'
806 /data-producer/v1/info-producers/{infoProducerId}/info-jobs:
809 - Data producer (registration)
810 summary: Information Job definitions
811 description: Information Job definitions for one Information Producer
812 operationId: getInfoProducerJobs
814 - name: infoProducerId
823 description: Information producer
829 $ref: '#/components/schemas/producer_info_job_request'
831 description: Information producer is not found
835 $ref: '#/components/schemas/ProblemDetails'
836 /data-consumer/v1/info-jobs/{infoJobId}/status:
841 operationId: getEiJobStatus
852 description: Information subscription job status
856 $ref: '#/components/schemas/consumer_job_status'
858 description: Information subscription job is not found
862 $ref: '#/components/schemas/ProblemDetails'
865 consumer_information_type:
872 description: Json schema for the job data
873 description: Information for an Information type
876 description: Information for an EI type
887 description: Number of Information Producers
891 description: Number of Information Types
895 description: Number of Information Jobs
899 description: status text
900 producer_registration_info:
902 - info_job_callback_url
903 - info_producer_supervision_callback_url
904 - supported_info_types
907 info_producer_supervision_callback_url:
909 description: callback for producer supervision
910 supported_info_types:
912 description: Supported Information Type IDs
915 description: Supported Information Type IDs
916 info_job_callback_url:
918 description: callback for Information Job
919 description: Information for an Information Producer
925 description: A human-readable explanation specific to this occurrence of
927 example: Information Job type not found
930 description: The HTTP status code generated by the origin server for this
931 occurrence of the problem.
934 description: A problem detail to carry details in a HTTP response according
943 description: Allowed values for EI job status
947 description: Status for an EI job
955 description: Allowed values for Information Job status
959 description: Status for an Information Job
970 description: EI type Idenitifier of the EI job
973 description: The target URI of the EI data
976 description: Identity of the owner of the job
977 statusNotificationUri:
979 description: The target of EI job status notifications
982 description: EI type specific job data
983 description: Information for an Enrichment Information Job
984 producer_info_type_info:
986 - info_job_data_schema
989 info_job_data_schema:
991 description: Json schema for the job data
992 description: Information for an Information Type
993 producer_info_job_request:
1000 description: The owner of the job
1003 description: The time when the job was last updated or created (ISO-8601)
1006 description: Identity of the Information Job
1009 description: URI for the target of the produced Information
1012 description: Json for the job data
1015 description: Type identity for the job
1016 description: The body of the Information Producer callbacks for Information
1017 Job creation and deletion
1028 description: Information type Idenitifier of the subscription job
1031 description: The target URI of the subscribed information
1034 description: Identity of the owner of the job
1037 description: Information type specific job data
1038 status_notification_uri:
1040 description: The target of Information subscription job status notifications
1041 description: Information for an Enrichment Information Job
1049 description: Represents the operational states
1053 description: Status for an Info Producer
1056 description: 'Void/empty '