Work with this as data
Every API 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 apis
7 MCP tools reach this
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.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-eks:amazon-eks-add-ons-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.
OpenAPI Specification
openapi: 3.1.0
info:
title: Amazon Elastic Kubernetes Service Add Ons API
version: '2017-11-01'
description: Generated from AWS's published Smithy model for Amazon Elastic Kubernetes Service. 6 operation(s).
contact:
name: Amazon Web Services
url: https://aws.amazon.com/contact-us/
license:
name: Apache 2.0
identifier: Apache-2.0
url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://eks.{region}.amazonaws.com
variables:
region:
default: us-east-1
security:
- sigv4: []
paths:
/clusters/{clusterName}/addons:
post:
operationId: CreateAddon
summary: Create Addon
description: Creates an Amazon EKS add-on. Amazon EKS add-ons help to automate the provisioning and lifecycle management
of common operational software for Amazon EKS clusters. For more information, see Amazon EKS add-ons in the Amazon
EKS User Guide.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CreateAddonResponse'
'400':
description: ClientException; InvalidParameterException; InvalidRequestException
content:
application/json:
schema:
$ref: '#/components/schemas/ClientException'
'409':
description: ResourceInUseException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceInUseException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'500':
description: ServerException
content:
application/json:
schema:
$ref: '#/components/schemas/ServerException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateAddonRequest'
tags:
- Add Ons
get:
operationId: ListAddons
summary: List Addons
description: Lists the installed add-ons.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ListAddonsResponse'
'400':
description: ClientException; InvalidParameterException; InvalidRequestException
content:
application/json:
schema:
$ref: '#/components/schemas/ClientException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'500':
description: ServerException
content:
application/json:
schema:
$ref: '#/components/schemas/ServerException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ListAddonsRequest'
tags:
- Add Ons
/clusters/{clusterName}/addons/{addonName}:
delete:
operationId: DeleteAddon
summary: Delete Addon
description: Deletes an Amazon EKS add-on. When you remove an add-on, it's deleted from the cluster. You can always
manually start an add-on on the cluster using the Kubernetes API.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteAddonResponse'
'400':
description: ClientException; InvalidParameterException; InvalidRequestException
content:
application/json:
schema:
$ref: '#/components/schemas/ClientException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'500':
description: ServerException
content:
application/json:
schema:
$ref: '#/components/schemas/ServerException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteAddonRequest'
tags:
- Add Ons
get:
operationId: DescribeAddon
summary: Describe Addon
description: Describes an Amazon EKS add-on.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeAddonResponse'
'400':
description: ClientException; InvalidParameterException; InvalidRequestException
content:
application/json:
schema:
$ref: '#/components/schemas/ClientException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'500':
description: ServerException
content:
application/json:
schema:
$ref: '#/components/schemas/ServerException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeAddonRequest'
tags:
- Add Ons
/addons/configuration-schemas:
get:
operationId: DescribeAddonConfiguration
summary: Describe Addon Configuration
description: Returns configuration options.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeAddonConfigurationResponse'
'400':
description: InvalidParameterException
content:
application/json:
schema:
$ref: '#/components/schemas/InvalidParameterException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'500':
description: ServerException
content:
application/json:
schema:
$ref: '#/components/schemas/ServerException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeAddonConfigurationRequest'
tags:
- Add Ons
/addons/supported-versions:
get:
operationId: DescribeAddonVersions
summary: Describe Addon Versions
description: Describes the versions for an add-on. Information such as the Kubernetes versions that you can use the
add-on with, the owner, publisher, and the type of the add-on are returned.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeAddonVersionsResponse'
'400':
description: InvalidParameterException
content:
application/json:
schema:
$ref: '#/components/schemas/InvalidParameterException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'500':
description: ServerException
content:
application/json:
schema:
$ref: '#/components/schemas/ServerException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeAddonVersionsRequest'
tags:
- Add Ons
components:
securitySchemes:
sigv4:
type: apiKey
in: header
name: Authorization
description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical
request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
x-aws-sigv4:
signingName: eks
schemas:
Addon:
type: object
properties:
addonName:
type: string
description: The name of the add-on.
clusterName:
type: string
description: The name of your cluster.
status:
type: string
enum:
- CREATING
- ACTIVE
- CREATE_FAILED
- UPDATING
- DELETING
- DELETE_FAILED
- DEGRADED
- UPDATE_FAILED
description: The status of the add-on.
addonVersion:
type: string
description: The version of the add-on.
health:
$ref: '#/components/schemas/AddonHealth'
addonArn:
type: string
description: The Amazon Resource Name (ARN) of the add-on.
createdAt:
type: string
format: date-time
description: The Unix epoch timestamp at object creation.
modifiedAt:
type: string
format: date-time
description: The Unix epoch timestamp for the last modification to the object.
serviceAccountRoleArn:
type: string
description: The Amazon Resource Name (ARN) of the IAM role that's bound to the Kubernetes ServiceAccount object
that the add-on uses.
tags:
type: object
additionalProperties:
type: string
description: Metadata that assists with categorization and organization. Each tag consists of a key and an optional
value. You define both. Tags don't propagate to any other cluster or Amazon Web Services resources.
publisher:
type: string
description: The publisher of the add-on.
owner:
type: string
description: The owner of the add-on.
marketplaceInformation:
$ref: '#/components/schemas/MarketplaceInformation'
configurationValues:
type: string
description: The configuration values that you provided.
podIdentityAssociations:
type: array
items:
type: string
description: An array of EKS Pod Identity associations owned by the add-on. Each association maps a role to a service
account in a namespace in the cluster. For more information, see Attach an IAM Role to an Amazon EKS add-on using
EKS Pod Identity in the Amazon EKS User Guide.
namespaceConfig:
$ref: '#/components/schemas/AddonNamespaceConfigResponse'
AddonHealth:
type: object
properties:
issues:
type: array
items:
$ref: '#/components/schemas/AddonIssue'
description: An object representing the health issues for an add-on.
AddonInfo:
type: object
properties:
addonName:
type: string
description: The name of the add-on.
type:
type: string
description: The type of the add-on.
addonVersions:
type: array
items:
$ref: '#/components/schemas/AddonVersionInfo'
description: An object representing information about available add-on versions and compatible Kubernetes versions.
publisher:
type: string
description: The publisher of the add-on.
owner:
type: string
description: The owner of the add-on.
marketplaceInformation:
$ref: '#/components/schemas/MarketplaceInformation'
defaultNamespace:
type: string
description: The default Kubernetes namespace where this addon is typically installed if no custom namespace is
specified.
AddonIssue:
type: object
properties:
code:
type: string
enum:
- AccessDenied
- InternalFailure
- ClusterUnreachable
- InsufficientNumberOfReplicas
- ConfigurationConflict
- AdmissionRequestDenied
- UnsupportedAddonModification
- K8sResourceNotFound
- AddonSubscriptionNeeded
- AddonPermissionFailure
description: A code that describes the type of issue.
message:
type: string
description: A message that provides details about the issue and what might cause it.
resourceIds:
type: array
items:
type: string
description: The resource IDs of the issue.
AddonNamespaceConfigRequest:
type: object
properties:
namespace:
type: string
description: The name of the Kubernetes namespace to install the addon in. Must be a valid RFC 1123 DNS label.
AddonNamespaceConfigResponse:
type: object
properties:
namespace:
type: string
description: The name of the Kubernetes namespace where the addon is installed.
AddonPodIdentityAssociations:
type: object
properties:
serviceAccount:
type: string
description: The name of a Kubernetes Service Account.
roleArn:
type: string
description: The ARN of an IAM Role.
required:
- serviceAccount
- roleArn
AddonPodIdentityConfiguration:
type: object
properties:
serviceAccount:
type: string
description: The Kubernetes Service Account name used by the add-on.
recommendedManagedPolicies:
type: array
items:
type: string
description: A suggested IAM Policy for the add-on.
AddonVersionInfo:
type: object
properties:
addonVersion:
type: string
description: The version of the add-on.
architecture:
type: array
items:
type: string
description: The architectures that the version supports.
computeTypes:
type: array
items:
type: string
description: Indicates the compute type of the add-on version.
compatibilities:
type: array
items:
$ref: '#/components/schemas/Compatibility'
description: An object representing the compatibilities of a version.
requiresConfiguration:
type: boolean
description: Whether the add-on requires configuration.
requiresIamPermissions:
type: boolean
description: Indicates if the add-on requires IAM Permissions to operate, such as networking permissions.
ClientException:
type: object
properties:
clusterName:
type: string
description: The Amazon EKS cluster associated with the exception.
nodegroupName:
type: string
description: The Amazon EKS managed node group associated with the exception.
addonName:
type: string
description: The Amazon EKS add-on name associated with the exception.
subscriptionId:
type: string
description: The Amazon EKS subscription ID with the exception.
message:
type: string
description: These errors are usually caused by a client action. Actions can include using an action or resource
on behalf of an IAM principal that doesn't have permissions to use the action or resource or specifying an identifier
that is not valid.
Compatibility:
type: object
properties:
clusterVersion:
type: string
description: The supported Kubernetes version of the cluster.
platformVersions:
type: array
items:
type: string
description: The supported compute platform.
defaultVersion:
type: boolean
description: The supported default version.
CreateAddonRequest:
type: object
properties:
clusterName:
type: string
description: The name of your cluster.
addonName:
type: string
description: The name of the add-on. The name must match one of the names returned by DescribeAddonVersions.
addonVersion:
type: string
description: The version of the add-on. The version must match one of the versions returned by DescribeAddonVersions
.
serviceAccountRoleArn:
type: string
description: The Amazon Resource Name (ARN) of an existing IAM role to bind to the add-on's service account. The
role must be assigned the IAM permissions required by the add-on. If you don't specify an existing IAM role, then
the add-on uses the permissions assigned to the node IAM role. For more information, see Amazon EKS node IAM role
in the Amazon EKS User Guide. To specify an existing IAM role, you must have an IAM OpenID Connect (OIDC) provider
created for your cluster. For more information, see Enabling IAM roles for service accounts on your cluster in
the Amazon EKS User Guide.
resolveConflicts:
type: string
enum:
- OVERWRITE
- NONE
- PRESERVE
description: 'How to resolve field value conflicts for an Amazon EKS add-on. Conflicts are handled based on the
value you choose: None – If the self-managed version of the add-on is installed on your cluster, Amazon EKS doesn''t
change the value. Creation of the add-on might fail. Overwrite – If the self-managed version of the add-on is
installed on your cluster and the Amazon EKS default value is different than the existing value, Amazon EKS changes
the value to the Amazon EKS default value. Preserve – This is similar to the NONE option. If the self-managed
version of the add-on is installed on your cluster'
clientRequestToken:
type: string
description: A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
tags:
type: object
additionalProperties:
type: string
description: Metadata that assists with categorization and organization. Each tag consists of a key and an optional
value. You define both. Tags don't propagate to any other cluster or Amazon Web Services resources.
configurationValues:
type: string
description: The set of configuration values for the add-on that's created. The values that you provide are validated
against the schema returned by DescribeAddonConfiguration.
podIdentityAssociations:
type: array
items:
$ref: '#/components/schemas/AddonPodIdentityAssociations'
description: An array of EKS Pod Identity associations to be created. Each association maps a Kubernetes service
account to an IAM role. For more information, see Attach an IAM Role to an Amazon EKS add-on using EKS Pod Identity
in the Amazon EKS User Guide.
namespaceConfig:
$ref: '#/components/schemas/AddonNamespaceConfigRequest'
required:
- clusterName
- addonName
CreateAddonResponse:
type: object
properties:
addon:
$ref: '#/components/schemas/Addon'
DeleteAddonRequest:
type: object
properties:
clusterName:
type: string
description: The name of your cluster.
addonName:
type: string
description: The name of the add-on. The name must match one of the names returned by ListAddons .
preserve:
type: boolean
description: Specifying this option preserves the add-on software on your cluster but Amazon EKS stops managing
any settings for the add-on. If an IAM account is associated with the add-on, it isn't removed.
required:
- clusterName
- addonName
DeleteAddonResponse:
type: object
properties:
addon:
$ref: '#/components/schemas/Addon'
DescribeAddonConfigurationRequest:
type: object
properties:
addonName:
type: string
description: The name of the add-on. The name must match one of the names returned by DescribeAddonVersions.
addonVersion:
type: string
description: The version of the add-on. The version must match one of the versions returned by DescribeAddonVersions
.
required:
- addonName
- addonVersion
DescribeAddonConfigurationResponse:
type: object
properties:
addonName:
type: string
description: The name of the add-on.
addonVersion:
type: string
description: The version of the add-on. The version must match one of the versions returned by DescribeAddonVersions
.
configurationSchema:
type: string
description: A JSON schema that's used to validate the configuration values you provide when an add-on is created
or updated.
podIdentityConfiguration:
type: array
items:
$ref: '#/components/schemas/AddonPodIdentityConfiguration'
description: The Kubernetes service account name used by the add-on, and any suggested IAM policies. Use this information
to create an IAM Role for the add-on.
DescribeAddonRequest:
type: object
properties:
clusterName:
type: string
description: The name of your cluster.
addonName:
type: string
description: The name of the add-on. The name must match one of the names returned by ListAddons .
required:
- clusterName
- addonName
DescribeAddonResponse:
type: object
properties:
addon:
$ref: '#/components/schemas/Addon'
DescribeAddonVersionsRequest:
type: object
properties:
kubernetesVersion:
type: string
description: The Kubernetes versions that you can use the add-on with.
maxResults:
type: integer
description: The maximum number of results, returned in paginated output. You receive maxResults in a single page,
along with a nextToken response element. You can see the remaining results of the initial request by sending another
request with the returned nextToken value. This value can be between 1 and 100. If you don't use this parameter,
100 results and a nextToken value, if applicable, are returned.
nextToken:
type: string
description: The nextToken value returned from a previous paginated request, where maxResults was used and the results
exceeded the value of that parameter. Pagination continues from the end of the previous results that returned
the nextToken value. This value is null when there are no more results to return. This token should be treated
as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic
purposes.
addonName:
type: string
description: The name of the add-on. The name must match one of the names returned by ListAddons .
types:
type: array
items:
type: string
description: The type of the add-on. For valid types, don't specify a value for this property.
publishers:
type: array
items:
type: string
description: The publisher of the add-on. For valid publishers, don't specify a value for this property.
owners:
type: array
items:
type: string
description: The owner of the add-on. For valid owners, don't specify a value for this property.
DescribeAddonVersionsResponse:
type: object
properties:
addons:
type: array
items:
$ref: '#/components/schemas/AddonInfo'
description: The list of available versions with Kubernetes version compatibility and other properties.
nextToken:
type: string
description: The nextToken value to include in a future DescribeAddonVersions request. When the results of a DescribeAddonVersions
request exceed maxResults, you can use this value to retrieve the next page of results. This value is null when
there are no more results to return. This token should be treated as an opaque identifier that is used only to
retrieve the next items in a list and not for other programmatic purposes.
InvalidParameterException:
type: object
properties:
clusterName:
type: string
description: The Amazon EKS cluster associated with the exception.
nodegroupName:
type: string
description: The Amazon EKS managed node group associated with the exception.
fargateProfileName:
type: string
description: The Fargate profile associated with the exception.
addonName:
type: string
description: The specified parameter for the add-on name is invalid. Review the available parameters for the API
request
subscriptionId:
type: string
description: The Amazon EKS subscription ID with the exception.
message:
type: string
description: The specified parameter is invalid. Review the available parameters for the API request.
ListAddonsRequest:
type: object
properties:
clusterName:
type: string
description: The name of your cluster.
maxResults:
type: integer
description: The maximum number of results, returned in paginated output. You receive maxResults in a single page,
along with a nextToken response element. You can see the remaining results of the initial request by sending another
request with the returned nextToken value. This value can be between 1 and 100. If you don't use this parameter,
100 results and a nextToken value, if applicable, are returned.
nextToken:
type: string
description: The nextToken value returned from a previous paginated request, where maxResults was used and the results
exceeded the value of that parameter. Pagination continues from the end of the previous results that returned
the nextToken value. This value is null when there are no more results to return. This token should be treated
as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic
purposes.
required:
- clusterName
ListAddonsResponse:
type: object
properties:
addons:
type: array
items:
type: string
description: A list of installed add-ons.
nextToken:
type: string
description: The nextToken value to include in a future ListAddons request. When the results of a ListAddons request
exceed maxResults, you can use this value to retrieve the next page of results. This value is null when there
are no more results to return. This token should be treated as an opaque identifier that is used only to retrieve
the next items in a list and not for other programmatic purposes.
MarketplaceInformation:
type: object
properties:
productId:
type: string
description: The product ID from the Amazon Web Services Marketplace.
productUrl:
type: string
description: The product URL from the Amazon Web Services Marketplace.
ResourceInUseException:
type: object
properties:
clusterName:
type: string
description: The Amazon EKS cluster associated with the exception.
nodegroupName:
type: string
description: The Amazon EKS managed node group associated with the exception.
addonName:
type: string
description: The specified add-on name is in use.
message:
type: string
description: The Amazon EKS message associated with the exception.
ResourceNotFoundException:
type: object
properties:
clusterName:
type: string
description: The Amazon EKS cluster associated with the exception.
nodegroupName:
type: string
description: The Amazon EKS managed node group associated with the exception.
fargateProfileName:
type: string
description: The Fargate profile associated with the exception.
addonName:
type: string
description: The Amazon EKS add-on name associated with the exception.
subscriptionId:
type: string
description: The Amazon EKS subscription ID with the exception.
message:
type: string
description: The Amazon EKS message associated with the exception.
ServerException:
type: object
properties:
clusterName:
type: string
description: The Amazon EKS cluster associated with the exception.
nodegroupName:
type: string
description: The Amazon EKS managed node group associated with the exception.
addonName:
type: string
description: The Amazon EKS add-on name associated with the exception.
subscriptionId:
type: string
description: The Amazon EKS subscription ID with the exception.
message:
type: string
description: These errors are usually caused by a server-side issue.
x-provenance:
method: harvested
publisher: Amazon Web Services
source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/eks/service/2017-11-01/eks-2017-11-01.json
note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)