3 title: 'Kafka message dispatcher for A1 interface'
6 Kafka message dispatcher server.
7 © 2022, O-RAN Alliance.
10 description: 'RestFUL APIs that create and dispatch Kafka messages to Kafka brokers'
11 url: 'https://docs.o-ran-sc.org/projects/o-ran-sc-sim-a1-interface/en/latest/index.html'
16 default: 'https://example.com'
18 '/policytypetotopicmapping/{policyTypeId}':
24 "$ref": "#/components/schemas/PolicyTypeId"
26 operationId: dispatcher.get_policy_type_to_topic_mapping
27 description: 'Get the kafka request and response topic map corresponding to policy type'
29 - The mapping from policy type to kafka topic request and response object
32 description: 'The policy type to topic map schemas'
36 "$ref": "#/components/schemas/PolicyTypeToTopicMap"
38 "$ref": "#/components/responses/404-NotFound"
40 "$ref": "#/components/responses/429-TooManyRequests"
42 "$ref": "#/components/responses/503-ServiceUnavailable"
44 '/policytypes/{policyTypeId}/kafkadispatcher/{policyId}':
50 "$ref": "#/components/schemas/PolicyTypeId"
55 "$ref": "#/components/schemas/A1PolicyId"
57 operationId: dispatcher.put_policy
58 description: 'Dispatch create and update operation as kafka message to kafka cluster'
60 - Individual policy Object
66 "$ref": "#/components/schemas/A1PolicyObject"
69 description: 'Create or update operation dispatched'
71 "$ref": "#/components/responses/400-BadRequest"
73 "$ref": "#/components/responses/408-RequestTimeout"
75 "$ref": "#/components/responses/419-KafkaMessagePublishFailed"
77 "$ref": "#/components/responses/429-TooManyRequests"
79 "$ref": "#/components/responses/503-ServiceUnavailable"
81 "$ref": "#/components/responses/507-InsufficientStorage"
83 operationId: dispatcher.delete_policy
84 description: 'Dispatch policy delete opertion as kafka message to kafka cluster'
87 description: 'Delete operation dispatched'
89 "$ref": "#/components/responses/408-RequestTimeout"
91 "$ref": "#/components/responses/419-KafkaMessagePublishFailed"
93 "$ref": "#/components/responses/429-TooManyRequests"
95 "$ref": "#/components/responses/503-ServiceUnavailable"
97 '/policytypes/{policyTypeId}/kafkadispatcher/{policyId}/status':
103 "$ref": "#/components/schemas/PolicyTypeId"
108 "$ref": "#/components/schemas/A1PolicyId"
110 operationId: dispatcher.get_policy_status
111 description: 'Dispatch policy status query opertion as kafka message to kafka cluster'
113 - Individual A1 Policy Status Object
116 description: 'Query policy status operation dispatched'
118 "$ref": "#/components/responses/429-TooManyRequests"
120 "$ref": "#/components/responses/503-ServiceUnavailable"
125 # Representation objects
128 description: 'A generic policy object'
132 description: 'A generic policy string'
135 PolicyTypeToTopicMap:
136 description: 'Request and response topic map for each policy type'
144 example: kafkatopicreq
147 example: kafkatopicres
150 description: 'A problem detail to carry details in a HTTP response according to RFC 7807'
168 description: 'A JSON schema following http://json-schema.org/draft-07/schema'
172 description: 'A1 policy identifier.'
176 description: 'Policy type identifier assigned by the A1-P Provider'
181 description: 'A1 policy not properly formulated or not related to the method'
183 application/problem+json:
185 "$ref": "#/components/schemas/ProblemDetails"
188 description: 'No resource found at the URI'
190 application/problem+json:
192 "$ref": "#/components/schemas/ProblemDetails"
194 405-MethodNotAllowed:
195 description: 'Method not allowed for the URI'
197 application/problem+json:
199 "$ref": "#/components/schemas/ProblemDetails"
202 description: 'Request could not be processed in given amount of time'
204 application/problem+json:
206 "$ref": "#/components/schemas/ProblemDetails"
209 description: 'Request could not be processed in the current state of the resource'
211 application/problem+json:
213 "$ref": "#/components/schemas/ProblemDetails"
215 419-KafkaMessagePublishFailed:
216 description: 'Publishing the kafka message to the broker gets fail'
218 application/problem+json:
220 "$ref": "#/components/schemas/ProblemDetails"
223 description: 'Too many requests have been sent in a given amount of time'
225 application/problem+json:
227 "$ref": "#/components/schemas/ProblemDetails"
229 503-ServiceUnavailable:
230 description: 'The provider is currently unable to handle the request due to a temporary overload'
232 application/problem+json:
234 "$ref": "#/components/schemas/ProblemDetails"
236 507-InsufficientStorage:
237 description: 'The method could not be performed on the resource because the provider is unable to store the representation needed to successfully complete the request'
239 application/problem+json:
241 "$ref": "#/components/schemas/ProblemDetails"