Portainer · Schema

portainer.Settings

Container ManagementContainersDockerKubernetesKubernetes ManagementEnterprise IdentityGitOps

Properties

Name Type Description
AgentSecret string Container environment parameter AGENT_SECRET
AllowBindMountsForRegularUsers boolean
AllowContainerCapabilitiesForRegularUsers boolean
AllowDeviceMappingForRegularUsers boolean
AllowHostNamespaceForRegularUsers boolean
AllowPrivilegedModeForRegularUsers boolean
AllowStackManagementForRegularUsers boolean
AllowVolumeBrowserForRegularUsers boolean
AuthenticationMethod object Active authentication method for the Portainer instance. Valid values are: 1 for internal, 2 for LDAP, or 3 for oauth
BlackListedLabels array A list of label name & value that will be used to hide containers when querying containers
DisplayDonationHeader boolean Deprecated fields
DisplayExternalContributors boolean
Edge object
EdgeAgentCheckinInterval integer The default check in interval for edge agent (in seconds)
EdgePortainerUrl string EdgePortainerURL is the URL that is exposed to edge agents
EnableEdgeComputeFeatures boolean Whether edge compute features are enabled
EnableHostManagementFeatures boolean Deprecated fields v26
EnforceEdgeID boolean EnforceEdgeID makes Portainer store the Edge ID instead of accepting anyone
FeatureFlagSettings object
GlobalDeploymentOptions object Deployment options for encouraging git ops workflows
HelmRepositoryURL string Helm repository URL, defaults to "https://charts.bitnami.com/bitnami"
InternalAuthSettings object
IsDockerDesktopExtension boolean
KubeconfigExpiry string The expiry of a Kubeconfig
KubectlShellImage string KubectlImage, defaults to portainer/kubectl-shell
LDAPSettings object
LogoURL string URL to a logo that will be displayed on the login page as well as on top of the sidebar. Will use default Portainer logo when value is empty string
OAuthSettings object
SnapshotInterval string The interval in which environment(endpoint) snapshots are created
TemplatesURL string URL to the templates that will be displayed in the UI when navigating to App Templates
TrustOnFirstConnect boolean TrustOnFirstConnect makes Portainer accepting edge agent connection by default
UserSessionTimeout string The duration of a user session
openAMTConfiguration object
View JSON Schema on GitHub

JSON Schema

