Amazon IoT Core Iot Core Commands API
The Iot Core Commands API from Amazon IoT Core — 2 operation(s) for iot core commands.
The Iot Core Commands API from Amazon IoT Core — 2 operation(s) for iot core commands.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/amazon-iot-core:amazon-iot-core-commands-api"
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.
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: 3.2.0
info:
title: AWS IoT Commands 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: Commands
paths:
/commands/{commandId}:
put:
operationId: CreateCommand
summary: Create Command
description: Creates a command. A command contains reusable configurations that can be applied before they are sent to the devices.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CreateCommandResponse'
'409':
description: ConflictException
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'402':
description: ServiceQuotaExceededException
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceQuotaExceededException'
'400':
description: ThrottlingException; ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateCommandRequest'
tags:
- Commands
delete:
operationId: DeleteCommand
summary: Delete Command
description: Delete a command resource.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteCommandResponse'
'409':
description: ConflictException
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'400':
description: ThrottlingException; ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteCommandRequest'
tags:
- Commands
get:
operationId: GetCommand
summary: Get Command
description: Gets information about the specified command.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/GetCommandResponse'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'400':
description: ThrottlingException; ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/GetCommandRequest'
tags:
- Commands
patch:
operationId: UpdateCommand
summary: Update Command
description: Update information about a command or mark a command for deprecation.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateCommandResponse'
'409':
description: ConflictException
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictException'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'404':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'400':
description: ThrottlingException; ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateCommandRequest'
tags:
- Commands
/commands:
get:
operationId: ListCommands
summary: List Commands
description: List all commands in your account.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ListCommandsResponse'
'500':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'400':
description: ThrottlingException; ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ListCommandsRequest'
tags:
- Commands
components:
schemas:
DeleteCommandResponse:
type: object
properties:
statusCode:
type: integer
description: The status code for the command deletion request. The status code is in the 200 range for a successful request. If the command hasn't been deprecated, or has been deprecated for a duration that is shorter than the maximum time out duration of 12 hours, when calling the DeleteCommand request, the deletion will be scheduled and a 202 status code will be returned. While the command is being deleted, it will be in a pendingDeletion state. Once the time out duration has been reached, the command will be permanently removed from your account. If the command has been deprecated for a duration that is
GetCommandRequest:
type: object
properties:
commandId:
type: string
description: The unique identifier of the command for which you want to retrieve information.
required:
- commandId
ListCommandsResponse:
type: object
properties:
commands:
type: array
items:
$ref: '#/components/schemas/CommandSummary'
description: The list of commands.
nextToken:
type: string
description: The token to use to get the next set of results, or null if there are no additional results.
CommandParameter:
type: object
properties:
name:
type: string
description: The name of a specific parameter used in a command and command execution.
type:
type: string
enum:
- STRING
- INTEGER
- DOUBLE
- LONG
- UNSIGNEDLONG
- BOOLEAN
- BINARY
description: The type of the command parameter.
value:
$ref: '#/components/schemas/CommandParameterValue'
defaultValue:
$ref: '#/components/schemas/CommandParameterValue'
valueConditions:
type: array
items:
$ref: '#/components/schemas/CommandParameterValueCondition'
description: The list of conditions that a command parameter value must satisfy to create a command execution.
description:
type: string
description: The description of the command parameter.
required:
- name
AwsJsonSubstitutionCommandPreprocessorConfig:
type: object
properties:
outputFormat:
type: string
enum:
- JSON
- CBOR
description: Converts the command preprocessor result to the format defined by this parameter, before sending it to the device.
required:
- outputFormat
CommandPreprocessor:
type: object
properties:
awsJsonSubstitution:
$ref: '#/components/schemas/AwsJsonSubstitutionCommandPreprocessorConfig'
UpdateCommandRequest:
type: object
properties:
commandId:
type: string
description: The unique identifier of the command to be updated.
displayName:
type: string
description: The new user-friendly name to use in the console for the command.
description:
type: string
description: A short text description of the command.
deprecated:
type: boolean
description: A boolean that you can use to specify whether to deprecate a command.
required:
- commandId
Tag:
type: object
properties:
Key:
type: string
description: The tag's key.
Value:
type: string
description: The tag's value.
required:
- Key
GetCommandResponse:
type: object
properties:
commandId:
type: string
description: The unique identifier of the command.
commandArn:
type: string
description: The Amazon Resource Number (ARN) of the command. For example, arn:aws:iot:::command/
namespace:
type: string
enum:
- AWS-IoT
- AWS-IoT-FleetWise
description: The namespace of the command.
displayName:
type: string
description: The user-friendly name in the console for the command.
description:
type: string
description: A short text description of the command.
mandatoryParameters:
type: array
items:
$ref: '#/components/schemas/CommandParameter'
description: A list of parameters for the command created.
payload:
$ref: '#/components/schemas/CommandPayload'
payloadTemplate:
type: string
description: The payload template for the dynamic command.
preprocessor:
$ref: '#/components/schemas/CommandPreprocessor'
roleArn:
type: string
description: The IAM role that you provided when creating the command with AWS-IoT-FleetWise as the namespace.
createdAt:
type: string
format: date-time
description: The timestamp, when the command was created.
lastUpdatedAt:
type: string
format: date-time
description: The timestamp, when the command was last updated.
deprecated:
type: boolean
description: Indicates whether the command has been deprecated.
pendingDeletion:
type: boolean
description: Indicates whether the command is being deleted.
CreateCommandResponse:
type: object
properties:
commandId:
type: string
description: The unique identifier for the command.
commandArn:
type: string
description: The Amazon Resource Number (ARN) of the command. For example, arn:aws:iot:::command/
ListCommandsRequest:
type: object
properties:
maxResults:
type: integer
description: The maximum number of results to return in this operation. By default, the API returns up to a maximum of 25 results. You can override this default value to return up to a maximum of 100 results for this operation.
nextToken:
type: string
description: To retrieve the next set of results, the nextToken value from a previous response; otherwise null to receive the first set of results.
namespace:
type: string
enum:
- AWS-IoT
- AWS-IoT-FleetWise
description: The namespace of the command. By default, the API returns all commands that have been created for both AWS-IoT and AWS-IoT-FleetWise namespaces. You can override this default value if you want to return all commands that have been created only for a specific namespace.
commandParameterName:
type: string
description: A filter that can be used to display the list of commands that have a specific command parameter name.
sortOrder:
type: string
enum:
- ASCENDING
- DESCENDING
description: Specify whether to list the commands that you have created in the ascending or descending order. By default, the API returns all commands in the descending order based on the time that they were created.
ThrottlingException:
type: object
properties:
message:
type: string
description: The message for the exception.
ResourceNotFoundException:
type: object
properties:
message:
type: string
description: The message for the exception.
CommandParameterValueNumberRange:
type: object
properties:
min:
type: string
description: The minimum value of a numerical range of a command parameter value.
max:
type: string
description: The maximum value of a numerical range of a command parameter value.
required:
- min
- max
ConflictException:
type: object
properties:
message:
type: string
resourceId:
type: string
description: A resource with the same name already exists.
CommandParameterValueComparisonOperand:
type: object
properties:
number:
type: string
description: An operand of number value type, defined as a string.
numbers:
type: array
items:
type: string
description: A List of operands of numerical value type, defined as strings.
string:
type: string
description: An operand of string value type.
strings:
type: array
items:
type: string
description: A List of operands of string value type.
numberRange:
$ref: '#/components/schemas/CommandParameterValueNumberRange'
CommandParameterValue:
type: object
properties:
S:
type: string
description: 'An attribute of type String. For example: "S": "Hello"'
B:
type: boolean
description: 'An attribute of type Boolean. For example: "BOOL": true'
I:
type: integer
description: An attribute of type Integer (Thirty-Two Bits).
L:
type: integer
description: An attribute of type Long.
D:
type: number
description: An attribute of type Double (Sixty-Four Bits).
BIN:
type: string
format: byte
description: 'An attribute of type Binary. For example: "B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"'
UL:
type: string
description: An attribute of type unsigned long.
CreateCommandRequest:
type: object
properties:
commandId:
type: string
description: A unique identifier for the command. We recommend using UUID. Alpha-numeric characters, hyphens, and underscores are valid for use here.
namespace:
type: string
enum:
- AWS-IoT
- AWS-IoT-FleetWise
description: The namespace of the command. The MQTT reserved topics and validations will be used for command executions according to the namespace setting.
displayName:
type: string
description: The user-friendly name in the console for the command. This name doesn't have to be unique. You can update the user-friendly name after you define it.
description:
type: string
description: A short text decription of the command.
payload:
$ref: '#/components/schemas/CommandPayload'
payloadTemplate:
type: string
description: The payload template for the dynamic command. This parameter is required for dynamic commands where the command execution placeholders are supplied either from mandatoryParameters or when StartCommandExecution is invoked.
preprocessor:
$ref: '#/components/schemas/CommandPreprocessor'
mandatoryParameters:
type: array
items:
$ref: '#/components/schemas/CommandParameter'
description: A list of parameters that are used by StartCommandExecution API for execution payload generation.
roleArn:
type: string
description: The IAM role that you must provide when using the AWS-IoT-FleetWise namespace. The role grants IoT Device Management the permission to access IoT FleetWise resources for generating the payload for the command. This field is not supported when you use the AWS-IoT namespace.
tags:
type: array
items:
$ref: '#/components/schemas/Tag'
description: Name-value pairs that are used as metadata to manage a command.
required:
- commandId
InternalServerException:
type: object
properties:
message:
type: string
CommandParameterValueCondition:
type: object
properties:
comparisonOperator:
type: string
enum:
- EQUALS
- NOT_EQUALS
- LESS_THAN
- LESS_THAN_EQUALS
- GREATER_THAN
- GREATER_THAN_EQUALS
- IN_SET
- NOT_IN_SET
- IN_RANGE
- NOT_IN_RANGE
description: The comparison operator for the command parameter. IN_RANGE, and NOT_IN_RANGE operators include boundary values.
operand:
$ref: '#/components/schemas/CommandParameterValueComparisonOperand'
required:
- comparisonOperator
- operand
CommandSummary:
type: object
properties:
commandArn:
type: string
description: The Amazon Resource Name (ARN) of the command.
commandId:
type: string
description: The unique identifier of the command.
displayName:
type: string
description: The display name of the command.
deprecated:
type: boolean
description: Indicates whether the command has been deprecated.
createdAt:
type: string
format: date-time
description: The timestamp, when the command was created.
lastUpdatedAt:
type: string
format: date-time
description: The timestamp, when the command was last updated.
pendingDeletion:
type: boolean
description: Indicates whether the command is pending deletion.
DeleteCommandRequest:
type: object
properties:
commandId:
type: string
description: The unique identifier of the command to be deleted.
required:
- commandId
UpdateCommandResponse:
type: object
properties:
commandId:
type: string
description: The unique identifier of the command.
displayName:
type: string
description: The updated user-friendly display name in the console for the command.
description:
type: string
description: The updated text description of the command.
deprecated:
type: boolean
description: The boolean that indicates whether the command was deprecated.
lastUpdatedAt:
type: string
format: date-time
description: The date and time (epoch timestamp in seconds) when the command was last updated.
ServiceQuotaExceededException:
type: object
properties:
message:
type: string
CommandPayload:
type: object
properties:
content:
type: string
format: byte
description: The static payload file for the command.
contentType:
type: string
description: The content type that specifies the format type of the payload file. This field must use a type/subtype format, such as application/json. For information about various content types, see Common MIME types.
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)