CapabilitiesAndRuntimeRestrictions API description
API description
The “Capabilities And Runtime Restrictions” API allows adaption to environment-specific differences in availability and support across CAMARA APIs. It provides the following functionality:
Discover Capabilities and Constraints:
Get information on which optional parameters are required or unsupported by a particular provider for a specific API.
See if an endpoint or feature is temporarily “not available” or permanently “not implemented.”
Stay Updated on Changes:
Subscribe to receive real-time notifications about any newly introduced restrictions or when existing ones are removed or updated.
Adapt Your Requests Automatically:
Adjust your application’s logic to avoid making invalid requests by checking up-to-date restrictions info before calling an API.
Use Cases
Preventing Errors from Unsupported Features:
For instance, if an API supports multiple device identifiers (IMEI, MSISDN, etc.) but a particular provider allows only MSISDN, your client can automatically skip the unsupported parameters.
Handling Temporary Outages or Unavailability:
During large events or maintenance, operations might be suspended. Use this API to gracefully disable those features and show helpful messages to users.
Managing Input Constraints:
Some numeric fields may have provider-specific limits (e.g., location radius no less than 5 km). Retrieve those limits and validate user input accordingly.
Adjusting to Region-Specific Requirements:
A provider in region A might mandate an otherwise optional parameter, while region B does not. You can create code that can adapt dynamically based on real-time restrictions.
Receiving Notifications for Quick Response:
If restrictions change (e.g., a parameter once required is no longer needed), your code can be notified. Your application can update functionality seamlessly without manual intervention.
Benefits
Reduced Errors & Downtime: By knowing exactly which parameters and operations are valid at any moment, you avoid failed calls and error handling overhead.
Improved User Experience: If features are unavailable, your app can hide or disable those options, preventing user frustration or confusion.
Future-Proofing: As providers evolve their implementations, your application can dynamically adapt through subscription-based notifications rather than requiring frequent manual updates.