Amazon IoT Core Cacertificate API

The Cacertificate API from Amazon IoT Core — 2 operation(s) for cacertificate.

GitHub OpenAPI
Business capability
Identity & Access Management BC-620.20

Operations 4

DELETE /cacertificate/{certificateId} Delete CACertificate #
GET /cacertificate/{certificateId} Describe CACertificate #
PUT /cacertificate/{certificateId} Update CACertificate #
POST /cacertificate Register CACertificate #

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-cacertificate-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-cacertificate-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: AWS IoT Cacertificate API
  version: '2015-05-28'
  description: Generated from AWS's published Smithy model for AWS IoT. 4 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: []
paths:
  /cacertificate/{certificateId}:
    delete:
      operationId: DeleteCACertificate
      summary: Delete CACertificate
      description: Deletes a registered CA certificate. Requires permission to access the DeleteCACertificate action.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteCACertificateResponse'
        '406':
          description: CertificateStateException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CertificateStateException'
        '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/DeleteCACertificateRequest'
      tags:
      - Cacertificate
    get:
      operationId: DescribeCACertificate
      summary: Describe CACertificate
      description: Describes a registered CA certificate. Requires permission to access the DescribeCACertificate action.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DescribeCACertificateResponse'
        '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/DescribeCACertificateRequest'
      tags:
      - Cacertificate
    put:
      operationId: UpdateCACertificate
      summary: Update CACertificate
      description: Updates a registered CA certificate. Requires permission to access the UpdateCACertificate action.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: string
        '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/UpdateCACertificateRequest'
      tags:
      - Cacertificate
  /cacertificate:
    post:
      operationId: RegisterCACertificate
      summary: Register CACertificate
      description: Registers a CA certificate with Amazon Web Services IoT Core. There is no limit to the number of CA certificates
        you can register in your Amazon Web Services account. You can register up to 10 CA certificates with the same CA subject
        field per Amazon Web Services account. Requires permission to access the RegisterCACertificate action.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegisterCACertificateResponse'
        '400':
          description: CertificateValidationException; InvalidRequestException; RegistrationCodeValidationException; ThrottlingException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CertificateValidationException'
        '500':
          description: InternalFailureException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalFailureException'
        '410':
          description: LimitExceededException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LimitExceededException'
        '409':
          description: ResourceAlreadyExistsException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceAlreadyExistsException'
        '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/RegisterCACertificateRequest'
      tags:
      - Cacertificate
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: iot
  schemas:
    CACertificateDescription:
      type: object
      properties:
        certificateArn:
          type: string
          description: The CA certificate ARN.
        certificateId:
          type: string
          description: The CA certificate ID.
        status:
          type: string
          enum:
          - ACTIVE
          - INACTIVE
          description: The status of a CA certificate.
        certificatePem:
          type: string
          description: The CA certificate data, in PEM format.
        ownedBy:
          type: string
          description: The owner of the CA certificate.
        creationDate:
          type: string
          format: date-time
          description: The date the CA certificate was created.
        autoRegistrationStatus:
          type: string
          enum:
          - ENABLE
          - DISABLE
          description: Whether the CA certificate configured for auto registration of device certificates. Valid values are
            "ENABLE" and "DISABLE"
        lastModifiedDate:
          type: string
          format: date-time
          description: The date the CA certificate was last modified.
        customerVersion:
          type: integer
          description: The customer version of the CA certificate.
        generationId:
          type: string
          description: The generation ID of the CA certificate.
        validity:
          $ref: '#/components/schemas/CertificateValidity'
        certificateMode:
          type: string
          enum:
          - DEFAULT
          - SNI_ONLY
          description: The mode of the CA. All the device certificates that are registered using this CA will be registered
            in the same mode as the CA. For more information about certificate mode for device certificates, see certificate
            mode.
    CertificateStateException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
    CertificateValidationException:
      type: object
      properties:
        message:
          type: string
          description: Additional information about the exception.
    CertificateValidity:
      type: object
      properties:
        notBefore:
          type: string
          format: date-time
          description: The certificate is not valid before this date.
        notAfter:
          type: string
          format: date-time
          description: The certificate is not valid after this date.
    DeleteCACertificateRequest:
      type: object
      properties:
        certificateId:
          type: string
          description: The ID of the certificate to delete. (The last part of the certificate ARN contains the certificate
            ID.)
      required:
      - certificateId
    DeleteCACertificateResponse:
      type: object
      properties: {}
    DescribeCACertificateRequest:
      type: object
      properties:
        certificateId:
          type: string
          description: The CA certificate identifier.
      required:
      - certificateId
    DescribeCACertificateResponse:
      type: object
      properties:
        certificateDescription:
          $ref: '#/components/schemas/CACertificateDescription'
        registrationConfig:
          $ref: '#/components/schemas/RegistrationConfig'
    InternalFailureException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
    InvalidRequestException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
    LimitExceededException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
    RegisterCACertificateRequest:
      type: object
      properties:
        caCertificate:
          type: string
          description: The CA certificate.
        verificationCertificate:
          type: string
          description: The private key verification certificate. If certificateMode is SNI_ONLY, the verificationCertificate
            field must be empty. If certificateMode is DEFAULT or not provided, the verificationCertificate field must not
            be empty.
        setAsActive:
          type: boolean
          description: 'A boolean value that specifies if the CA certificate is set to active. Valid values: ACTIVE | INACTIVE'
        allowAutoRegistration:
          type: boolean
          description: Allows this CA certificate to be used for auto registration of device certificates.
        registrationConfig:
          $ref: '#/components/schemas/RegistrationConfig'
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          description: 'Metadata which can be used to manage the CA certificate. For URI Request parameters use format: ...key1=value1&key2=value2...
            For the CLI command-line parameter use format: &&tags "key1=value1&key2=value2..." For the cli-input-json file
            use format: "tags": "key1=value1&key2=value2..."'
        certificateMode:
          type: string
          enum:
          - DEFAULT
          - SNI_ONLY
          description: Describes the certificate mode in which the Certificate Authority (CA) will be registered. If the verificationCertificate
            field is not provided, set certificateMode to be SNI_ONLY. If the verificationCertificate field is provided, set
            certificateMode to be DEFAULT. When certificateMode is not provided, it defaults to DEFAULT. All the device certificates
            that are registered using this CA will be registered in the same certificate mode as the CA. For more information
            about certificate mode for device certificates, see certificate mode.
      required:
      - caCertificate
    RegisterCACertificateResponse:
      type: object
      properties:
        certificateArn:
          type: string
          description: The CA certificate ARN.
        certificateId:
          type: string
          description: The CA certificate identifier.
    RegistrationConfig:
      type: object
      properties:
        templateBody:
          type: string
          description: The template body.
        roleArn:
          type: string
          description: The ARN of the role.
        templateName:
          type: string
          description: The name of the provisioning template.
    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.
    ResourceNotFoundException:
      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.
    Tag:
      type: object
      properties:
        Key:
          type: string
          description: The tag's key.
        Value:
          type: string
          description: The tag's value.
      required:
      - Key
    UnauthorizedException:
      type: object
      properties:
        message:
          type: string
          description: The message for the exception.
    UpdateCACertificateRequest:
      type: object
      properties:
        certificateId:
          type: string
          description: The CA certificate identifier.
        newStatus:
          type: string
          enum:
          - ACTIVE
          - INACTIVE
          description: 'The updated status of the CA certificate. Note: The status value REGISTER_INACTIVE is deprecated and
            should not be used.'
        newAutoRegistrationStatus:
          type: string
          enum:
          - ENABLE
          - DISABLE
          description: 'The new value for the auto registration status. Valid values are: "ENABLE" or "DISABLE".'
        registrationConfig:
          $ref: '#/components/schemas/RegistrationConfig'
        removeAutoRegistration:
          type: boolean
          description: If true, removes auto registration.
      required:
      - certificateId
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/3cd98287b471c106254abd89279cc87308d38bfd/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)