Podman system (compat) API
Actions related to Podman and compatibility engines
Actions related to Podman and compatibility engines
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/podman-system-compat-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
contact:
email: podman@lists.podman.io
name: Podman
url: https://podman.io/community/
description: 'This documentation describes the Podman v2.x+ RESTful API. It consists of a Docker-compatible
API and a Libpod API providing support for Podman’s unique features such as pods.
To start the service and keep it running for 5,000 seconds (-t 0 runs forever):
podman system service -t 5000 &
You can then use cURL on the socket using requests documented below.
NOTE: if you install the package podman-docker, it will create a symbolic
link for /run/docker.sock to /run/podman/podman.sock
NOTE: Some fields in the API response JSON are encoded as omitempty, which means that
if said field has a zero value, they will not be encoded in the API response. This
is a feature to help reduce the size of the JSON responses returned via the API.
NOTE: Due to the limitations of [go-swagger](https://github.com/go-swagger/go-swagger),
some field values that have a complex type show up as null in the docs as well as in the
API responses. This is because the zero value for the field type is null. The field
description in the docs will state what type the field is expected to be for such cases.
See podman-system-service(1) for more information.
Quick Examples:
''podman info''
curl --unix-socket /run/podman/podman.sock http://d/v6.0.0/libpod/info
''podman pull quay.io/containers/podman''
curl -XPOST --unix-socket /run/podman/podman.sock -v ''http://d/v6.0.0/images/create?fromImage=quay.io%2Fcontainers%2Fpodman''
''podman list images''
curl --unix-socket /run/podman/podman.sock -v ''http://d/v6.0.0/libpod/images/json'' | jq'
license:
name: Apache-2.0
url: https://opensource.org/licenses/Apache-2.0
termsOfService: https://github.com/containers/podman/blob/913caaa9b1de2b63692c9bae15120208194c9eb3/LICENSE
title: supports a RESTful API for the Libpod library artifacts system (compat) system (compat) API
version: 5.0.0
x-logo:
- url: https://raw.githubusercontent.com/containers/libpod/main/logo/podman-logo.png
- altText: Podman logo
servers:
- url: http://podman.io/
- url: https://podman.io/
tags:
- description: Actions related to Podman and compatibility engines
name: system (compat)
paths:
/auth:
post:
operationId: SystemAuth
responses:
'200':
$ref: '#/components/responses/systemAuthResponse'
'500':
$ref: '#/components/responses/internalError'
summary: Check auth configuration
tags:
- system (compat)
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AuthConfig'
application/x-tar:
schema:
$ref: '#/components/schemas/AuthConfig'
description: Authentication to check
/events:
get:
description: Returns events filtered on query parameters
operationId: SystemEvents
parameters:
- description: start streaming events from this time
in: query
name: since
schema:
type: string
- description: stop streaming events later than this
in: query
name: until
schema:
type: string
- description: JSON encoded map[string][]string of constraints
in: query
name: filters
schema:
type: string
responses:
'200':
description: returns a string of json data describing an event
'500':
$ref: '#/components/responses/internalError'
summary: Get events
tags:
- system (compat)
/info:
get:
description: Returns information on the system and libpod configuration
operationId: SystemInfo
responses:
'200':
description: to be determined
'500':
$ref: '#/components/responses/internalError'
summary: Get info
tags:
- system (compat)
/libpod/_ping:
get:
description: 'Return protocol information in response headers.
`HEAD /libpod/_ping` is also supported.
`/_ping` is available for compatibility with other engines.
The ''_ping'' endpoints are not versioned.
'
operationId: SystemPing
responses:
'200':
description: Success
headers:
API-Version:
description: Max compatibility API Version the server supports
schema:
type: string
BuildKit-Version:
description: Default version of docker image builder
schema:
type: string
Cache-Control:
description: always no-cache
schema:
type: string
Docker-Experimental:
description: If the server is running with experimental mode enabled, always true
schema:
type: boolean
Libpod-API-Version:
description: 'Max Podman API Version the server supports.
Available if service is backed by Podman, therefore may be used to
determine if talking to Podman engine or another engine
'
schema:
type: string
Libpod-Buildah-Version:
description: "Default version of libpod image builder.\n Available if service is backed by Podman, therefore may be used to\n determine if talking to Podman engine or another engine\n"
schema:
type: string
Pragma:
description: always no-cache
schema:
type: string
content:
text/plain:
schema:
description: OK
example: OK
type: string
'500':
$ref: '#/components/responses/internalError'
summary: Ping service
tags:
- system (compat)
/system/df:
get:
description: Return information about disk usage for containers, images, and volumes
operationId: SystemDataUsage
responses:
'200':
$ref: '#/components/responses/systemDiskUsage'
'500':
$ref: '#/components/responses/internalError'
summary: Show disk usage
tags:
- system (compat)
/version:
get:
operationId: SystemVersion
responses:
'200':
$ref: '#/components/responses/versionResponse'
summary: Component Version information
tags:
- system (compat)
components:
schemas:
ComponentVersion:
description: ServiceOptions provides the input for starting an API and sidecar pprof services
type: object
x-go-package: go.podman.io/podman/v6/pkg/domain/entities
SystemDfReport:
description: ServiceOptions provides the input for starting an API and sidecar pprof services
type: object
x-go-package: go.podman.io/podman/v6/pkg/domain/entities
AuthReport:
type: object
x-go-package: go.podman.io/podman/v6/pkg/domain/entities
AuthConfig:
description: AuthConfig contains authorization information for connecting to a Registry
properties:
auth:
type: string
x-go-name: Auth
email:
description: 'Email is an optional value associated with the username.
This field is deprecated and will be removed in a later
version of docker.'
type: string
x-go-name: Email
identitytoken:
description: 'IdentityToken is used to authenticate the user and get
an access token for the registry.'
type: string
x-go-name: IdentityToken
password:
type: string
x-go-name: Password
registrytoken:
description: RegistryToken is a bearer token to be sent to a registry
type: string
x-go-name: RegistryToken
serveraddress:
type: string
x-go-name: ServerAddress
username:
type: string
x-go-name: Username
type: object
x-go-package: go.podman.io/podman/v6/pkg/domain/entities/types
ErrorModel:
description: ErrorModel is used in remote connections with podman
properties:
cause:
description: API root cause formatted for automated parsing
example: API root cause
type: string
x-go-name: Because
message:
description: human error message, formatted for a human to read
example: human error message
type: string
x-go-name: Message
response:
description: HTTP response code
format: int64
minimum: 400
type: integer
x-go-name: ResponseCode
type: object
x-go-package: go.podman.io/podman/v6/pkg/errorhandling
responses:
versionResponse:
description: Version
content:
application/json:
schema:
$ref: '#/components/schemas/ComponentVersion'
application/octet-stream:
schema:
$ref: '#/components/schemas/ComponentVersion'
text/plain:
schema:
$ref: '#/components/schemas/ComponentVersion'
systemDiskUsage:
description: Disk usage
content:
application/json:
schema:
$ref: '#/components/schemas/SystemDfReport'
application/octet-stream:
schema:
$ref: '#/components/schemas/SystemDfReport'
text/plain:
schema:
$ref: '#/components/schemas/SystemDfReport'
systemAuthResponse:
description: Auth response
content:
application/json:
schema:
$ref: '#/components/schemas/AuthReport'
application/octet-stream:
schema:
$ref: '#/components/schemas/AuthReport'
text/plain:
schema:
$ref: '#/components/schemas/AuthReport'
internalError:
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorModel'
application/octet-stream:
schema:
$ref: '#/components/schemas/ErrorModel'
text/plain:
schema:
$ref: '#/components/schemas/ErrorModel'