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 Authentication Required API

Access is restricted to the root user.

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

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

This API exposes 20 operations across 16 paths, and defines 27 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.

20 operations 16 paths 27 schemas 10 GET10 POST

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 Authentication Required 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 20

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

AuthenticationRequired 20

Access is restricted to the root user.

GET
/v2/changes
Get all changes
getChanges 2 params → 200400
GET
/v2/changes/{id}
Get the status of a change
getChangeById 1 param → 200404
POST
/v2/changes/{id}
Abort a change
abortChangeById 1 param body → 200400404
POST
/v2/cohorts
Create cohort keys
createCohorts body → 200400
GET
/v2/find
Find snaps in the store
findSnaps 6 params → 200400
POST
/v2/login
Authenticate user with snapd and store
loginUser body → 200400401
POST
/v2/logout
Log user out of snapd and the store
logoutUser 1 param → 200400401
GET
/v2/logs
Get log contents
getLogs 3 params → 200400403
POST
/v2/snapctl
Run snapctl command
runSnapctl 1 param body → 200400
GET
/v2/snaps/{name}/conf
Get snap configuration
getSnapConfig 2 params → 200400
GET
/v2/snapshots/{set-id}/export
Export a snapshot set
exportSnapshot 1 param → 200400401404
GET
/v2/system/system-recovery-keys
Get system recovery key
getSystemRecoveryKey → 200400
POST
/v2/system/system-recovery-keys
Manage system recovery keys
manageSystemRecoveryKeys body → 200400
POST
/v2/systems
Perform an action on the current recovery system or create a new one
performSystemAction body → 200202400404
GET
/v2/systems/{label}
Get details for a specific recovery system
getSystemDetails 1 param → 200404
POST
/v2/systems/{label}
Perform an action on a specific recovery system
performLabeledSystemAction 1 param body → 200202400404
GET
/v2/validation-sets
Get all enabled validation sets
listValidationSets → 200400
GET
/v2/validation-sets/{account-id}/{name}
Get a specific validation set
getValidationSet 2 params → 200404
POST
/v2/validation-sets/{account-id}/{name}
Manage a specific validation set
applyValidationSet 2 params body → 200400404
POST
/v2/warnings
Respond to warnings
respondToWarnings body → 200400

Schemas 27

The contract defines 27 schemas that model the data the API accepts and returns. The most detailed are Snap (26 properties), Change (11 properties), Task (9 properties), SystemDetails (8 properties). Each schema is shown below with its type and property counts.

SystemActionReboot
object
Payload to reboot the device into a specific system mode.
2 properties 2 required
SystemActionCheckPassphrase
object
Payload to check the quality of a given passphrase.
2 properties 2 required
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
UserNotFoundError
object
1 property
Media
object
A media asset for the snap, such as an icon or screenshot.
4 properties
SystemActionDo
object
Payload to perform a custom action defined by the system.
3 properties 2 required
ValidationSet
object
6 properties
SnapNotInstalledError
object
The snap does not exist on the system.
3 properties
Change
object
Represents the state and progress of a background operation.
11 properties
Log
object
4 properties
Task
object
Represents a single task within a larger change.
9 properties
Progress
object
Represents the progress of a task.
3 properties
ConfdbError
object
An error occured while interacting with confdb.
2 properties
SystemDetails
object
Detailed information about a specific recovery system.
8 properties
SystemActionCheckPin
object
Payload to check the quality of a given PIN.
2 properties 2 required
Publisher
object
Information about the publisher of the snap.
4 properties
SystemActionFixEncryptionSupport
object
Payload to apply a corrective action to fix storage encryption support.
3 properties 2 required
NoSSHKeysError
object
1 property
Snap
object
Detailed information about a single snap.
26 properties
SystemActionCreate
object
6 properties 2 required
MalformedRequestError
object
1 property
SystemActionInstall
object
Payload to perform a step in the system installation process.
2 properties 2 required
NoModelAssertionError
object
The model assertion has not been created yet.
3 properties
NoSerialAssertionError
object
The serial assertion has not been created yet.
3 properties
SystemActionRemove
object
Payload to remove a specified recovery system.
1 property 1 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

canonical-authenticationrequired-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 Authentication Required 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.