Portainer website screenshot

Portainer

Portainer is an open source container management platform that simplifies deploying, managing, and monitoring Docker, Swarm, Podman, and Kubernetes environments through a unified web UI and REST API.

1 APIs 0 Features
Container ManagementContainersDockerKubernetes

APIs

Portainer

Portainer's HTTP API exposes everything the Portainer UI can do, including authentication, environment and endpoint management, stacks, containers, images, volumes, networks, re...

Collections

Pricing Plans

Portainer Plans Pricing

3 plans

PLANS

Rate Limits

Portainer Rate Limits

5 limits

RATE LIMITS

FinOps

Resources

🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Documentation
Documentation
🔗
APIReference
APIReference
📰
Blog
Blog
💰
Pricing
Pricing
👥
GitHubOrg
GitHubOrg
👥
GitHubRepository
GitHubRepository
🔗
Community
Community
🔗
Slack
Slack
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: PortainerCE API
  version: 2.39.1
items:
- info:
    name: auth
    type: folder
  items:
  - info:
      name: Authenticate
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/auth'
    docs: '**Access policy**: public

      Use this environment(endpoint) to authenticate against Portainer using a username and password.'
  - info:
      name: Logout
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/auth/logout'
    docs: '**Access policy**: public'
  - info:
      name: Authenticate with OAuth
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/auth/oauth/validate'
    docs: '**Access policy**: public'
- info:
    name: backup
    type: folder
  items:
  - info:
      name: Creates an archive with a system data snapshot that could be used to restore the system.
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/backup'
    docs: 'Creates an archive with a system data snapshot that could be used to restore the system.

      **Access policy**: admin'
  - info:
      name: Triggers a system restore using provided backup file
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/restore'
    docs: 'Triggers a system restore using provided backup file

      **Access policy**: public'
- info:
    name: custom_templates
    type: folder
  items:
  - info:
      name: List available custom templates
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/custom_templates'
      params:
      - name: type
        value: ''
        type: query
        description: Template types
      - name: edge
        value: ''
        type: query
        description: Filter by edge templates
    docs: 'List available custom templates.

      **Access policy**: authenticated'
  - info:
      name: Inspect a custom template
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/custom_templates/:id'
      params:
      - name: id
        value: ''
        type: path
        description: Template identifier
    docs: 'Retrieve details about a template.

      **Access policy**: authenticated'
  - info:
      name: Update a template
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/custom_templates/:id'
      params:
      - name: id
        value: ''
        type: path
        description: Template identifier
    docs: 'Update a template.

      **Access policy**: authenticated'
  - info:
      name: Remove a template
      type: http
    http:
      method: DELETE
      url: '{{baseUrl}}/custom_templates/:id'
      params:
      - name: id
        value: ''
        type: path
        description: Template identifier
    docs: 'Remove a template.

      **Access policy**: authenticated'
  - info:
      name: Get Template stack file content.
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/custom_templates/:id/file'
      params:
      - name: id
        value: ''
        type: path
        description: Template identifier
    docs: 'Retrieve the content of the Stack file for the specified custom template

      **Access policy**: authenticated'
  - info:
      name: Fetch the latest config file content based on custom template's git repository configuration
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/custom_templates/:id/git_fetch'
      params:
      - name: id
        value: ''
        type: path
        description: Template identifier
    docs: 'Retrieve details about a template created from git repository method.

      **Access policy**: authenticated'
  - info:
      name: Create a custom template
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/custom_templates/create/file'
    docs: 'Create a custom template.

      **Access policy**: authenticated'
  - info:
      name: Create a custom template
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/custom_templates/create/repository'
    docs: 'Create a custom template.

      **Access policy**: authenticated'
  - info:
      name: Create a custom template
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/custom_templates/create/string'
    docs: 'Create a custom template.

      **Access policy**: authenticated'
