From 9d2f5150c8cc8ab4f77974903769ab1f4a689a73 Mon Sep 17 00:00:00 2001 From: Eric Murray Date: Wed, 12 Aug 2026 16:14:49 +0100 Subject: [PATCH 01/12] Refine API documentation for device roaming status Updated descriptions for clarity and consistency in the API documentation. Adjusted event type definitions and clarified event triggering conditions. --- .../device-roaming-status-subscriptions.yaml | 111 ++++++++---------- 1 file changed, 51 insertions(+), 60 deletions(-) diff --git a/code/API_definitions/device-roaming-status-subscriptions.yaml b/code/API_definitions/device-roaming-status-subscriptions.yaml index 7c569a4..d9aff49 100644 --- a/code/API_definitions/device-roaming-status-subscriptions.yaml +++ b/code/API_definitions/device-roaming-status-subscriptions.yaml @@ -2,16 +2,16 @@ openapi: 3.0.3 info: title: Device Roaming Status Subscriptions description: | - This API provides the API consumer with the ability to subscribe to Roaming status events. + This API provides the API consumer with the ability to subscribe to roaming status events. # Introduction - ## Roaming Status - API consumer is able to be notified whether the roaming status of a certain user device has changed. - This capability is provided via a subscription request - in this case the roaming situation is not in the response but event notification is sent back to the event subscriber when roaming situation has changed. + API consumer is able to be notified whether the roaming status of a certain user device has changed. This capability is requested via a subscription request - in this case the roaming status is not contained in the API response, but instead an event notification is sent back to the event subscriber whenever the roaming situation changes. # Relevant terms and definitions + * **Roaming**: For the purposes of this API, a device is considered to be roaming if it is connected to a mobile network with a different mobile country code (MCC) to its home network. A device is not considered to be roaming if it is connected to a mobile network that has the same MCC as the home network, even if that network is not the home network. Where the home network has a MCC for a country that has been allocated more than one MCC, a device is not considered to be roaming if it is connected to any network that uses a MCC for that country. + * **Device**: A device refers to any physical entity that can connect to a network and participate in network communication. At least one identifier for the device out of four options must be provided: IPv4 address, IPv6 address, Phone number, or Network Access Identifier assigned by the mobile network operator for the device. Where more than one device identifier is provided, only one identifier will be selected by the implementation and this choice indicated to the API consumer in the subscription creation response. @@ -25,18 +25,15 @@ info: ## Device roaming status subscription These endpoints allow to manage event subscription on roaming device status event. - The CAMARA subscription model is detailed in the CAMARA API design guideline document and follows CloudEvents specification. + The CAMARA subscription model is detailed in the `CAMARA API Event Subscription and Notification Guide` and uses notifications that follow the CloudEvents specification. When subscribing, it is mandatory to provide the event `type` you are subscribing to, as multiple subscription-types are managed by this API. - Following event ``type`` are managed for this API: - - ``org.camaraproject.device-roaming-status-subscriptions.v0.roaming-status`` - Event triggered when the device switch from roaming ON to roaming OFF and conversely - - - ``org.camaraproject.device-roaming-status-subscriptions.v0.roaming-on`` - Event triggered when the device switch from roaming OFF to roaming ON - - - ``org.camaraproject.device-roaming-status-subscriptions.v0.roaming-off``: Event triggered when the device switch from roaming ON to roaming OFF - - - ``org.camaraproject.device-roaming-status-subscriptions.v0.roaming-change-country``: Event triggered when the device in roaming change country code + Following event types are defined for this API: + - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-status` - Event triggered when the device roaming status changes (either starting or stopping roaming) + - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-on` - Event triggered when the device roaming status changes to roaming ON + - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-off` - Event triggered when the device roaming status changes to roaming OFF + - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-change-country` - Event triggered whenever the device remains roaming but there is a change in country name Note: Additionally, the following events could be sent, which do not require a dedicated subscription: - `org.camaraproject.device-roaming-status-subscriptions.v0.subscription-started` is sent when the subscription starts. @@ -44,58 +41,52 @@ info: - `org.camaraproject.device-roaming-status-subscriptions.v0.subscription-ended` is sent when the subscription ends. It is used in following cases: - - the subscription expire time (optionally set by the requester) has been reached - - the maximum number of subscription events (optionally set by the requester) has been reached - - the subscription was deleted by the requester - - the Access Token `sinkCredential` (optionally set by the requester) expiration time has been reached - - the API server has to stop sending notification prematurely - - **Note on combined usage of ``initialEvent`` and ``subscriptionMaxEvents``**: - - If an event is triggered following ``initialEvent`` set to true, - this event will be counted towards ``subscriptionMaxEvents`` (if provided). - - **Clarification on ``initialEvent`` & ``event-type`` behaviour:** - - Following table illustrate behaviour regarding event triggering depending on **initial** roaming state of the device: - - | subscribed event-type | device roaming status at subscription time | event sent if ``initialEvent`` set to true | - | ----------------------| ------------- | --------------- | - | roaming-status | Roaming On | Yes | - | roaming-status | Roaming Off | Yes | - | roaming-on | Roaming On | Yes | - | roaming-on | Roaming Off | No | - | roaming-off | Roaming On | No | - | roaming-off | Roaming Off | Yes | - | roaming-change-country | Roaming Off | No(*) | - | roaming-change-country | Roaming On | No(*) | - - (*) Use of ``initialEvent`` has no impact on roaming-change-country event-type. - - **Clarification on ``roaming-change-country`` event-type:** - - ``roaming-change-country`` event is sent only when the device stays in roaming situation and change country. - Suppose a device from Germany & all event types subscribed: - + - the subscription expire time (optionally set by the API consumer) has been reached + - the maximum number of subscription events (optionally set by the API consumer) has been reached + - the subscription was deleted by the API consumer + - the access token `sinkCredential` (optionally set by the API Consumer) expiration time has been reached + - the API provider has to stop sending notification prematurely + + **Note on combined usage of `initialEvent` and `subscriptionMaxEvents`**:\ + If an event is triggered because `initialEvent` set to `true`, this event will be counted towards `subscriptionMaxEvents` if that has been specified + + **Clarification on `initialEvent` & `event-type` behaviour:**\ + Following table illustrate behaviour regarding event triggering depending on the **initial** roaming state of the device: + + | subscribed event-type | device roaming status at subscription time | event sent if `initialEvent` set to `true` | + | ---------------------- | ------------------------------------------ | ------------------------------------------ | + | roaming-status | Roaming | Yes | + | roaming-status | Not roaming | Yes | + | roaming-on | Roaming | Yes | + | roaming-on | Not roaming | No | + | roaming-off | Roaming | No | + | roaming-off | Not roaming | Yes | + | roaming-change-country | Not roaming | No(*) | + | roaming-change-country | Roaming | No(*) | + + (*) Setting `initialEvent` to `true` does not generate any inital even for the `roaming-change-country` event type. + + **Clarification on the `roaming-change-country` event type:**\ + The `roaming-change-country` event is sent only when the device is roaming and remains roaming following a change in country name. + + For example, if a device has a home network in Germany and all event types are subscribed to:\ - Device moves from Germany to France: - - triggered: roaming-status & roaming-on - - not triggered: roaming-change-country & roaming-off - - Device moves from France to Belgium: - - triggered: roaming-change-country - - not triggered: roaming-status, roaming-on & roaming-off - - Device moves from Belgium back to Germany - - triggered: roaming-status & roaming-off - - not triggered: roaming-on & roaming-change-country - + - triggered: `roaming-status` & `roaming-on` + - not triggered: `roaming-change-country` & `roaming-off` + - Device then moves from France to Belgium: + - triggered: `roaming-change-country` + - not triggered: `roaming-status`, `roaming-on` & `roaming-off` + - Device then moves from Belgium back to Germany + - triggered: `roaming-status` & `roaming-off` + - not triggered: `roaming-on` & `roaming-change-country` ### Notifications callback - This endpoint describes the event notification received on subscription listener side when the event occurred. - As for subscription, detailed description of the event notification is provided in the CAMARA API design guideline document. + This endpoint describes the format of the event notification received by the API consumer when an event is sent. + A detailed description of the event subscription and notification mechanism is provided in the `CAMARA API Event Subscription and Notification Guide`. - _**WARNING**: This callback endpoint must be exposed on the consumer side as `POST /{$request.body#/sink}`. - Developers may provide a callback URL on which notifications regarding reachability-status can be received from the service provider. - If an event occurs the application will send events to the provided webhook - `sink`._ + _**WARNING**:\ + API consumers may optionally provide a callback URL on which reachability status notifications from the API provider can be received. This callback endpoint must be exposed by API consumer as `POST /{$request.body#/sink}`. When an event occurs, the API provider will send the event to the URI specified by `sink`._ From bda14a6a50e9483ec811c64566d397b2f800686b Mon Sep 17 00:00:00 2001 From: Eric Murray Date: Wed, 12 Aug 2026 16:34:37 +0100 Subject: [PATCH 02/12] Clarify event subscription management language Updated the wording for clarity in the device roaming status subscription documentation. --- .../device-roaming-status-subscriptions.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/code/API_definitions/device-roaming-status-subscriptions.yaml b/code/API_definitions/device-roaming-status-subscriptions.yaml index d9aff49..76f12fd 100644 --- a/code/API_definitions/device-roaming-status-subscriptions.yaml +++ b/code/API_definitions/device-roaming-status-subscriptions.yaml @@ -24,16 +24,16 @@ info: ## Device roaming status subscription - These endpoints allow to manage event subscription on roaming device status event. + These endpoints allow the API consumer to manage event subscriptions for device roaming status events. The CAMARA subscription model is detailed in the `CAMARA API Event Subscription and Notification Guide` and uses notifications that follow the CloudEvents specification. - When subscribing, it is mandatory to provide the event `type` you are subscribing to, as multiple subscription-types are managed by this API. + When creating a subscription, it is mandatory to provide the event type you are subscribing to, as multiple subscription-types are managed by this API. Following event types are defined for this API: - - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-status` - Event triggered when the device roaming status changes (either starting or stopping roaming) - - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-on` - Event triggered when the device roaming status changes to roaming ON - - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-off` - Event triggered when the device roaming status changes to roaming OFF - - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-change-country` - Event triggered whenever the device remains roaming but there is a change in country name + - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-status` : Event triggered when the device roaming status changes (either starting or stopping roaming) + - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-on` : Event triggered when the device roaming status changes to roaming ON + - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-off` : Event triggered when the device roaming status changes to roaming OFF + - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-change-country` : Event triggered whenever the device remains roaming but there is a change in country name Note: Additionally, the following events could be sent, which do not require a dedicated subscription: - `org.camaraproject.device-roaming-status-subscriptions.v0.subscription-started` is sent when the subscription starts. From 6780c5a378205810c8806ac03c95f336249b4db5 Mon Sep 17 00:00:00 2001 From: Eric Murray Date: Wed, 12 Aug 2026 16:37:22 +0100 Subject: [PATCH 03/12] Fix formatting of terms in YAML documentation --- .../device-roaming-status-subscriptions.yaml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/code/API_definitions/device-roaming-status-subscriptions.yaml b/code/API_definitions/device-roaming-status-subscriptions.yaml index 76f12fd..b7e210c 100644 --- a/code/API_definitions/device-roaming-status-subscriptions.yaml +++ b/code/API_definitions/device-roaming-status-subscriptions.yaml @@ -10,13 +10,15 @@ info: # Relevant terms and definitions - * **Roaming**: For the purposes of this API, a device is considered to be roaming if it is connected to a mobile network with a different mobile country code (MCC) to its home network. A device is not considered to be roaming if it is connected to a mobile network that has the same MCC as the home network, even if that network is not the home network. Where the home network has a MCC for a country that has been allocated more than one MCC, a device is not considered to be roaming if it is connected to any network that uses a MCC for that country. + * **Roaming**:/ + For the purposes of this API, a device is considered to be roaming if it is connected to a mobile network with a different mobile country code (MCC) to its home network. A device is not considered to be roaming if it is connected to a mobile network that has the same MCC as the home network, even if that network is not the home network. Where the home network has a MCC for a country that has been allocated more than one MCC, a device is not considered to be roaming if it is connected to any network that uses a MCC for that country. - * **Device**: A device refers to any physical entity that can connect to a network and participate in network communication. + * **Device**:/ + A device refers to any physical entity that can connect to a network and participate in network communication. - At least one identifier for the device out of four options must be provided: IPv4 address, IPv6 address, Phone number, or Network Access Identifier assigned by the mobile network operator for the device. Where more than one device identifier is provided, only one identifier will be selected by the implementation and this choice indicated to the API consumer in the subscription creation response. + At least one identifier for the device out of four options must be provided: IPv4 address, IPv6 address, Phone number, or Network Access Identifier assigned by the mobile network operator for the device. Where more than one device identifier is provided, only one identifier will be selected by the implementation and this choice indicated to the API consumer in the subscription creation response. - Note: Network Access Identifier is defined for future use and will not be supported with this version of the API. + Note: Network Access Identifier is defined for future use and will not be supported with this version of the API. # API Functionality From e0e5cbc71f009f0fa8c42768054759e09d46f2a1 Mon Sep 17 00:00:00 2001 From: Eric Murray Date: Wed, 12 Aug 2026 16:45:13 +0100 Subject: [PATCH 04/12] Update definitions for device and roaming in YAML --- .../API_definitions/device-roaming-status.yaml | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/code/API_definitions/device-roaming-status.yaml b/code/API_definitions/device-roaming-status.yaml index ac720c2..0861769 100644 --- a/code/API_definitions/device-roaming-status.yaml +++ b/code/API_definitions/device-roaming-status.yaml @@ -19,17 +19,21 @@ info: ## Relevant terms and definitions - * **Device**: A device refers to any physical entity that can connect to a network and participate in network communication. + * **Roaming**:/ + For the purposes of this API, a device is considered to be roaming if it is connected to a mobile network with a different mobile country code (MCC) to its home network. A device is not considered to be roaming if it is connected to a mobile network that has the same MCC as the home network, even if that network is not the home network. Where the home network has a MCC for a country that has been allocated more than one MCC, a device is not considered to be roaming if it is connected to any network that uses a MCC for that country. - At least one identifier for the device (user equipment) out of four options must be provided: IPv4 address, IPv6 address, Phone number, or Network Access Identifier assigned by the mobile network operator for the device. Where more than one device identifier is provided, only one identifier will be selected by the implementation and this choice indicated to the API consumer in the session creation response. + * **Device**:/ + A device refers to any physical entity that can connect to a network and participate in network communication. - Note: Network Access Identifier is defined for future use and will not be supported with this version of the API. + At least one identifier for the device (user equipment) out of four options must be provided: IPv4 address, IPv6 address, Phone number, or Network Access Identifier assigned by the mobile network operator for the device. Where more than one device identifier is provided, only one identifier will be selected by the implementation and this choice indicated to the API consumer in the session creation response. - * **Roaming** : Roaming status - `true`, if device is in roaming situation - `false` else. + Note: Network Access Identifier is defined for future use and will not be supported with this version of the API. - * **Country** : Country code and name - visited country information, provided if the device is in roaming situation. + * **Country**:\ + The mobile country code and associated ISO country name. The visited country information is provided when the device is roaming. When the device is not roaming, the country will be that of the home network for the device, but this information is not provided by the API. - * **LastStatusTime** : The time when the status was last confirmed to be correct. An older status is more likely to now be incorrect. + * **LastStatusTime**:\ + The time when the status was last confirmed to be correct. An older status is more likely to now be incorrect. # API Functionality @@ -37,7 +41,7 @@ info: ## Device roaming situation - The endpoint `POST /retrieve` allows to get roaming status and country information (if device in roaming situation) synchronously. + The endpoint `POST /retrieve` allows the API consumer to synchronously get roaming status and country information (when the device is roaming) From c086b79798d2b1694ec469755844fb007cdcc4fc Mon Sep 17 00:00:00 2001 From: Eric Murray Date: Wed, 12 Aug 2026 16:45:59 +0100 Subject: [PATCH 05/12] Fix formatting for terms in device-roaming-status.yaml Updated formatting for terms and definitions in the device roaming status API documentation. --- code/API_definitions/device-roaming-status.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/API_definitions/device-roaming-status.yaml b/code/API_definitions/device-roaming-status.yaml index 0861769..a29b168 100644 --- a/code/API_definitions/device-roaming-status.yaml +++ b/code/API_definitions/device-roaming-status.yaml @@ -19,10 +19,10 @@ info: ## Relevant terms and definitions - * **Roaming**:/ + * **Roaming**:\ For the purposes of this API, a device is considered to be roaming if it is connected to a mobile network with a different mobile country code (MCC) to its home network. A device is not considered to be roaming if it is connected to a mobile network that has the same MCC as the home network, even if that network is not the home network. Where the home network has a MCC for a country that has been allocated more than one MCC, a device is not considered to be roaming if it is connected to any network that uses a MCC for that country. - * **Device**:/ + * **Device**:\ A device refers to any physical entity that can connect to a network and participate in network communication. At least one identifier for the device (user equipment) out of four options must be provided: IPv4 address, IPv6 address, Phone number, or Network Access Identifier assigned by the mobile network operator for the device. Where more than one device identifier is provided, only one identifier will be selected by the implementation and this choice indicated to the API consumer in the session creation response. From d38b81b24d691da01d6d532d24014b2a66bfdd00 Mon Sep 17 00:00:00 2001 From: Eric Murray Date: Wed, 12 Aug 2026 16:48:46 +0100 Subject: [PATCH 06/12] Update LastStatusTime description in YAML Clarified the description of LastStatusTime to indicate confirmation by the API provider and potential connectivity issues. --- code/API_definitions/device-roaming-status.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/API_definitions/device-roaming-status.yaml b/code/API_definitions/device-roaming-status.yaml index a29b168..c1284e9 100644 --- a/code/API_definitions/device-roaming-status.yaml +++ b/code/API_definitions/device-roaming-status.yaml @@ -33,7 +33,7 @@ info: The mobile country code and associated ISO country name. The visited country information is provided when the device is roaming. When the device is not roaming, the country will be that of the home network for the device, but this information is not provided by the API. * **LastStatusTime**:\ - The time when the status was last confirmed to be correct. An older status is more likely to now be incorrect. + The time when the roaming status was last confirmed to be correct by the API provider. An older status is more likely to now be incorrect. The API provider may be unable to confirm a more recent status because, for example, the device may no longer be connected to the mobile network. # API Functionality From 78ae7e3403781b74f25d8ed27b348c849f2d1410 Mon Sep 17 00:00:00 2001 From: Eric Murray Date: Wed, 12 Aug 2026 16:49:04 +0100 Subject: [PATCH 07/12] Update LastStatusTime to Last Status Time in YAML --- code/API_definitions/device-roaming-status.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/API_definitions/device-roaming-status.yaml b/code/API_definitions/device-roaming-status.yaml index c1284e9..9f38495 100644 --- a/code/API_definitions/device-roaming-status.yaml +++ b/code/API_definitions/device-roaming-status.yaml @@ -32,7 +32,7 @@ info: * **Country**:\ The mobile country code and associated ISO country name. The visited country information is provided when the device is roaming. When the device is not roaming, the country will be that of the home network for the device, but this information is not provided by the API. - * **LastStatusTime**:\ + * **Last Status Time**:\ The time when the roaming status was last confirmed to be correct by the API provider. An older status is more likely to now be incorrect. The API provider may be unable to confirm a more recent status because, for example, the device may no longer be connected to the mobile network. # API Functionality From 7707d81d2dd4da8259602c2d70eb16b8c3f1b034 Mon Sep 17 00:00:00 2001 From: Eric Murray Date: Wed, 12 Aug 2026 16:59:41 +0100 Subject: [PATCH 08/12] Refine API definitions in device-roaming-status-subscriptions.yaml Updated definitions for 'Roaming' and 'Device', and added new definition for 'Country'. --- .../device-roaming-status-subscriptions.yaml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/code/API_definitions/device-roaming-status-subscriptions.yaml b/code/API_definitions/device-roaming-status-subscriptions.yaml index b7e210c..8caf861 100644 --- a/code/API_definitions/device-roaming-status-subscriptions.yaml +++ b/code/API_definitions/device-roaming-status-subscriptions.yaml @@ -10,16 +10,19 @@ info: # Relevant terms and definitions - * **Roaming**:/ + * **Roaming**:\ For the purposes of this API, a device is considered to be roaming if it is connected to a mobile network with a different mobile country code (MCC) to its home network. A device is not considered to be roaming if it is connected to a mobile network that has the same MCC as the home network, even if that network is not the home network. Where the home network has a MCC for a country that has been allocated more than one MCC, a device is not considered to be roaming if it is connected to any network that uses a MCC for that country. - * **Device**:/ + * **Device**:\ A device refers to any physical entity that can connect to a network and participate in network communication. At least one identifier for the device out of four options must be provided: IPv4 address, IPv6 address, Phone number, or Network Access Identifier assigned by the mobile network operator for the device. Where more than one device identifier is provided, only one identifier will be selected by the implementation and this choice indicated to the API consumer in the subscription creation response. Note: Network Access Identifier is defined for future use and will not be supported with this version of the API. + * **Country**:\ + The mobile country code and associated ISO country name. The visited country information is provided when the device is roaming. When the device is not roaming, the country will be that of the home network for the device, but this information is not provided by the API. + # API Functionality The API exposes following capability: From 74821310164de9f09c98fe275ee15e64512cae10 Mon Sep 17 00:00:00 2001 From: Eric Murray Date: Wed, 12 Aug 2026 17:01:21 +0100 Subject: [PATCH 09/12] Refine device roaming status documentation Updated the section title and clarified the endpoint description for better understanding. --- code/API_definitions/device-roaming-status.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/API_definitions/device-roaming-status.yaml b/code/API_definitions/device-roaming-status.yaml index 9f38495..8707ff9 100644 --- a/code/API_definitions/device-roaming-status.yaml +++ b/code/API_definitions/device-roaming-status.yaml @@ -39,9 +39,9 @@ info: The API exposes following capabilities: - ## Device roaming situation + ## Device Roaming Status - The endpoint `POST /retrieve` allows the API consumer to synchronously get roaming status and country information (when the device is roaming) + The endpoint `POST /retrieve` allows the API consumer to synchronously get roaming status and country information (when roaming) for a specific device From 50129860d3677a2b8c15bdfcdb2041606eecb7a4 Mon Sep 17 00:00:00 2001 From: Eric Murray Date: Wed, 12 Aug 2026 17:05:25 +0100 Subject: [PATCH 10/12] Clarify event type descriptions in YAML file --- .../device-roaming-status-subscriptions.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/API_definitions/device-roaming-status-subscriptions.yaml b/code/API_definitions/device-roaming-status-subscriptions.yaml index 8caf861..b93a4f1 100644 --- a/code/API_definitions/device-roaming-status-subscriptions.yaml +++ b/code/API_definitions/device-roaming-status-subscriptions.yaml @@ -35,10 +35,10 @@ info: When creating a subscription, it is mandatory to provide the event type you are subscribing to, as multiple subscription-types are managed by this API. Following event types are defined for this API: - - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-status` : Event triggered when the device roaming status changes (either starting or stopping roaming) - - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-on` : Event triggered when the device roaming status changes to roaming ON - - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-off` : Event triggered when the device roaming status changes to roaming OFF - - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-change-country` : Event triggered whenever the device remains roaming but there is a change in country name + - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-status` is sent when the device roaming status changes (either starting or stopping roaming) + - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-on` is sent when the device roaming status changes to roaming ON + - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-off` is sent when the device roaming status changes to roaming OFF + - `org.camaraproject.device-roaming-status-subscriptions.v0.roaming-change-country` is sent whenever the device remains roaming but there is a change in country name Note: Additionally, the following events could be sent, which do not require a dedicated subscription: - `org.camaraproject.device-roaming-status-subscriptions.v0.subscription-started` is sent when the subscription starts. From e1a899a48ec819b2de4baa9312192076ee28e7d1 Mon Sep 17 00:00:00 2001 From: Eric Murray Date: Wed, 12 Aug 2026 17:09:58 +0100 Subject: [PATCH 11/12] Update heading for device roaming status subscription --- code/API_definitions/device-roaming-status-subscriptions.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/API_definitions/device-roaming-status-subscriptions.yaml b/code/API_definitions/device-roaming-status-subscriptions.yaml index b93a4f1..5939c29 100644 --- a/code/API_definitions/device-roaming-status-subscriptions.yaml +++ b/code/API_definitions/device-roaming-status-subscriptions.yaml @@ -27,7 +27,7 @@ info: The API exposes following capability: - ## Device roaming status subscription + ## Device Roaming Status Subscription These endpoints allow the API consumer to manage event subscriptions for device roaming status events. The CAMARA subscription model is detailed in the `CAMARA API Event Subscription and Notification Guide` and uses notifications that follow the CloudEvents specification. From df9f8e59f9cb34c6c50c3ec82e610b2d5b832a3f Mon Sep 17 00:00:00 2001 From: Eric Murray Date: Thu, 13 Aug 2026 09:18:50 +0100 Subject: [PATCH 12/12] Update device-roaming-status.yaml --- code/API_definitions/device-roaming-status.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/API_definitions/device-roaming-status.yaml b/code/API_definitions/device-roaming-status.yaml index 8707ff9..f6233f0 100644 --- a/code/API_definitions/device-roaming-status.yaml +++ b/code/API_definitions/device-roaming-status.yaml @@ -41,7 +41,7 @@ info: ## Device Roaming Status - The endpoint `POST /retrieve` allows the API consumer to synchronously get roaming status and country information (when roaming) for a specific device + The endpoint `POST /retrieve` allows the API consumer to synchronously get the roaming status and country information (when roaming) for a specific device