Amazon IoT Core Iot Core Certificate Providers API

The Iot Core Certificate Providers API from Amazon IoT Core — 2 operation(s) for iot core certificate providers.

Operations 5

POST /certificate-providers/{certificateProviderName} Create Certificate Provider #
DELETE /certificate-providers/{certificateProviderName} Delete Certificate Provider #
GET /certificate-providers/{certificateProviderName} Describe Certificate Provider #
PUT /certificate-providers/{certificateProviderName} Update Certificate Provider #
GET /certificate-providers List Certificate Providers #

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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-iot-core:amazon-iot-core-certificate-providers-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

amazon-iot-core-certificate-providers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: AWS IoT Certificate Providers API
  version: '2015-05-28'
  description: Generated from AWS's published Smithy model for AWS IoT. 5 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://iot.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
tags:
- name: Certificate Providers
paths:
  /certificate-providers/{certificateProviderName}:
    post:
      operationId: CreateCertificateProvider
      summary: Create Certificate Provider
      description: Creates an Amazon Web Services IoT Core certificate provider. You can use Amazon Web Services IoT Core certificate provider to customize how to sign a certificate signing request (CSR) in IoT fleet provisioning. For more information, see Customizing certificate signing using Amazon Web Services IoT Core certificate provider from Amazon Web Services IoT Core Developer Guide. Requires permission to access the CreateCertificateProvider action. After you create a certificate provider, the behavior of CreateCertificateFromCsr API for fleet provisioning will change and all API calls to CreateCertificateFromCsr will invoke the certificate provider to create the certificates. It can take up to a few minutes for this behavior to change after a certificate provider is created.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateCertificateProviderResponse'
        '500':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '400':
          description: InvalidRequestException; ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '410':
          description: LimitExceededException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LimitExceededException'
        '409':
          description: ResourceAlreadyExistsException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceAlreadyExistsException'
        '503':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
        '401':
          description: UnauthorizedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateCertificateProviderRequest'
      tags:
      - Certificate Providers
    delete:
      operationId: DeleteCertificateProvider
      summary: Delete Certificate Provider
      description: Deletes a certificate provider. Requires permission to access the DeleteCertificateProvider action. If you delete the certificate provider resource, the behavior of CreateCertificateFromCsr will resume, and IoT will create certificates signed by IoT from a certificate signing request (CSR).
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteCertificateProviderResponse'
        '409':
          description: DeleteConflictException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteConflictException'
        '500':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '400':
          description: InvalidRequestException; ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '404':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '503':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
        '401':
          description: UnauthorizedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteCertificateProviderRequest'
      tags:
      - Certificate Providers
    get:
      operationId: DescribeCertificateProvider
      summary: Describe Certificate Provider
      description: Describes a certificate provider. Requires permission to access the DescribeCertificateProvider action.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DescribeCertificateProviderResponse'
        '500':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '400':
          description: InvalidRequestException; ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '404':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '503':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
        '401':
          description: UnauthorizedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DescribeCertificateProviderRequest'
      tags:
      - Certificate Providers
    put:
      operationId: UpdateCertificateProvider
      summary: Update Certificate Provider
      description: Updates a certificate provider. Requires permission to access the UpdateCertificateProvider action.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateCertificateProviderResponse'
        '500':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '400':
          description: InvalidRequestException; ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '404':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '503':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
        '401':
          description: UnauthorizedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateCertificateProviderRequest'
      tags:
      - Certificate Providers
  /certificate-providers:
    get:
      operationId: ListCertificateProviders
      summary: List Certificate Providers
      description: Lists all your certificate providers in your Amazon Web Services account. Requires permission to access the ListCertificateProviders action.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCertificateProvidersResponse'
        '500':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '400':
          description: InvalidRequestException; ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '503':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
        '401':
          description: UnauthorizedException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListCertificateProvidersRequest'
      tags:
      - Certificate Providers