- info:
    name: docker
    type: folder
  items:
  - info:
      name: Fetch container gpus data
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/docker/:environmentId/containers/:containerId/gpus'
      params:
      - name: environmentId
        value: ''
        type: path
        description: Environment identifier
      - name: containerId
        value: ''
        type: path
        description: Container identifier
    docs: '**Access policy**:'
  - info:
      name: Get counters for the dashboard
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/docker/:environmentId/dashboard'
      params:
      - name: environmentId
        value: ''
        type: path
        description: Environment identifier
    docs: '**Access policy**: restricted'
  - info:
      name: Fetch images
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/docker/:environmentId/images'
      params:
      - name: environmentId
        value: ''
        type: path
        description: Environment identifier
      - name: withUsage
        value: ''
        type: query
        description: Include image usage information
    docs: '**Access policy**:'
- info:
    name: edge_groups
    type: folder
  items:
  - info:
      name: list EdgeGroups
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/edge_groups'
    docs: '**Access policy**: administrator'
  - info:
      name: Create an EdgeGroup
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/edge_groups'
    docs: '**Access policy**: administrator'
  - info:
      name: Inspects an EdgeGroup
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/edge_groups/:id'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeGroup Id
    docs: '**Access policy**: administrator'
  - info:
      name: Updates an EdgeGroup
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/edge_groups/:id'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeGroup Id
    docs: '**Access policy**: administrator'
  - info:
      name: Deletes an EdgeGroup
      type: http
    http:
      method: DELETE
      url: '{{baseUrl}}/edge_groups/:id'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeGroup Id
    docs: '**Access policy**: administrator'
- info:
    name: edge_jobs
    type: folder
  items:
  - info:
      name: Fetch EdgeJobs list
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/edge_jobs'
    docs: '**Access policy**: administrator'
  - info:
      name: Inspect an EdgeJob
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/edge_jobs/:id'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeJob Id
    docs: '**Access policy**: administrator'
  - info:
      name: Update an EdgeJob
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/edge_jobs/:id'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeJob Id
    docs: '**Access policy**: administrator'
  - info:
      name: Delete an EdgeJob
      type: http
    http:
      method: DELETE
      url: '{{baseUrl}}/edge_jobs/:id'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeJob Id
    docs: '**Access policy**: administrator'
  - info:
      name: Fetch a file of an EdgeJob
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/edge_jobs/:id/file'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeJob Id
    docs: '**Access policy**: administrator'
  - info:
      name: Fetch the list of tasks on an EdgeJob
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/edge_jobs/:id/tasks'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeJob Id
    docs: '**Access policy**: administrator'
  - info:
      name: Fetch the log for a specifc task on an EdgeJob
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/edge_jobs/:id/tasks/:taskID/logs'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeJob Id
      - name: taskID
        value: ''
        type: path
        description: Task Id
    docs: '**Access policy**: administrator'
  - info:
      name: Collect the log for a specifc task on an EdgeJob
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/edge_jobs/:id/tasks/:taskID/logs'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeJob Id
      - name: taskID
        value: ''
        type: path
        description: Task Id
    docs: '**Access policy**: administrator'
  - info:
      name: Clear the log for a specifc task on an EdgeJob
      type: http
    http:
      method: DELETE
      url: '{{baseUrl}}/edge_jobs/:id/tasks/:taskID/logs'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeJob Id
      - name: taskID
        value: ''
        type: path
        description: Task Id
    docs: '**Access policy**: administrator'
  - info:
      name: Create an EdgeJob from a file
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/edge_jobs/create/file'
    docs: '**Access policy**: administrator'
  - info:
      name: Create an EdgeJob from a text
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/edge_jobs/create/string'
    docs: '**Access policy**: administrator'
