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

Canonical Open Access API

Do not require the user to authenticate.

Canonical Open Access API is one of 122 APIs that Canonical publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Open Access. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, and release notes.

This API exposes 10 operations across 10 paths, and defines 24 schemas. It is described by OpenAPI 3.2.0, at version 1.0.

Requests are made against 2 base URLs: unix:///run/snapd.socket, unix:///run/snapd-snap.socket.

10 operations 10 paths 24 schemas 10 GET

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.0
Base URL
https://api.snapcraft.io
Authentication
API Key
License
Resource Areas
1

Authentication & Security 1

Canonical Open Access API declares 1 security scheme for authenticating requests. An API key is passed in the header as X-PEER-CREDENTIALS (PeerAuth).

  • PeerAuth — Unix Socket Peer Authentication Authentication is not handled via traditional HTTP headers or tokens. Instead, it is managed at the operating system level usin…

Paths & Operations 10

Across 10 paths, the API surfaces 10 operations — 10 GET. Each is listed below with its method, path, parameters, and response codes.

Open Access 10

Do not require the user to authenticate.

GET
/v2/icons/{name}/icon
Get a snap's icon
getSnapIcon 1 param → 200404
GET
/v2/quotas
Get all quota groups
getQuotaGroups → 200400
GET
/v2/quotas/{group-name}
Get a specific quota group
getQuotaGroupByName 1 param → 200404
GET
/v2/sections
Get store sections
getStoreSections → 2004XX
GET
/v2/snaps
List installed snaps
listInstalledSnaps 2 params → 200400
GET
/v2/snaps/{name}
Get details for an installed snap
getInstalledSnapByName 1 param → 200404
GET
/v2/snapshots
Get a list of snapshots
listSnapshots → 2004XX
GET
/v2/systems
Get the list of recovery systems
getSystems → 200404
GET
/v2/system-info
Get system information
getSystemInfo → 2004XX
GET
/v2/warnings
Get system warnings
getWarnings 1 param → 200400

Schemas 24

The contract defines 24 schemas that model the data the API accepts and returns. The most detailed are Snap (26 properties), SystemInfo (14 properties), Snapshot (12 properties), App (8 properties). Each schema is shown below with its type and property counts.

Links
object
A collection of relevant links for the snap.
2 properties
StoreCategory
object
A store category associated with the snap.
2 properties
NotFoundError
object
1 property
Activator
object
Details about a single service activator. Note that uppercase field names exist to maintain backward compatibility with the non-conformant previous implementat…
4 properties 4 required
UserNotFoundError
object
1 property
Media
object
A media asset for the snap, such as an icon or screenshot.
4 properties
SystemInfo
object
Detailed information about the snapd server's configuration and environment.
14 properties
SnapNotInstalledError
object
The snap does not exist on the system.
3 properties
SnapshotSet
object
Represents a set of snapshots, typically created at the same time.
2 properties
ConfdbError
object
An error occured while interacting with confdb.
2 properties
QuotaGroup
object
Defines a quota group for one or more snaps.
7 properties 1 required
Warning
object
6 properties
System
object
6 properties
Publisher
object
Information about the publisher of the snap.
4 properties
NoSSHKeysError
object
1 property
Snap
object
Detailed information about a single snap.
26 properties
TimerString
string
A custom schedule format for defining recurring events, combining weekdays, times, spans, and frequencies. Syntax Summary: - A timer string is composed of one…
InstalledSnap
object
Represents a snap package that is installed on the system.
MalformedRequestError
object
1 property
App
object
Represents a single application provided by a snap.
8 properties 1 required
InternalServerError
object
1 property
NoModelAssertionError
object
The model assertion has not been created yet.
3 properties
NoSerialAssertionError
object
The serial assertion has not been created yet.
3 properties
Snapshot
object
Metadata for a single snap's snapshot.
12 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

canonical-open-access-api-openapi.yml Raw ↑

Other APIs Canonical publishes across the network.

Snap Store API
Charmhub API
MAAS API
Juju Client / Controller API
Launchpad Web Services API
Ubuntu Pro Client API
Canonical Assertions API
Canonical Search API
Canonical Snaps API
MicroCeph REST API
Canonical App Authorization Service API
Canonical Application API
Where this information came from

This is an independent, third-party profile of Canonical Open Access 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.