components:
  schemas:
    CertificateProviderSummary:
      type: object
      properties:
        certificateProviderName:
          type: string
          description: The name of the certificate provider.
        certificateProviderArn:
          type: string
          description: The ARN of the certificate provider.
    ListCertificateProvidersRequest:
      type: object
      properties:
        nextToken:
          type: string
          description: The token for the next set of results, or null if there are no more results.
        ascendingOrder:
          type: boolean
          description: Returns the list of certificate providers in ascending alphabetical order.
    InternalFailureException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
    DeleteCertificateProviderRequest:
      type: object
      properties:
        certificateProviderName:
          type: string
          description: The name of the certificate provider.
      required:
      - certificateProviderName
    InvalidRequestException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
    ServiceUnavailableException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
    UnauthorizedException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
    UpdateCertificateProviderResponse:
      type: object
      properties:
        certificateProviderName:
          type: string
          description: The name of the certificate provider.
        certificateProviderArn:
          type: string
          description: The ARN of the certificate provider.
    DescribeCertificateProviderResponse:
      type: object
      properties:
        certificateProviderName:
          type: string
          description: The name of the certificate provider.
        certificateProviderArn:
          type: string
          description: The ARN of the certificate provider.
        lambdaFunctionArn:
          type: string
          description: The Lambda function ARN that's associated with the certificate provider.
        accountDefaultForOperations:
          type: array
          items:
            type: string
            enum:
            - CreateCertificateFromCsr
          description: 'A list of the operations that the certificate provider will use to generate certificates. Valid value: CreateCertificateFromCsr.'
        creationDate:
          type: string
          format: date-time
          description: The date-time string that indicates when the certificate provider was created.
        lastModifiedDate:
          type: string
          format: date-time
          description: The date-time string that indicates when the certificate provider was last updated.
    Tag:
      type: object
      properties:
        Key:
          type: string
          description: The tag's key.
        Value:
          type: string
          description: The tag's value.
      required:
      - Key
    CreateCertificateProviderResponse:
      type: object
      properties:
        certificateProviderName:
          type: string
          description: The name of the certificate provider.
        certificateProviderArn:
          type: string
          description: The ARN of the certificate provider.
    ResourceNotFoundException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
    DeleteConflictException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
    DeleteCertificateProviderResponse:
      type: object
      properties: {}
    LimitExceededException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
    CreateCertificateProviderRequest:
      type: object
      properties:
        certificateProviderName:
          type: string
          description: The name of the certificate provider.
        lambdaFunctionArn:
          type: string
          description: The ARN of the Lambda function that defines the authentication logic.
        accountDefaultForOperations:
          type: array
          items:
            type: string
            enum:
            - CreateCertificateFromCsr
          description: 'A list of the operations that the certificate provider will use to generate certificates. Valid value: CreateCertificateFromCsr.'
        clientToken:
          type: string
          description: A string that you can optionally pass in the CreateCertificateProvider request to make sure the request is idempotent.
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          description: Metadata which can be used to manage the certificate provider.
      required:
      - certificateProviderName
      - lambdaFunctionArn
      - accountDefaultForOperations
    DescribeCertificateProviderRequest:
      type: object
      properties:
        certificateProviderName:
          type: string
          description: The name of the certificate provider.
      required:
      - certificateProviderName
    UpdateCertificateProviderRequest:
      type: object
      properties:
        certificateProviderName:
          type: string
          description: The name of the certificate provider.
        lambdaFunctionArn:
          type: string
          description: The Lambda function ARN that's associated with the certificate provider.
        accountDefaultForOperations:
          type: array
          items:
            type: string
            enum:
            - CreateCertificateFromCsr
          description: 'A list of the operations that the certificate provider will use to generate certificates. Valid value: CreateCertificateFromCsr.'
      required:
      - certificateProviderName
    ListCertificateProvidersResponse:
      type: object
      properties:
        certificateProviders:
          type: array
          items:
            $ref: '#/components/schemas/CertificateProviderSummary'
          description: The list of certificate providers in your Amazon Web Services account.
        nextToken:
          type: string
          description: The token for the next set of results, or null if there are no more results.
    ResourceAlreadyExistsException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
        resourceId:
          type: string
          description: The ID of the resource that caused the exception.
        resourceArn:
          type: string
          description: The ARN of the resource that caused the exception.
  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: iot
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/iot/service/2015-05-28/iot-2015-05-28.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)