xAnother Citrix Cloud DaaS API issue! I’d be very ...
# citrix-cloud
s
xAnother Citrix Cloud DaaS API issue! I’d be very interested to see if others are seeing the same, as I see the same issue on every Citrix Cloud Tennent I’ve checked so far. When querying Citrix Cloud connectors via the Citrix Cloud API, the status is always 'unknown' even if the cloud connector is in a good state. API: https://api.cloud.com/connectors/ Endpoint: Connectors_GetAll API Docs: https://developer-docs.citrix.com/en-us/citrix-cloud/citrix-cloud-connectors/apis/#/Connectors/Connectors-GetAll Example JSON from API request: Connectors_GetAll: [ { "id": "*[REDACTED]*", "fqdn": “*[REDACTED]*", "role": null, "windowsSid": "S-1-5-21-*[REDACTED]*", "location": "*[REDACTED]*", "currentVersion": "4.381.0.4578", "currentBootstrapperVersion": "6.114.0.4578", "expectedVersion": "4.381.0.4578", "expectedBootStrapperVersion": "6.114.0.4578", "versionState": "Normal", "inMaintenance": false, "leaseEndDateTime": null, "upgradeDisabled": false, "connectorType": "Windows", "status": "Unknown", "lastContactDate": "2025-04-11T101040.0169354Z" }, { "id": "*[REDACTED]*", "fqdn": "*[REDACTED]*", "role": null, "windowsSid": "S-1-5-21-*[REDACTED]*", "location": "*[REDACTED]*", "currentVersion": "4.381.0.4578", "currentBootstrapperVersion": "6.114.0.4578", "expectedVersion": "4.381.0.4578", "expectedBootStrapperVersion": "6.114.0.4578", "versionState": "Normal", "inMaintenance": false, "leaseEndDateTime": null, "upgradeDisabled": false, "connectorType": "Windows", "status": "Unknown", "lastContactDate": "2025-04-11T100826.6928764Z" } I have tested this across different customer tenants and get the same result I see similar behaviour from the Cloud Connector ConnectivityData API /healthdata/connectivitydata When the parameter 'dataAggregationTime' is set to 'OneDay' the latest entry is always 'unknown'. { "overallConnectorConnectivity": { "1744329600": "Unknown", # Unix time conversion: midnight, 11/4 (the past) "1744416000": "Connected"... # Unix time conversion: midnight, 12/4 (the future) but without the 'dataAggregationTime' param, all tests always come back 'connected' The confusing part here is that, at the time of query, 12/4 was in the future so there was no way the test could have run yet it states connected and the test that ran previously states unknown… I have raised this with Citrix (case ID: 83259093) but they seem to be struggling. Any help or insight much appreciated
Not sure if this is one you guys are aware of @Daniel Vaz @Jose Augustin
d
Hi Stu, I'm not aware of it. Are you currently using Secure Clients or Service Principals? We may need a support case to look into it further but also including @Nathanael Davison in case is aware and has a recommendation.
s
Thanks Daniel, this is with both service principal and secure client. Also tested across 6 different customer tenants, although all of these are in the EU region so unsure if this is limited to the EU. I have a case open (83259093)
n
Hi Stu, the 'unknown' response to individual calls is expected. When we talk about connectors there are 2 concepts of connectivity. 1. The connector is able to send its regular (5 minute interval) heartbeat to the cloud 2. The cloud can push messages to the connector through its long-lived websocket connection For 1., this is represented in the "lastContactDate" field of the response. This should be <5 minutes in the past. For 2., this requires a test message to be proactively sent from the cloud. The ability to trigger this is not available for external consumption due to the potential load on our cloud services. Hence it is always 'unknown'. Regarding the aggregation showing 'connected' we'll have to confirm what the logic is behind the aggregation.
s
Thanks Nathanael, appreciated your detailed response. This makes sense but it could be useful to have this detailed in the API docs. To me, if I see a field named ’status’ return anything ambiguous, I assume there is a problem that needs addressing. I’d be really interested to hear the logic for the ‘connectivitydata’ issue as I’d like to be able to report accurately on the state of each provider but currently that's difficult to assess due to the ‘connected’ entry being in the future.. I can just remove the ‘dataAggregationTime’ parameter though.