{"type":"api","title":"Register a Topic","meta":{"id":"/apps/pubhub/media/spaces-connect-for-iot-services/8293790500ad8451a978dbb45a557b569302cec6/fe185569-32c7-3a71-a7db-7b18e6f0f371","info":{"version":"1.1.0","title":"IoT Nova NIPC APIs"},"x-parser-conf":{"overview":{"markdownPath":"reference/overview-control.md"}},"openapi":"3.0.0"},"spec":{"summary":"Register a Topic","operationId":"registerTopic","tags":["Registration APIs"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","description":"Registers a topic to receive streaming messages or events from BLE devices.","required":["technology","ids","controlApp","topic","dataFormat","ble"],"properties":{"technology":{"type":"string","example":"ble"},"ids":{"type":"array","description":"A list or collection of device identifiers in UUID format, obtained as a response when the devices were onboarded using the SCIM API.","items":{"type":"string","example":"5ae0c228-24c9-433c-9001-5a23f063ffd0"},"$$ref":"#/components/schemas/IDsArray/properties/ids"},"controlApp":{"type":"string","description":"Represents the control application instance that manages the BLE device interactions through Sensor Connect. This value is specified during device onboarding using the SCIM API to indicate the application authorized to perform control operations on the device.","example":"controlApplication","$$ref":"#/components/schemas/ControlAppProperty"},"topic":{"type":"string","description":"The MQTT topic used for streaming data related to the BLE device or application.","example":"enterprise/hospital/pulse_oximeter","$$ref":"#/components/schemas/TopicString"},"dataFormat":{"type":"string","description":"Defines the data format and the supported value is “default” indicating the use of a standard or predefined data format.","example":"default","$$ref":"#/components/schemas/DataFormatString"},"ble":{"type":"object","properties":{"type":{"type":"string","description":"Indicates the type of event subscribed to, three types of events are supported namely gatt(Indicates the use of the Generic Attribute Profile for data exchange with the BLE device), advertisements(Refers to handling BLE advertisement packets broadcasted by the device) and connection_events(Represents events related to the connection status or changes between the Sensor Connect application and the BLE device).","enum":["gatt","advertisements","connection_events"],"example":"gatt","$$ref":"#/components/schemas/BleType"},"serviceID":{"type":"string","description":"The unique identifier (UUID) of a specific BLE service on the device.","example":"1800","$$ref":"#/components/schemas/BleServiceID"},"characteristicID":{"type":"string","description":"The unique identifier (UUID) of a specific characteristic within a BLE service, representing a data point or control feature.","example":"2A5E","$$ref":"#/components/schemas/BleCharacteristicID"}},"required":["type","serviceID","characteristicID"],"$$ref":"#/components/schemas/BLETopicRegistrationDetails"}}}}}},"parameters":[{"name":"x-api-key","in":"header","required":true,"schema":{"type":"string"},"example":"8506a7e0c4242b9091bde6735dedb41f"}],"responses":{"200":{"description":"Topic registered successfully","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","example":"SUCCESS"},"topic":{"type":"string","description":"The MQTT topic used for streaming data related to the BLE device or application.","example":"enterprise/hospital/pulse_oximeter","$$ref":"#/components/schemas/TopicString"}},"$$ref":"#/components/schemas/TopicStatusResponse"}}}}},"__originalOperationId":"registerTopic","method":"post","path":"/control/registration/registerTopic"}}