How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

COS Registration Server API

Part of the Canonical Observability Stack for robotics and edge fleets. The registration server API registers devices and manages their per-application configuration — Grafana dashboards, Foxglove layouts and Bag files — across 13 paths and 35 operations, published as OpenAPI 3.0.3.

COS Registration Server API is one of 22 APIs that Canonical publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Observability, Robotics, and Edge. The published artifact set on APIs.io includes an OpenAPI specification.

This API exposes 35 operations across 13 paths, organized into 4 resource areas, and defines 14 schemas. It is described by OpenAPI 3.0.3, at version 1.

35 operations 13 paths 14 schemas 5 DELETE13 GET6 PATCH6 POST5 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
1
Resource Areas
4

Paths & Operations 35

Across 13 paths, the API surfaces 35 operations — 5 DELETE, 13 GET, 6 PATCH, 6 POST, 5 PUT. They span 4 resource areas: applications, devices, health, schema. Each is listed below with its method, path, parameters, and response codes.

applications 24
GET
/api/v1/applications/foxglove/dashboards/
List Foxglove dashboards
applications_foxglove_dashboards_list → 200
POST
/api/v1/applications/foxglove/dashboards/
Add a Foxglove dashboard
applications_foxglove_dashboards_create body → 201400
GET
/api/v1/applications/foxglove/dashboards/{uid}/
Download Foxglove dashboard JSON file
applications_foxglove_dashboards_retrieve 1 param → 200404
PUT
/api/v1/applications/foxglove/dashboards/{uid}/
Update a Foxglove dashboard completely
applications_foxglove_dashboards_update 1 param body → 201400404
PATCH
/api/v1/applications/foxglove/dashboards/{uid}/
Update a Foxglove dashboard partially
applications_foxglove_dashboards_partial_update 1 param body → 201400404
DELETE
/api/v1/applications/foxglove/dashboards/{uid}/
Delete a Foxglove dashboard
applications_foxglove_dashboards_destroy 1 param → 204404
GET
/api/v1/applications/grafana/dashboards/
List Grafana dashboards
applications_grafana_dashboards_list → 200
POST
/api/v1/applications/grafana/dashboards/
Add a Grafana dashboard
applications_grafana_dashboards_create body → 201400
GET
/api/v1/applications/grafana/dashboards/{uid}/
Download Grafana dashboard JSON file
applications_grafana_dashboards_retrieve 1 param → 200404
PUT
/api/v1/applications/grafana/dashboards/{uid}/
Update a Grafana dashboard completely
applications_grafana_dashboards_update 1 param body → 201400404
PATCH
/api/v1/applications/grafana/dashboards/{uid}/
Update a Grafana dashboard partially
applications_grafana_dashboards_partial_update 1 param body → 201400404
DELETE
/api/v1/applications/grafana/dashboards/{uid}/
Delete a Grafana dashboard
applications_grafana_dashboards_destroy 1 param → 204404
GET
/api/v1/applications/loki/alert_rules/
List Loki alert rule file
applications_loki_alert_rules_retrieve → 200
POST
/api/v1/applications/loki/alert_rules/
Add a Loki alert rule file
applications_loki_alert_rules_create body → 201400
GET
/api/v1/applications/loki/alert_rules/{uid}/
Download Loki alert rule file
applications_loki_alert_rules_retrieve_2 1 param → 200404
PUT
/api/v1/applications/loki/alert_rules/{uid}/
Update a Loki alert rule file completely
applications_loki_alert_rules_update 1 param body → 201400404
PATCH
/api/v1/applications/loki/alert_rules/{uid}/
Update a Loki alert rule file partially
applications_loki_alert_rules_partial_update 1 param body → 201400404
DELETE
/api/v1/applications/loki/alert_rules/{uid}/
Delete a Loki alert rule file
applications_loki_alert_rules_destroy 1 param → 204404
GET
/api/v1/applications/prometheus/alert_rules/
List Prometheus alert rule file
applications_prometheus_alert_rules_retrieve → 200
POST
/api/v1/applications/prometheus/alert_rules/
Add a Prometheus alert rule file
applications_prometheus_alert_rules_create body → 201400
GET
/api/v1/applications/prometheus/alert_rules/{uid}/
Download Prometheus alert rule file
applications_prometheus_alert_rules_retrieve_2 1 param → 200404
PUT
/api/v1/applications/prometheus/alert_rules/{uid}/
Update a Prometheus alert rule file completely
applications_prometheus_alert_rules_update 1 param body → 201400404
PATCH
/api/v1/applications/prometheus/alert_rules/{uid}/
Update a Prometheus alert rule file partially
applications_prometheus_alert_rules_partial_update 1 param body → 201400404
DELETE
/api/v1/applications/prometheus/alert_rules/{uid}/
Delete a Prometheus alert rule file
applications_prometheus_alert_rules_destroy 1 param → 204404
devices 9
GET
/api/v1/devices/
List devices
devices_list 1 param → 200
POST
/api/v1/devices/
Register a device
devices_create body → 201400
GET
/api/v1/devices/{uid}/
Get a device
devices_retrieve 1 param → 200404
PUT
/api/v1/devices/{uid}/
Update a device completely
devices_update 1 param body → 201400404
PATCH
/api/v1/devices/{uid}/
Update a device partially
devices_partial_update 1 param body → 201400404
DELETE
/api/v1/devices/{uid}/
Delete a device
devices_destroy 1 param → 204404
GET
/api/v1/devices/{uid}/certificate/
Check certificate signing status
devices_certificate_retrieve 1 param → 200404
POST
/api/v1/devices/{uid}/certificate/
Submit a Certificate Signing Request (CSR)
devices_certificate_create 1 param body → 202400404
PATCH
/api/v1/devices/{uid}/certificate/
Update certificate status (internal use)
devices_certificate_partial_update 1 param body → 200400404
health 1
GET
/api/v1/health/
Health
health_retrieve → 200
schema 1
GET
/api/v1/schema/
OpenApi3 schema for this API. Format can be selected via content negotiation. - YAML: application/vnd.oai.openapi - JSON: application/vnd.oai.openapi+json
schema_retrieve 2 params → 200