portainer-portainer-settings-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/portainer/main/json-schema/portainer-portainer-settings-schema.json",
  "title": "portainer.Settings",
  "x-generated": "2026-10-03",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/portainer-settings-api-openapi.yml#/components/schemas/portainer.Settings",
  "properties": {
    "AgentSecret": {
      "description": "Container environment parameter AGENT_SECRET",
      "type": "string"
    },
    "AllowBindMountsForRegularUsers": {
      "type": "boolean"
    },
    "AllowContainerCapabilitiesForRegularUsers": {
      "type": "boolean"
    },
    "AllowDeviceMappingForRegularUsers": {
      "type": "boolean"
    },
    "AllowHostNamespaceForRegularUsers": {
      "type": "boolean"
    },
    "AllowPrivilegedModeForRegularUsers": {
      "type": "boolean"
    },
    "AllowStackManagementForRegularUsers": {
      "type": "boolean"
    },
    "AllowVolumeBrowserForRegularUsers": {
      "type": "boolean"
    },
    "AuthenticationMethod": {
      "allOf": [
        {
          "$ref": "#/$defs/portainer.AuthenticationMethod"
        }
      ],
      "description": "Active authentication method for the Portainer instance. Valid values are: 1 for internal, 2 for LDAP, or 3 for oauth"
    },
    "BlackListedLabels": {
      "description": "A list of label name & value that will be used to hide containers when querying containers",
      "items": {
        "$ref": "#/$defs/portainer.Pair"
      },
      "type": "array"
    },
    "DisplayDonationHeader": {
      "description": "Deprecated fields",
      "type": "boolean"
    },
    "DisplayExternalContributors": {
      "type": "boolean"
    },
    "Edge": {
      "$ref": "#/$defs/portainer.Edge"
    },
    "EdgeAgentCheckinInterval": {
      "description": "The default check in interval for edge agent (in seconds)",
      "type": "integer"
    },
    "EdgePortainerUrl": {
      "description": "EdgePortainerURL is the URL that is exposed to edge agents",
      "type": "string"
    },
    "EnableEdgeComputeFeatures": {
      "description": "Whether edge compute features are enabled",
      "type": "boolean"
    },
    "EnableHostManagementFeatures": {
      "description": "Deprecated fields v26",
      "type": "boolean"
    },
    "EnforceEdgeID": {
      "description": "EnforceEdgeID makes Portainer store the Edge ID instead of accepting anyone",
      "type": "boolean"
    },
    "FeatureFlagSettings": {
      "additionalProperties": {
        "type": "boolean"
      },
      "type": "object"
    },
    "GlobalDeploymentOptions": {
      "allOf": [
        {
          "$ref": "#/$defs/portainer.GlobalDeploymentOptions"
        }
      ],
      "description": "Deployment options for encouraging git ops workflows"
    },
    "HelmRepositoryURL": {
      "description": "Helm repository URL, defaults to \"https://charts.bitnami.com/bitnami\"",
      "type": "string"
    },
    "InternalAuthSettings": {
      "$ref": "#/$defs/portainer.InternalAuthSettings"
    },
    "IsDockerDesktopExtension": {
      "type": "boolean"
    },
    "KubeconfigExpiry": {
      "description": "The expiry of a Kubeconfig",
      "type": "string"
    },
    "KubectlShellImage": {
      "description": "KubectlImage, defaults to portainer/kubectl-shell",
      "type": "string"
    },
    "LDAPSettings": {
      "$ref": "#/$defs/portainer.LDAPSettings"
    },
    "LogoURL": {
      "description": "URL to a logo that will be displayed on the login page as well as on top of the sidebar. Will use default Portainer logo when value is empty string",
      "type": "string"
    },
    "OAuthSettings": {
      "$ref": "#/$defs/portainer.OAuthSettings"
    },
    "SnapshotInterval": {
      "description": "The interval in which environment(endpoint) snapshots are created",
      "type": "string"
    },
    "TemplatesURL": {
      "description": "URL to the templates that will be displayed in the UI when navigating to App Templates",
      "type": "string"
    },
    "TrustOnFirstConnect": {
      "description": "TrustOnFirstConnect makes Portainer accepting edge agent connection by default",
      "type": "boolean"
    },
    "UserSessionTimeout": {
      "description": "The duration of a user session",
      "type": "string"
    },
    "openAMTConfiguration": {
      "$ref": "#/$defs/portainer.OpenAMTConfiguration"
    }
  },
  "type": "object",
  "$defs": {
    "oauth2.AuthStyle": {
      "enum": [
        0,
        1,
        2
      ],
      "type": "integer",
      "x-enum-varnames": [
        "AuthStyleAutoDetect",
        "AuthStyleInParams",
        "AuthStyleInHeader"
      ]
    },
    "portainer.AuthenticationMethod": {
      "enum": [
        0,
        1,
        2,
        3
      ],
      "type": "integer",
      "x-enum-varnames": [
        "_",
        "AuthenticationInternal",
        "AuthenticationLDAP",
        "AuthenticationOAuth"
      ]
    },
    "portainer.Edge": {
      "properties": {
        "AsyncMode": {
          "description": "Deprecated 2.18",
          "type": "boolean"
        },
        "CommandInterval": {
          "description": "The command list interval for edge agent - used in edge async mode (in seconds)",
          "type": "integer"
        },
        "PingInterval": {
          "description": "The ping interval for edge agent - used in edge async mode (in seconds)",
          "type": "integer"
        },
        "SnapshotInterval": {
          "description": "The snapshot interval for edge agent - used in edge async mode (in seconds)",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "portainer.GlobalDeploymentOptions": {
      "properties": {
        "hideStacksFunctionality": {
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "portainer.InternalAuthSettings": {
      "properties": {
        "RequiredPasswordLength": {
          "type": "integer"
        }
      },
      "type": "object"
    },
    "portainer.LDAPGroupSearchSettings": {
      "properties": {
        "GroupAttribute": {
          "description": "LDAP attribute which denotes the group membership",
          "type": "string"
        },
        "GroupBaseDN": {
          "description": "The distinguished name of the element from which the LDAP server will search for groups",
          "type": "string"
        },
        "GroupFilter": {
          "description": "The LDAP search filter used to select group elements, optional",
          "type": "string"
        }
      },
      "type": "object"
    },
    "portainer.LDAPSearchSettings": {
      "properties": {
        "BaseDN": {
          "description": "The distinguished name of the element from which the LDAP server will search for users",
          "type": "string"
        },
        "Filter": {
          "description": "Optional LDAP search filter used to select user elements",
          "type": "string"
        },
        "UserNameAttribute": {
          "description": "LDAP attribute which denotes the username",
          "type": "string"
        }
      },
      "type": "object"
    },
    "portainer.LDAPSettings": {
      "properties": {
        "AnonymousMode": {
          "description": "Enable this option if the server is configured for Anonymous access. When enabled, ReaderDN and Password will not be used",
          "type": "boolean"
        },
        "AutoCreateUsers": {
          "description": "Automatically provision users and assign them to matching LDAP group names",
          "type": "boolean"
        },
        "GroupSearchSettings": {
          "items": {
            "$ref": "#/$defs/portainer.LDAPGroupSearchSettings"
          },
          "type": "array"
        },
        "Password": {
          "description": "Password of the account that will be used to search users",
          "type": "string"
        },
        "ReaderDN": {
          "description": "Account that will be used to search for users",
          "type": "string"
        },
        "SearchSettings": {
          "items": {
            "$ref": "#/$defs/portainer.LDAPSearchSettings"
          },
          "type": "array"
        },
        "StartTLS": {
          "description": "Whether LDAP connection should use StartTLS",
          "type": "boolean"
        },
        "TLSConfig": {
          "$ref": "#/$defs/portainer.TLSConfiguration"
        },
        "URL": {
          "description": "URL or IP address of the LDAP server",
          "type": "string"
        }
      },
      "type": "object"
    },
    "portainer.OAuthSettings": {
      "properties": {
        "AccessTokenURI": {
          "type": "string"
        },
        "AuthStyle": {
          "$ref": "#/$defs/oauth2.AuthStyle"
        },
        "AuthorizationURI": {
          "type": "string"
        },
        "ClientID": {
          "type": "string"
        },
        "ClientSecret": {
          "type": "string"
        },
        "DefaultTeamID": {
          "type": "integer"
        },
        "KubeSecretKey": {
          "items": {
            "type": "integer"
          },
          "type": "array"
        },
        "LogoutURI": {
          "type": "string"
        },
        "OAuthAutoCreateUsers": {
          "type": "boolean"
        },
        "RedirectURI": {
          "type": "string"
        },
        "ResourceURI": {
          "type": "string"
        },
        "SSO": {
          "type": "boolean"
        },
        "Scopes": {
          "type": "string"
        },
        "UserIdentifier": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "portainer.OpenAMTConfiguration": {
      "properties": {
        "certFileContent": {
          "type": "string"
        },
        "certFileName": {
          "type": "string"
        },
        "certFilePassword": {
          "type": "string"
        },
        "domainName": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        },
        "mpsPassword": {
          "type": "string"
        },
        "mpsServer": {
          "type": "string"
        },
        "mpsToken": {
          "description": "retrieved from API",
          "type": "string"
        },
        "mpsUser": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "portainer.Pair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "portainer.TLSConfiguration": {
      "properties": {
        "TLS": {
          "description": "Use TLS",
          "type": "boolean"
        },
        "TLSCACert": {
          "description": "Path to the TLS CA certificate file",
          "type": "string"
        },
        "TLSCert": {
          "description": "Path to the TLS client certificate file",
          "type": "string"
        },
        "TLSKey": {
          "description": "Path to the TLS client key file",
          "type": "string"
        },
        "TLSSkipVerify": {
          "description": "Skip the verification of the server TLS certificate",
          "type": "boolean"
        }
      },
      "type": "object"
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • 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.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/portainer-portainer-settings"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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.