- info:
    name: edge_stacks
    type: folder
  items:
  - info:
      name: Fetches the list of EdgeStacks
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/edge_stacks'
      params:
      - name: summarizeStatuses
        value: ''
        type: query
        description: will summarize the statuses
    docs: '**Access policy**: administrator'
  - info:
      name: Inspect an EdgeStack
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/edge_stacks/:id'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeStack Id
    docs: '**Access policy**: administrator'
  - info:
      name: Update an EdgeStack
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/edge_stacks/:id'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeStack Id
    docs: '**Access policy**: administrator'
  - info:
      name: Delete an EdgeStack
      type: http
    http:
      method: DELETE
      url: '{{baseUrl}}/edge_stacks/:id'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeStack Id
    docs: '**Access policy**: administrator'
  - info:
      name: Fetches the stack file for an EdgeStack
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/edge_stacks/:id/file'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeStack Id
    docs: '**Access policy**: administrator'
  - info:
      name: Update an EdgeStack status
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/edge_stacks/:id/status'
      params:
      - name: id
        value: ''
        type: path
        description: EdgeStack Id
    docs: Authorized only if the request is done by an Edge Environment(Endpoint)
  - info:
      name: Create an EdgeStack from file
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/edge_stacks/create/file'
      params:
      - name: dryrun
        value: ''
        type: query
        description: if true, will not create an edge stack, but just will check the settings and return a non-persisted edge
          stack object
    docs: '**Access policy**: administrator'
  - info:
      name: Create an EdgeStack from a git repository
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/edge_stacks/create/repository'
      params:
      - name: dryrun
        value: ''
        type: query
        description: if true, will not create an edge stack, but just will check the settings and return a non-persisted edge
          stack object
    docs: '**Access policy**: administrator'
  - info:
      name: Create an EdgeStack from a text
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/edge_stacks/create/string'
      params:
      - name: dryrun
        value: ''
        type: query
        description: if true, will not create an edge stack, but just will check the settings and return a non-persisted edge
          stack object
    docs: '**Access policy**: administrator'
- info:
    name: endpoint_groups
    type: folder
  items:
  - info:
      name: List Environment(Endpoint) groups
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/endpoint_groups'
    docs: 'List all environment(endpoint) groups based on the current user authorizations. Will

      return all environment(endpoint) groups if using an administrator account otherwise it will

      only return authorized environment(endpoint) groups.

      **Access policy**: restricted'
  - info:
      name: Create an Environment(Endpoint) Group
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/endpoint_groups'
    docs: 'Create a new environment(endpoint) group.

      **Access policy**: administrator'
  - info:
      name: Inspect an Environment(Endpoint) group
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/endpoint_groups/:id'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) group identifier
    docs: 'Retrieve details abont an environment(endpoint) group.

      **Access policy**: administrator'
  - info:
      name: Update an environment(endpoint) group
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/endpoint_groups/:id'
      params:
      - name: id
        value: ''
        type: path
        description: EndpointGroup identifier
    docs: 'Update an environment(endpoint) group.

      **Access policy**: administrator'
  - info:
      name: Remove an environment(endpoint) group
      type: http
    http:
      method: DELETE
      url: '{{baseUrl}}/endpoint_groups/:id'
      params:
      - name: id
        value: ''
        type: path
        description: EndpointGroup identifier
    docs: 'Remove an environment(endpoint) group.

      **Access policy**: administrator'
  - info:
      name: Add an environment(endpoint) to an environment(endpoint) group
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/endpoint_groups/:id/endpoints/:endpointId'
      params:
      - name: id
        value: ''
        type: path
        description: EndpointGroup identifier
      - name: endpointId
        value: ''
        type: path
        description: Environment(Endpoint) identifier
    docs: 'Add an environment(endpoint) to an environment(endpoint) group

      **Access policy**: administrator'
  - info:
      name: Removes environment(endpoint) from an environment(endpoint) group
      type: http
    http:
      method: DELETE
      url: '{{baseUrl}}/endpoint_groups/:id/endpoints/:endpointId'
      params:
      - name: id
        value: ''
        type: path
        description: EndpointGroup identifier
      - name: endpointId
        value: ''
        type: path
        description: Environment(Endpoint) identifier
    docs: '**Access policy**: administrator'