Schemas 14

The contract defines 14 schemas that model the data the API accepts and returns. The most detailed are Device (9 properties), PatchedDevice (9 properties), PatchedDeviceCertificate (7 properties), DeviceCertificate (7 properties). Each schema is shown below with its type and property counts.

BlankEnum
Device
object
Device Serializer class.
9 properties 4 required
DeviceCertificate
object
Device Certificate Serializer class.
7 properties 3 required
FoxgloveDashboard
object
Foxglove Dashboard Serializer class.
2 properties 2 required
GrafanaDashboard
object
Grafana Dashboard Serializer class.
2 properties 2 required
LokiAlertRuleFile
object
Loki Alert Rule Serializer class.
3 properties 2 required
PatchedDevice
object
Device Serializer class.
9 properties
PatchedDeviceCertificate
object
Device Certificate Serializer class.
7 properties
PatchedFoxgloveDashboard
object
Foxglove Dashboard Serializer class.
2 properties
PatchedGrafanaDashboard
object
Grafana Dashboard Serializer class.
2 properties
PatchedLokiAlertRuleFile
object
Loki Alert Rule Serializer class.
3 properties
PatchedPrometheusAlertRuleFile
object
Prometheus Alert Rule Serializer class.
3 properties
PrometheusAlertRuleFile
object
Prometheus Alert Rule Serializer class.
3 properties 2 required
StatusEnum
string
pending - Pending signed - Signed denied - Denied

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

canonical-cos-registration-server-api-openapi.yml Raw ↑

Other APIs Canonical publishes across the network.

Snap Store API
Charmhub API
snapd REST API
MAAS API
Juju Client / Controller API
Launchpad Web Services API
Ubuntu Pro Client API
Landscape API
Canonical Assertions API
Canonical Search API
Canonical Snaps API
LXD REST API
Where this information came from

This is an independent, third-party profile of COS Registration Server API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.