API documentation for the MyCirrus API
MyCirrus API - Instrument info, Data and Webhooks (1.0.1)
- Mock serverhttps://docs.mycirrus.cloud/_mock/apis/mycirrus-main/data/calibrations
- Production serverhttps://api.mycirrus.cloud/v1/data/calibrations
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.mycirrus.cloud/_mock/apis/mycirrus-main/data/calibrations?instruments=QT123456%2CQT234567&start=2023-01-01T00%3A00%3A00Z&end=2023-01-31T00%3A00%3A00Z' \
-H 'X-Api-Key: YOUR_API_KEY_HERE'[ { "Time": "2022-06-07T14:45:22Z", "Status": "Success", "Instrument": "QT123456", "Level": 93.7, "Offset": 0.12 } ]
- Mock serverhttps://docs.mycirrus.cloud/_mock/apis/mycirrus-main/data/calibrations/log
- Production serverhttps://api.mycirrus.cloud/v1/data/calibrations/log
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.mycirrus.cloud/_mock/apis/mycirrus-main/data/calibrations/log?instruments=QT123456%2CQT234567&start=2023-01-01T00%3A00%3A00Z&end=2023-01-31T00%3A00%3A00Z' \
-H 'X-Api-Key: YOUR_API_KEY_HERE'[ { "time": "2022-06-07T11:18:42.814Z", "user": "Quantum Demo", "message": "Installed and working" } ]
- Mock serverhttps://docs.mycirrus.cloud/_mock/apis/mycirrus-main/data/sic
- Production serverhttps://api.mycirrus.cloud/v1/data/sic
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.mycirrus.cloud/_mock/apis/mycirrus-main/data/sic?instruments=QT123456%2CQT234567&start=2023-01-01T00%3A00%3A00Z&end=2023-01-31T00%3A00%3A00Z' \
-H 'X-Api-Key: YOUR_API_KEY_HERE'[ { "time": "2023-06-14T14:00:00.2074974Z", "instrument": "QT800002", "status": "Error", "_500Hz": 55.3829, "_8KHz": 35.7019, "_1KHz": 48.5379 } ]
- Mock serverhttps://docs.mycirrus.cloud/_mock/apis/mycirrus-main/data/monitor/stats
- Production serverhttps://api.mycirrus.cloud/v1/data/monitor/stats
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.mycirrus.cloud/_mock/apis/mycirrus-main/data/monitor/stats?instruments=QT123456%2CQT234567&start=2023-01-01T00%3A00%3A00Z&end=2023-01-31T00%3A00%3A00Z' \
-H 'X-Api-Key: YOUR_API_KEY_HERE'[ { "time": "2023-06-15T23:01:00Z", "samplePeriod": 60, "cpu": 13.9, "mem": 285.8, "cache": 531.4, "temp": 36, "voltage": 11.671, "disk": 56.7, "netRx": 492, "netTx": 119, "mTot": 3793, "dTot": 24892, "lteRsrp": null, "lteRsrq": null, "lteSinr": null, "lteSignal": null, "ping": 0, "network": 10.183333333333334, "memoryPercent": 7.534932770893751, "diskPercent": 0.22778402699662545 } ]
Request
Get system monitor events for the selected instruments and time range.
Only supported by Quantum noise monitors.
The maximum date range per request is 31 days. If you request a longer range, the server will respond with an error.
Requires an API key with the data.system:read scope.
- Mock serverhttps://docs.mycirrus.cloud/_mock/apis/mycirrus-main/data/monitor/events
- Production serverhttps://api.mycirrus.cloud/v1/data/monitor/events
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.mycirrus.cloud/_mock/apis/mycirrus-main/data/monitor/events?instruments=QT123456%2CQT234567&start=2023-01-01T00%3A00%3A00Z&end=2023-01-31T00%3A00%3A00Z' \
-H 'X-Api-Key: YOUR_API_KEY_HERE'[ { "type": "Connection", "start": "2023-06-15T07:33:09.51Z", "end": "2023-06-15T07:34:21.524Z", "info": "Ethernet" } ]
- Mock serverhttps://docs.mycirrus.cloud/_mock/apis/mycirrus-main/data/monitor/current
- Production serverhttps://api.mycirrus.cloud/v1/data/monitor/current
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.mycirrus.cloud/_mock/apis/mycirrus-main/data/monitor/current?instruments=QT123456%2CQT234567' \
-H 'X-Api-Key: YOUR_API_KEY_HERE'[ { "cpu": 12.2, "mem": 8.3, "temp": 51.1, "voltage": 11.5, "disk": 0.2, "network": 3.7, "simQuota": 0, "simUsage": 0, "uptime": 900 } ]
Webhook management
Webhooks allow you to receive notifications when new data is available. You can configure webhooks via the API itself or via the console.
To create a webhook, go to the API console and click the "Create Webhook" button.
These are the endpoints you can use to manage your webhooks:
Webhook Messages
Webhooks allow you to receive notifications when new data is available. You can configure webhooks via the API itself or via the console.
To create a webhook, go to the API console and click the "Create Webhook" button.
When a webhook is triggered, a POST request will be sent to the URL you specified. The request will contain a JSON body with the data that triggered the webhook.
When processing the webhook request you must return a 200 OK response to indicate that the data was received successfully.
If a 200 response is not given or the request times out (5 seconds), the webhook will be retried up to 5 times.
To ensure a fast response we recommend you respond immediately and queue any further work to be done later.
If a webhook repeatedly fails you will be notified via email. If it continues to fail it will then be removed.
We cannot guarantee you will get a webhook request for every event so you should occasionally check for new items against the normal API endpoints. When processing events such as new measurements its also recommended to request all data since you last processed it rather than just the 1 new measurement from the request.
These are the types of webhook messages you can receive: