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

Portainer endpoints API

Manage Docker environments(endpoints)

Portainer endpoints API is one of 32 APIs that Portainer publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, and a getting-started guide.

This API exposes 21 operations across 17 paths, and defines 51 schemas. It is described by OpenAPI 3.2.0, at version 2.39.1.

Requests are made against a single base URL, /api.

21 operations 17 paths 51 schemas 2 DELETE6 GET7 POST6 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
2.39.1
Base URL
https://api-docs.portainer.io
Authentication
API Key, API Key
License
Resource Areas
1

Authentication & Security 2

Portainer endpoints API declares 2 security schemes for authenticating requests. An API key is passed in the header as X-API-KEY (ApiKeyAuth). An API key is passed in the header as Authorization (jwt).

Paths & Operations 21

Across 17 paths, the API surfaces 21 operations — 2 DELETE, 6 GET, 7 POST, 6 PUT. Each is listed below with its method, path, parameters, and response codes.

endpoints 21

Manage Docker environments(endpoints)

DELETE
/endpointsdeprecated
Remove multiple environments
EndpointDeleteBatchDeprecated body → 204207400403500
GET
/endpoints
List environments(endpoints)
EndpointList 23 params → 200500
POST
/endpoints
Create a new environment(endpoint)
EndpointCreate body → 200400409500
DELETE
/endpoints/{id}
Remove an environment
EndpointDelete 1 param → 204400403404500
GET
/endpoints/{id}
Inspect an environment(endpoint)
EndpointInspect 2 params → 200400404500
PUT
/endpoints/{id}
Update an environment(endpoint)
EndpointUpdate 1 param body → 200400404409500
PUT
/endpoints/{id}/association
De-association an edge environment(endpoint)
EndpointAssociationDelete 1 param → 204400404500
POST
/endpoints/{id}/docker/v2/browse/put
Upload a file under a specific path on the file system of an environment (endpoint)
2 params body → 204400500
GET
/endpoints/{id}/dockerhub/{registryId}
fetch docker pull limits
endpointDockerhubStatus 2 params → 200400403404500
POST
/endpoints/{id}/edge/jobs/{jobID}/logs
Update the logs collected from an Edge Job
2 params → 200400403500
GET
/endpoints/{id}/edge/stacks/{stackId}
Inspect an Edge Stack for an Environment(Endpoint)
2 params → 200400404500
GET
/endpoints/{id}/edge/status
Get environment(endpoint) status
EndpointEdgeStatusInspect 1 param → 200400403404500
PUT
/endpoints/{id}/forceupdateservice
force update a docker service
endpointForceUpdateService 1 param body → 200400403404500
GET
/endpoints/{id}/registries
List Registries on environment
endpointRegistriesList 2 params → 200500
PUT
/endpoints/{id}/registries/{registryId}
update registry access for environment
endpointRegistryAccess 2 params body → 204400403404500
PUT
/endpoints/{id}/settings
Update settings for an environment(endpoint)
EndpointSettingsUpdate 1 param body → 200400404500
POST
/endpoints/{id}/snapshot
Snapshots an environment(endpoint)
EndpointSnapshot 1 param → 204400404500
POST
/endpoints/delete
Remove multiple environments
EndpointDeleteBatch body → 204207400403500
POST
/endpoints/global-key
Create or retrieve the endpoint for an EdgeID
EndpointCreateGlobalKey → 200400500
PUT
/endpoints/relations
Update relations for a list of environments
EndpointUpdateRelations body → 204400401404500
POST
/endpoints/snapshot
Snapshot all environments(endpoints)
EndpointSnapshots → 204500

Schemas 51

The contract defines 51 schemas that model the data the API accepts and returns. The most detailed are portainer.Endpoint (37 properties), edge.StackPayload (24 properties), portainer.DockerSnapshot (21 properties), portainer.Registry (20 properties). Each schema is shown below with its type and property counts.

portainer.Pair
object
2 properties
endpointedge.edgeJobResponse
object
5 properties
portainer.QuayRegistryData
object
2 properties
portainer.TeamAccessPolicies
object
portainer.HelmConfig
object
5 properties
portainer.EcrData
object
1 property
portainer.KubernetesFlags
object
3 properties
portainer.TLSConfiguration
object
5 properties
portainer.GitlabRegistryData
object
3 properties
portainer.EndpointSecuritySettings
object
9 properties
portainer.Registry
object
20 properties
portainer.EndpointPostInitMigrations
object
2 properties
edge.RegistryCredentials
object
3 properties
portainer.RegistryAccesses
object
endpoints.endpointUpdatePayload
object
17 properties
filesystem.DirEntry
object
4 properties
endpoints.endpointDeleteRequest
object
2 properties
portainer.RegistryManagementConfiguration
object
8 properties
endpointedge.endpointEdgeStatusInspectResponse
object
6 properties
endpoints.registryAccessPayload
object
3 properties
portainer.KubernetesIngressClassConfig
object
4 properties
swarm.ServiceUpdateResponse
object
1 property
edge.DeployerOptionsPayload
object
3 properties
endpoints.endpointCreateGlobalKeyResponse
object
1 property
portainer.KubernetesData
object
3 properties
endpoints.forceUpdateServicePayload
object
2 properties
endpoints.endpointDeleteBatchPartialResponse
object
2 properties
portainer.AzureCredentials
object
3 properties
portainer.RegistryAccessPolicies
object
3 properties
portainer.UserAccessPolicies
object
portainer.AccessPolicy
object
2 properties
portainer.KubernetesConfiguration
object
9 properties
portainer.EnvironmentEdgeSettings
object
4 properties
edge.StackPayload
object
24 properties
endpoints.endpointDeleteBatchPayload
object
1 property
endpoints.endpointSettingsUpdatePayload
object
11 properties
os.FileMode
integer
portainer.KubernetesSnapshot
object
7 properties
portainer.DiagnosticsData
object
4 properties
portainer.DockerSnapshot
object
21 properties
endpointedge.stackStatusResponse
object
2 properties
portainer.KubernetesStorageClassConfig
object
4 properties
portainer.Endpoint
object
37 properties
portainer.EndpointType
integer
portainer.GithubRegistryData
object
2 properties
endpoints.dockerhubStatusResponse
object
2 properties
portainer.PerformanceMetrics
object
3 properties
portainer.DockerSnapshotRaw
object
endpoints.endpointUpdateRelationsPayload
object
1 property
portainer.RegistryType
integer
portainer.EndpointStatus
integer

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

portainer-endpoints-api-openapi.yml Raw ↑

Other APIs Portainer publishes across the network.

Portainer auth API
Portainer backup API
Portainer custom_templates API
Portainer docker API
Portainer edge API
Portainer edge_groups API
Portainer edge_jobs API
Portainer edge_stacks API
Portainer endpoint_groups API
Portainer gitops API
Portainer helm API
Portainer intel API
Where this information came from

This is an independent, third-party profile of Portainer endpoints 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.