- info:
    name: endpoints
    type: folder
  items:
  - info:
      name: List environments(endpoints)
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/endpoints'
      params:
      - name: start
        value: ''
        type: query
        description: Start searching from
      - name: limit
        value: ''
        type: query
        description: Limit results to this value
      - name: sort
        value: ''
        type: query
        description: Sort results by this value
      - name: order
        value: ''
        type: query
        description: Order sorted results by desc/asc
      - name: search
        value: ''
        type: query
        description: Search query
      - name: groupIds
        value: ''
        type: query
        description: List environments(endpoints) of these groups
      - name: status
        value: ''
        type: query
        description: List environments(endpoints) by this status
      - name: types
        value: ''
        type: query
        description: List environments(endpoints) of this type
      - name: tagIds
        value: ''
        type: query
        description: search environments(endpoints) with these tags (depends on tagsPartialMatch)
      - name: tagsPartialMatch
        value: ''
        type: query
        description: If true, will return environment(endpoint) which has one of tagIds, if false (or missing) will return
          only environments(endpoints) that has all the tags
      - name: endpointIds
        value: ''
        type: query
        description: will return only these environments(endpoints)
      - name: excludeIds
        value: ''
        type: query
        description: will exclude these environments(endpoints)
      - name: excludeGroupIds
        value: ''
        type: query
        description: will exclude environments(endpoints) belonging to these endpoint groups
      - name: provisioned
        value: ''
        type: query
        description: If true, will return environment(endpoint) that were provisioned
      - name: agentVersions
        value: ''
        type: query
        description: will return only environments with on of these agent versions
      - name: edgeAsync
        value: ''
        type: query
        description: if exists true show only edge async agents, false show only standard edge agents. if missing, will show
          both types (relevant only for edge agents)
      - name: edgeDeviceUntrusted
        value: ''
        type: query
        description: if true, show only untrusted edge agents, if false show only trusted edge agents (relevant only for edge
          agents)
      - name: edgeCheckInPassedSeconds
        value: ''
        type: query
        description: if bigger then zero, show only edge agents that checked-in in the last provided seconds (relevant only
          for edge agents)
      - name: excludeSnapshots
        value: ''
        type: query
        description: if true, the snapshot data won't be retrieved
      - name: name
        value: ''
        type: query
        description: will return only environments(endpoints) with this name
      - name: edgeStackStatus
        value: ''
        type: query
        description: only applied when edgeStackId exists. Filter the returned environments based on their deployment status
          in the stack (not the environment status!)
      - name: edgeGroupIds
        value: ''
        type: query
        description: List environments(endpoints) of these edge groups
      - name: excludeEdgeGroupIds
        value: ''
        type: query
        description: Exclude environments(endpoints) of these edge groups
    docs: 'List all environments(endpoints) based on the current user authorizations. Will

      return all environments(endpoints) if using an administrator or team leader account otherwise it will

      only return authorized environments(endpoints).

      **Access policy**: restricted'
  - info:
      name: Create a new environment(endpoint)
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/endpoints'
    docs: 'Create a new environment(endpoint) that will be used to manage an environment(endpoint).

      **Access policy**: administrator'
  - info:
      name: Remove multiple environments
      type: http
    http:
      method: DELETE
      url: '{{baseUrl}}/endpoints'
    docs: 'Deprecated: use the `POST` endpoint instead.

      Remove multiple environments and optionally clean-up associated resources.

      **Access policy**: Administrator only.'
  - info:
      name: Inspect an environment(endpoint)
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/endpoints/:id'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
      - name: excludeSnapshot
        value: ''
        type: query
        description: if true, the snapshot data won't be retrieved
    docs: 'Retrieve details about an environment(endpoint).

      **Access policy**: restricted'
  - info:
      name: Update an environment(endpoint)
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/endpoints/:id'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
    docs: 'Update an environment(endpoint).

      **Access policy**: authenticated'
  - info:
      name: Remove an environment
      type: http
    http:
      method: DELETE
      url: '{{baseUrl}}/endpoints/:id'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
    docs: 'Remove the environment associated to the specified identifier and optionally clean-up associated resources.

      **Access policy**: Administrator only.'
  - info:
      name: De-association an edge environment(endpoint)
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/endpoints/:id/association'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
    docs: 'De-association an edge environment(endpoint).

      **Access policy**: administrator'
  - info:
      name: Upload a file under a specific path on the file system of an environment (endpoint)
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/endpoints/:id/docker/v2/browse/put'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
      - name: volumeID
        value: ''
        type: query
        description: Optional volume identifier to upload the file
    docs: 'Use this environment(endpoint) to upload TLS files.

      **Access policy**: administrator'
  - info:
      name: fetch docker pull limits
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/endpoints/:id/dockerhub/:registryId'
      params:
      - name: id
        value: ''
        type: path
        description: endpoint ID
      - name: registryId
        value: ''
        type: path
        description: registry ID
    docs: 'get docker pull limits for a docker hub registry in the environment

      **Access policy**:'
  - info:
      name: Get environment(endpoint) status
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/endpoints/:id/edge/status'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
    docs: 'environment(endpoint) for edge agent to check status of environment(endpoint)

      **Access policy**: restricted only to Edge environments(endpoints)'
  - info:
      name: force update a docker service
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/endpoints/:id/forceupdateservice'
      params:
      - name: id
        value: ''
        type: path
        description: endpoint identifier
    docs: 'force update a docker service

      **Access policy**: authenticated'
  - info:
      name: List Registries on environment
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/endpoints/:id/registries'
      params:
      - name: namespace
        value: ''
        type: query
        description: required if kubernetes environment, will show registries by namespace
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
    docs: 'List all registries based on the current user authorizations in current environment.

      **Access policy**: authenticated'
  - info:
      name: update registry access for environment
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/endpoints/:id/registries/:registryId'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
      - name: registryId
        value: ''
        type: path
        description: Registry identifier
    docs: '**Access policy**: authenticated'
  - info:
      name: Update settings for an environment(endpoint)
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/endpoints/:id/settings'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
    docs: 'Update settings for an environment(endpoint).

      **Access policy**: authenticated'
  - info:
      name: Snapshots an environment(endpoint)
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/endpoints/:id/snapshot'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
    docs: 'Snapshots an environment(endpoint)

      **Access policy**: administrator'
  - info:
      name: Remove multiple environments
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/endpoints/delete'
    docs: 'Remove multiple environments and optionally clean-up associated resources.

      **Access policy**: Administrator only.'
  - info:
      name: Create or retrieve the endpoint for an EdgeID
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/endpoints/global-key'
    docs: Create or retrieve the endpoint for an EdgeID
  - info:
      name: Update relations for a list of environments
      type: http
    http:
      method: PUT
      url: '{{baseUrl}}/endpoints/relations'
    docs: 'Update relations for a list of environments

      Edge groups, tags and environment group can be updated.


      **Access policy**: administrator'
  - info:
      name: Snapshot all environments(endpoints)
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/endpoints/snapshot'
    docs: 'Snapshot all environments(endpoints)

      **Access policy**: administrator'
- info:
    name: edge
    type: folder
  items:
  - info:
      name: Update the logs collected from an Edge Job
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/endpoints/:id/edge/jobs/:jobID/logs'
      params:
      - name: id
        value: ''
        type: path
        description: environment(endpoint) Id
      - name: jobID
        value: ''
        type: path
        description: Job Id
    docs: Authorized only if the request is done by an Edge Environment(Endpoint)
  - info:
      name: Inspect an Edge Stack for an Environment(Endpoint)
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/endpoints/:id/edge/stacks/:stackId'
      params:
      - name: id
        value: ''
        type: path
        description: environment(endpoint) Id
      - name: stackId
        value: ''
        type: path
        description: EdgeStack Id
    docs: '**Access policy**: public'
- info:
    name: helm
    type: folder
  items:
  - info:
      name: List Helm Releases
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/endpoints/:id/kubernetes/helm'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
      - name: namespace
        value: ''
        type: query
        description: specify an optional namespace
      - name: filter
        value: ''
        type: query
        description: specify an optional filter
      - name: selector
        value: ''
        type: query
        description: specify an optional selector
    docs: '**Access policy**: authenticated'
  - info:
      name: Install Helm Chart
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/endpoints/:id/kubernetes/helm'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
      - name: dryRun
        value: ''
        type: query
        description: Dry run
    docs: '**Access policy**: authenticated'
  - info:
      name: Get a helm release
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/endpoints/:id/kubernetes/helm/:name'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
      - name: name
        value: ''
        type: path
        description: Helm release name
      - name: namespace
        value: ''
        type: query
        description: specify an optional namespace
      - name: showResources
        value: ''
        type: query
        description: show resources of the release
      - name: revision
        value: ''
        type: query
        description: specify an optional revision
    docs: 'Get details of a helm release by release name

      **Access policy**: authenticated'
  - info:
      name: Delete Helm Release
      type: http
    http:
      method: DELETE
      url: '{{baseUrl}}/endpoints/:id/kubernetes/helm/:release'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
      - name: release
        value: ''
        type: path
        description: The name of the release/application to uninstall
      - name: namespace
        value: ''
        type: query
        description: An optional namespace
    docs: '**Access policy**: authenticated'
  - info:
      name: Get a historical list of releases
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/endpoints/:id/kubernetes/helm/:release/history'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
      - name: name
        value: ''
        type: path
        description: Helm release name
      - name: namespace
        value: ''
        type: query
        description: specify an optional namespace
    docs: 'Get a historical list of releases by release name

      **Access policy**: authenticated'
  - info:
      name: Rollback a helm release
      type: http
    http:
      method: POST
      url: '{{baseUrl}}/endpoints/:id/kubernetes/helm/:release/rollback'
      params:
      - name: id
        value: ''
        type: path
        description: Environment(Endpoint) identifier
      - name: release
        value: ''
        type: path
        description: Helm release name
      - name: namespace
        value: ''
        type: query
        description: specify an optional namespace
      - name: revision
        value: ''
        type: query
        description: specify the revision to rollback to (defaults to previous revision if not specified)
      - name: wait
        value: ''
        type: query
        description: 'wait for resources to be ready (default: false)'
      - name: waitForJobs
        value: ''
        type: query
        description: 'wait for jobs to complete before marking the release as successful (default: false)'
      - name: recreate
        value: ''
        type: query
        description: 'performs pods restart for the resource if applicable (default: true)'
      - name: force
        value: ''
        type: query
        description: 'force resource update through delete/recreate if needed (default: false)'
      - name: timeout
        value: ''
        type: query
        description: 'time to wait for any individual Kubernetes operation in seconds (default: 300)'
    docs: 'Rollback a helm release to a previous revision

      **Access policy**: authenticated'
  - info:
      name: Search Helm Charts
      type: http
    http:
      method: GET
      url: '{{baseUrl}}/templates/helm'
      params:
      - name: repo
        value: ''
        type: query
        description: Helm repository URL
      - name: chart
        value: ''
        type: query
        description: Helm chart name
      - name: useCache
        value: ''
        type: query
        description: If true will use cache to search
    docs: '**Access policy**: authenticated'
  - info:
      name: Show Helm Chart Information
      type: http
    http:


# --- truncated at 32 KB (100 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/portainer/refs/heads/main/apis.yml