openapi: 3.2.0
info:
version: 2015-05-28
x-release: v4
title: AWS IoT Ota Updates API
description: 'IoT
IoT provides secure, bi-directional communication between Internet-connected devices (such as sensors, actuators, embedded devices, or smart appliances) and the Amazon Web Services cloud.'
x-logo:
url: https://api.apis.guru/v2/cache/logo/https_twitter.com_awscloud_profile_image.png
backgroundColor: '#FFFFFF'
termsOfService: https://aws.amazon.com/service-terms/
contact:
name: Mike Ralphson
email: mike.ralphson@gmail.com
url: https://github.com/mermade/aws2openapi
x-twitter: PermittedSoc
license:
name: Apache 2.0 License
url: http://www.apache.org/licenses/
x-providerName: amazonaws.com
x-serviceName: iot
x-aws-signingName: iot
x-origin:
- contentType: application/json
url: https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/iot-2015-05-28.normal.json
converter:
url: https://github.com/mermade/aws2openapi
version: 1.0.0
x-apisguru-driver: external
x-apiClientRegistration:
url: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct
x-apisguru-categories:
- cloud
x-preferred: true
servers:
- url: http://iot.{region}.amazonaws.com
variables:
region:
description: The AWS region
enum:
- us-east-1
- us-east-2
- us-west-1
- us-west-2
- us-gov-west-1
- us-gov-east-1
- ca-central-1
- eu-north-1
- eu-west-1
- eu-west-2
- eu-west-3
- eu-central-1
- eu-south-1
- af-south-1
- ap-northeast-1
- ap-northeast-2
- ap-northeast-3
- ap-southeast-1
- ap-southeast-2
- ap-east-1
- ap-south-1
- sa-east-1
- me-south-1
default: us-east-1
description: The AWS IoT multi-region endpoint
- url: https://iot.{region}.amazonaws.com
variables:
region:
description: The AWS region
enum:
- us-east-1
- us-east-2
- us-west-1
- us-west-2
- us-gov-west-1
- us-gov-east-1
- ca-central-1
- eu-north-1
- eu-west-1
- eu-west-2
- eu-west-3
- eu-central-1
- eu-south-1
- af-south-1
- ap-northeast-1
- ap-northeast-2
- ap-northeast-3
- ap-southeast-1
- ap-southeast-2
- ap-east-1
- ap-south-1
- sa-east-1
- me-south-1
default: us-east-1
description: The AWS IoT multi-region endpoint
- url: http://iot.{region}.amazonaws.com.cn
variables:
region:
description: The AWS region
enum:
- cn-north-1
- cn-northwest-1
default: cn-north-1
description: The AWS IoT endpoint for China (Beijing) and China (Ningxia)
- url: https://iot.{region}.amazonaws.com.cn
variables:
region:
description: The AWS region
enum:
- cn-north-1
- cn-northwest-1
default: cn-north-1
description: The AWS IoT endpoint for China (Beijing) and China (Ningxia)
security:
- hmac: []
tags:
- name: OTA Updates
paths:
/otaUpdates/{otaUpdateId}:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
- $ref: '#/components/parameters/X-Amz-Date'
- $ref: '#/components/parameters/X-Amz-Algorithm'
- $ref: '#/components/parameters/X-Amz-Credential'
- $ref: '#/components/parameters/X-Amz-Security-Token'
- $ref: '#/components/parameters/X-Amz-Signature'
- $ref: '#/components/parameters/X-Amz-SignedHeaders'
post:
operationId: CreateOTAUpdate
description: 'Creates an IoT OTA update on a target group of things or groups.
Requires permission to access the CreateOTAUpdate action.'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CreateOTAUpdateResponse'
'480':
description: InvalidRequestException
content:
application/json:
schema:
$ref: '#/components/schemas/InvalidRequestException'
'481':
description: LimitExceededException
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededException'
'482':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'483':
description: ResourceAlreadyExistsException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceAlreadyExistsException'
'484':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'485':
description: UnauthorizedException
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedException'
'486':
description: InternalFailureException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalFailureException'
'487':
description: ServiceUnavailableException
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailableException'
parameters:
- name: otaUpdateId
in: path
required: true
description: The ID of the OTA update to be created.
schema:
type: string
pattern: '[a-zA-Z0-9_-]+'
minLength: 1
maxLength: 128
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- targets
- files
- roleArn
properties:
description:
description: The description of the OTA update.
type: string
pattern: '[^\p{C}]+'
maxLength: 2028
targets:
description: The devices targeted to receive OTA updates.
type: array
items:
$ref: '#/components/schemas/Target'
minItems: 1
protocols:
description: The protocol used to transfer the OTA update image. Valid values are [HTTP], [MQTT], [HTTP, MQTT]. When both HTTP and MQTT are specified, the target device can choose the protocol.
type: array
items:
$ref: '#/components/schemas/Protocol'
minItems: 1
maxItems: 2
targetSelection:
description: 'Specifies whether the update will continue to run (CONTINUOUS), or will be complete after all the things specified as targets have completed the update (SNAPSHOT). If continuous, the update may also be run on a thing when a change is detected in a target. For example, an update will run on a thing when the thing is added to a target group, even after the update was completed by all things originally in the group. Valid values: CONTINUOUS | SNAPSHOT.'
type: string
enum:
- CONTINUOUS
- SNAPSHOT
awsJobExecutionsRolloutConfig:
description: Configuration for the rollout of OTA updates.
type: object
properties:
maximumPerMinute:
allOf:
- $ref: '#/components/schemas/MaximumPerMinute'
- description: The maximum number of OTA update job executions started per minute.
exponentialRate:
allOf:
- $ref: '#/components/schemas/AwsJobExponentialRolloutRate'
- description: The rate of increase for a job rollout. This parameter allows you to define an exponential rate increase for a job rollout.
awsJobPresignedUrlConfig:
description: Configuration information for pre-signed URLs. Valid when protocols contains HTTP.
type: object
properties:
expiresInSec:
allOf:
- $ref: '#/components/schemas/ExpiresInSeconds'
- description: How long (in seconds) pre-signed URLs are valid. Valid values are 60 - 3600, the default value is 1800 seconds. Pre-signed URLs are generated when a request for the job document is received.
awsJobAbortConfig:
description: The criteria that determine when and how a job abort takes place.
type: object
properties:
abortCriteriaList:
allOf:
- $ref: '#/components/schemas/AwsJobAbortCriteriaList'
- description: The list of criteria that determine when and how to abort the job.
awsJobTimeoutConfig:
description: Specifies the amount of time each device has to finish its execution of the job. A timer is started when the job execution status is set to IN_PROGRESS. If the job execution status is not set to another terminal state before the timer expires, it will be automatically set to TIMED_OUT.
type: object
properties:
inProgressTimeoutInMinutes:
allOf:
- $ref: '#/components/schemas/AwsJobTimeoutInProgressTimeoutInMinutes'
- description: Specifies the amount of time, in minutes, this device has to finish execution of this job. The timeout interval can be anywhere between 1 minute and 7 days (1 to 10080 minutes). The in progress timer can't be updated and will apply to all job executions for the job. Whenever a job execution remains in the IN_PROGRESS status for longer than this interval, the job execution will fail and switch to the terminal TIMED_OUT status.
files:
description: The files to be streamed by the OTA update.
type: array
items:
$ref: '#/components/schemas/OTAUpdateFile'
minItems: 1
roleArn:
description: The IAM role that grants Amazon Web Services IoT Core access to the Amazon S3, IoT jobs and Amazon Web Services Code Signing resources to create an OTA update job.
type: string
minLength: 20
maxLength: 2048
additionalParameters:
description: A list of additional OTA update parameters which are name-value pairs.
type: object
additionalProperties:
$ref: '#/components/schemas/Value'
tags:
description: Metadata which can be used to manage updates.
type: array
items:
$ref: '#/components/schemas/Tag'
summary: Amazon IoT Device Management Create O T a Update
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
tags:
- OTA Updates
delete:
operationId: DeleteOTAUpdate
description: 'Delete an OTA update.
Requires permission to access the DeleteOTAUpdate action.'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteOTAUpdateResponse'
'480':
description: InvalidRequestException
content:
application/json:
schema:
$ref: '#/components/schemas/InvalidRequestException'
'481':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'482':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'483':
description: UnauthorizedException
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedException'
'484':
description: InternalFailureException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalFailureException'
'485':
description: ServiceUnavailableException
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailableException'
'486':
description: VersionConflictException
content:
application/json:
schema:
$ref: '#/components/schemas/VersionConflictException'
parameters:
- name: otaUpdateId
in: path
required: true
description: The ID of the OTA update to delete.
schema:
type: string
pattern: '[a-zA-Z0-9_-]+'
minLength: 1
maxLength: 128
- name: deleteStream
in: query
required: false
description: When true, the stream created by the OTAUpdate process is deleted when the OTA update is deleted. Ignored if the stream specified in the OTAUpdate is supplied by the user.
schema:
type: boolean
- name: forceDeleteAWSJob
in: query
required: false
description: When true, deletes the IoT job created by the OTAUpdate process even if it is "IN_PROGRESS". Otherwise, if the job is not in a terminal state ("COMPLETED" or "CANCELED") an exception will occur. The default is false.
schema:
type: boolean
summary: Amazon IoT Device Management Delete O T a Update
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
tags:
- OTA Updates
get:
operationId: GetOTAUpdate
description: 'Gets an OTA update.
Requires permission to access the GetOTAUpdate action.'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/GetOTAUpdateResponse'
'480':
description: InvalidRequestException
content:
application/json:
schema:
$ref: '#/components/schemas/InvalidRequestException'
'481':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'482':
description: UnauthorizedException
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedException'
'483':
description: InternalFailureException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalFailureException'
'484':
description: ServiceUnavailableException
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailableException'
'485':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
parameters:
- name: otaUpdateId
in: path
required: true
description: The OTA update ID.
schema:
type: string
pattern: '[a-zA-Z0-9_-]+'
minLength: 1
maxLength: 128
summary: Amazon IoT Device Management Get O T a Update
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
tags:
- OTA Updates
/otaUpdates:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
- $ref: '#/components/parameters/X-Amz-Date'
- $ref: '#/components/parameters/X-Amz-Algorithm'
- $ref: '#/components/parameters/X-Amz-Credential'
- $ref: '#/components/parameters/X-Amz-Security-Token'
- $ref: '#/components/parameters/X-Amz-Signature'
- $ref: '#/components/parameters/X-Amz-SignedHeaders'
get:
operationId: ListOTAUpdates
description: 'Lists OTA updates.
Requires permission to access the ListOTAUpdates action.'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ListOTAUpdatesResponse'
'480':
description: InvalidRequestException
content:
application/json:
schema:
$ref: '#/components/schemas/InvalidRequestException'
'481':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'482':
description: UnauthorizedException
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedException'
'483':
description: InternalFailureException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalFailureException'
'484':
description: ServiceUnavailableException
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceUnavailableException'
parameters:
- name: maxResults
in: query
required: false
description: The maximum number of results to return at one time.
schema:
type: integer
minimum: 1
maximum: 250
- name: nextToken
in: query
required: false
description: A token used to retrieve the next set of results.
schema:
type: string
- name: otaUpdateStatus
in: query
required: false
description: The OTA update job status.
schema:
type: string
enum:
- CREATE_PENDING
- CREATE_IN_PROGRESS
- CREATE_COMPLETE
- CREATE_FAILED
- DELETE_IN_PROGRESS
- DELETE_FAILED
summary: Amazon IoT Device Management List O T a Updates
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
tags:
- OTA Updates
components:
schemas:
VersionConflictException: {}
GetOTAUpdateResponse:
type: object
properties:
otaUpdateInfo:
allOf:
- $ref: '#/components/schemas/OTAUpdateInfo'
- description: The OTA update info.
CertificatePathOnDevice:
type: string
UnauthorizedException: {}
SignatureAlgorithm:
type: string
Protocols:
type: array
items:
$ref: '#/components/schemas/Protocol'
minItems: 1
maxItems: 2
Destination:
type: object
properties:
s3Destination:
allOf:
- $ref: '#/components/schemas/S3Destination'
- description: Describes the location in S3 of the updated firmware.
description: Describes the location of the updated firmware.
AwsIotJobArn:
type: string
Stream:
type: object
properties:
streamId:
allOf:
- $ref: '#/components/schemas/StreamId'
- description: The stream ID.
fileId:
allOf:
- $ref: '#/components/schemas/FileId'
- description: The ID of a file associated with a stream.
description: Describes a group of files that can be streamed.
TargetSelection:
type: string
enum:
- CONTINUOUS
- SNAPSHOT
OTAUpdateArn:
type: string
S3Destination:
type: object
properties:
bucket:
allOf:
- $ref: '#/components/schemas/S3Bucket'
- description: The S3 bucket that contains the updated firmware.
prefix:
allOf:
- $ref: '#/components/schemas/Prefix'
- description: The S3 prefix.
description: Describes the location of updated firmware in S3.
OTAUpdatesSummary:
type: array
items:
$ref: '#/components/schemas/OTAUpdateSummary'
AwsJobAbortCriteriaAbortThresholdPercentage:
type: number
format: double
maximum: 100
OTAUpdateId:
type: string
pattern: '[a-zA-Z0-9_-]+'
minLength: 1
maxLength: 128
SigningJobId:
type: string
AwsJobAbortCriteriaFailureType:
type: string
enum:
- FAILED
- REJECTED
- TIMED_OUT
- ALL
Target:
type: string
AttributesMap:
type: object
additionalProperties:
$ref: '#/components/schemas/Value'
SigningProfileName:
type: string
Prefix:
type: string
ResourceAlreadyExistsException: {}
OTAUpdateFileVersion:
type: string
OTAUpdateErrorMessage:
type: string
ServiceUnavailableException: {}
OTAUpdateSummary:
type: object
properties:
otaUpdateId:
allOf:
- $ref: '#/components/schemas/OTAUpdateId'
- description: The OTA update ID.
otaUpdateArn:
allOf:
- $ref: '#/components/schemas/OTAUpdateArn'
- description: The OTA update ARN.
creationDate:
allOf:
- $ref: '#/components/schemas/DateType'
- description: The date when the OTA update was created.
description: An OTA update summary.
ExpiresInSeconds:
type: integer
S3Key:
type: string
minLength: 1
S3Version:
type: string
Signature:
type: string
CodeSigningCertificateChain:
type: object
properties:
certificateName:
allOf:
- $ref: '#/components/schemas/CertificateName'
- description: The name of the certificate.
inlineDocument:
allOf:
- $ref: '#/components/schemas/InlineDocument'
- description: A base64 encoded binary representation of the code signing certificate chain.
description: Describes the certificate chain being used when code signing a file.
ThrottlingException: {}
Value:
type: string
pattern: '[\s\S]*'
minLength: 0
maxLength: 4096
ResourceNotFoundException: {}
CertificateArn:
type: string
AwsJobRateIncreaseCriteria:
type: object
properties:
numberOfNotifiedThings:
allOf:
- $ref: '#/components/schemas/AwsJobRateIncreaseCriteriaNumberOfThings'
- description: When this number of things have been notified, it will initiate an increase in the rollout rate.
numberOfSucceededThings:
allOf:
- $ref: '#/components/schemas/AwsJobRateIncreaseCriteriaNumberOfThings'
- description: When this number of things have succeeded in their job execution, it will initiate an increase in the rollout rate.
description: The criteria to initiate the increase in rate of rollout for a job.
InternalFailureException: {}
TagKey:
type: string
pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$
minLength: 1
maxLength: 128
Tag:
type: object
required:
- Key
properties:
Key:
allOf:
- $ref: '#/components/schemas/TagKey'
- description: The tag's key.
Value:
allOf:
- $ref: '#/components/schemas/TagValue'
- description: The tag's value.
description: A set of key/value pairs that are used to manage the resource.
SigningProfileParameter:
type: object
properties:
certificateArn:
allOf:
- $ref: '#/components/schemas/CertificateArn'
- description: Certificate ARN.
platform:
allOf:
- $ref: '#/components/schemas/Platform'
- description: The hardware platform of your device.
certificatePathOnDevice:
allOf:
- $ref: '#/components/schemas/CertificatePathOnDevice'
- description: The location of the code-signing certificate on your device.
description: Describes the code-signing profile.
DateType:
type: string
format: date-time
OTAUpdateInfo:
type: object
properties:
otaUpdateId:
allOf:
- $ref: '#/components/schemas/OTAUpdateId'
- description: The OTA update ID.
otaUpdateArn:
allOf:
- $ref: '#/components/schemas/OTAUpdateArn'
- description: The OTA update ARN.
creationDate:
allOf:
- $ref: '#/components/schemas/DateType'
- description: The date when the OTA update was created.
lastModifiedDate:
allOf:
- $ref: '#/components/schemas/DateType'
- description: The date when the OTA update was last updated.
description:
allOf:
- $ref: '#/components/schemas/OTAUpdateDescription'
- description: A description of the OTA update.
targets:
allOf:
- $ref: '#/components/schemas/Targets'
- description: The targets of the OTA update.
protocols:
allOf:
- $ref: '#/components/schemas/Protocols'
- description: The protocol used to transfer the OTA update image. Valid values are [HTTP], [MQTT], [HTTP, MQTT]. When both HTTP and MQTT are specified, the target device can choose the protocol.
awsJobExecutionsRolloutConfig:
allOf:
- $ref: '#/components/schemas/AwsJobExecutionsRolloutConfig'
- description: Configuration for the rollout of OTA updates.
awsJobPresignedUrlConfig:
allOf:
- $ref: '#/components/schemas/AwsJobPresignedUrlConfig'
- description: Configuration information for pre-signed URLs. Valid when protocols contains HTTP.
targetSelection:
allOf:
- $ref: '#/components/schemas/TargetSelection'
- description: 'Specifies whether the OTA update will continue to run (CONTINUOUS), or will be complete after all those things specified as targets have completed the OTA update (SNAPSHOT). If continuous, the OTA update may also be run on a thing when a change is detected in a target. For example, an OTA update will run on a thing when the thing is added to a target group, even after the OTA update was completed by all things originally in the group. '
otaUpdateFiles:
allOf:
- $ref: '#/components/schemas/OTAUpdateFiles'
- description: A list of files associated with the OTA update.
otaUpdateStatus:
allOf:
- $ref: '#/components/schemas/OTAUpdateStatus'
- description: The status of the OTA update.
awsIotJobId:
allOf:
- $ref: '#/components/schemas/AwsIotJobId'
- description: The IoT job ID associated with the OTA update.
awsIotJobArn:
allOf:
- $ref: '#/components/schemas/AwsIotJobArn'
- description: The IoT job ARN associated with the OTA update.
errorInfo:
allOf:
- $ref: '#/components/schemas/ErrorInfo'
- description: Error information associated with the OTA update.
additionalParameters:
allOf:
- $ref: '#/components/schemas/AdditionalParameterMap'
- description: A collection of name/value pairs
description: Information about an OTA update.
OTAUpdateDescription:
type: string
pattern: '[^\p{C}]+'
maxLength: 2028
AwsJobAbortCriteriaList:
type: array
items:
$ref: '#/components/schemas/AwsJobAbortCriteria'
minItems: 1
FileName:
type: string
StartSigningJobParameter:
type: object
properties:
signingProfileParameter:
allOf:
- $ref: '#/components/schemas/SigningProfileParameter'
- description: Describes the code-signing profile.
signingProfileName:
allOf:
- $ref: '#/components/schemas/SigningProfileName'
- description: The code-signing profile name.
destination:
allOf:
- $ref: '#/components/schemas/Destination'
- description: The location to write the code-signed file.
description: Information required to start a signing job.
AdditionalParameterMap:
type: object
additionalProperties:
$ref: '#/components/schemas/Value'
OTAUpdateFile:
type: object
properties:
fileName:
allOf:
- $ref: '#/components/schemas/FileName'
- description: The name of the file.
fileType:
allOf:
- $ref: '#/components/schemas/FileType'
- description: An integer value you can include in the job document to allow your devices to identify the type of file received from the cloud.
fileVersion:
allOf:
- $ref: '#/components/schemas/OTAUpdateFileVersion'
- description: The file version.
fileLocation:
allOf:
- $ref: '#/components/schemas/FileLocation'
- description: The location of the updated firmware.
codeSigning:
allOf:
- $ref: '#/components/schemas/CodeSigning'
- description: The code signing method of the file.
attributes:
allOf:
- $ref: '#/components/schemas/AttributesMap'
- description: A list of name/attribute pairs.
description: Describes a file to be associated with an OTA update.
AwsIotJobId:
type: string
AwsJobPresignedUrlConfig:
type: object
properties:
expiresInSec:
allOf:
- $ref: '#/components/schemas/ExpiresInSeconds'
- description: How long (in seconds) pre-signed URLs are valid. Valid values are 60 - 3600, the default value is 1800 seconds. Pre-signed URLs are generated when a request for the job document is received.
description: Configuration information for pre-signed URLs. Valid when protocols contains HTTP.
FileType:
type: integer
minimum: 0
maximum: 255
NextToken:
type: string
AwsJobAbortCriteriaMinimumNumberOfExecutedThings:
type: integer
minimum: 1
AwsJobExponentialRolloutRate:
type: object
required:
- baseRatePerMinute
- incrementFactor
- rateIncreaseCriteria
properties:
baseRatePerMinute:
allOf:
- $ref: '#/components/schemas/AwsJobRolloutRatePerMinute'
- description: The minimum number of things that will be notified of a pending job, per minute, at the start of the job rollout. This is the initial rate of the rollout.
incrementFactor:
allOf:
- $ref: '#/components/schemas/AwsJobRolloutIncrementFactor'
- description: The rate of increase for a job rollout. The number of things notified is multiplied by this factor.
rateIncreaseCriteria:
allOf:
- $ref: '#/components/schemas/AwsJobRateIncreaseCriteria'
- description:
The criteria to initiate the increase in rate of rollout for a job.
Amazon Web Services IoT Core supports up to one digit after the decimal (for example, 1.5, but not 1.55).
description: The rate of increase for a job rollout. This parameter allows you to define an exponential rate increase for a job rollout. AwsJobAbortCriteriaAbortAction: type: string enum: - CANCEL AwsJobRolloutRatePerMinute: type: integer minimum: 1 maximum: 1000 AwsJobTimeoutInProgressTimeoutInMinutes: type: integer CodeSigning: type: object properties: awsSignerJobId: allOf: - $ref: '#/components/schemas/SigningJobId' - description: The ID of theAWSSignerJob which was created to sign the file.
startSigningJobParameter:
allOf:
- $ref: '#/components/schemas/StartSigningJobParameter'
- description: Describes the code-signing job.
customCodeSigning:
allOf:
- $ref: '#/components/schemas/CustomCodeSigning'
- description: A custom method for code signing a file.
description: Describes the method to use when code signing a file.
FileLocation:
type: object
properties:
stream:
allOf:
- $ref: '#/components/schemas/Stream'
- description: The stream that contains the OTA update.
s3Location:
allOf:
- $ref: '#/components/schemas/S3Location'
- description: The location of the updated firmware in S3.
description: The location of the OTA update.
AwsJobAbortCriteria:
type: object
required:
- failureType
- action
- thresholdPercentage
- minNumberOfExecutedThings
properties:
failureType:
allOf:
- $ref: '#/components/schemas/AwsJobAbortCriteriaFailureType'
- description: The type of job execution failures that can initiate a job abort.
action:
allOf:
- $ref: '#/components/schemas/AwsJobAbortCriteriaAbortAction'
- description: The type of job action to take to initiate the job abort.
thresholdPercentage:
allOf:
- $ref: '#/components/schemas/AwsJobAbortCriteriaAbortThresholdPercentage'
- description: The minimum percentage of job execution failures that must occur to initiate the job abort.
Amazon Web Services IoT Core supports up to two digits after the decimal (for example, 10.9 and 10.99, but not 10.999).
minNumberOfExecutedThings: allOf: - $ref: '#/components/schemas/AwsJobAbortCriteriaMinimumNumberOfExecutedThings' - description: The minimum number of things which must receive job execution notifications before the job can be aborted. description: The criteria that determine when and how a job abort takes place. Platform: type: string Code: type: string S3Bucket: type: string minLength: 1 OTAUpdateFiles: type: array items: $ref: '#/components/schemas/OTAUpdateFile' minItems: 1 DeleteOTAUpdateResponse: type: object properties: {} TagValue: type: string minLength: 0 maxLength: 256 Protocol: type: string enum: - MQTT - HTTP LimitExceededException: {} FileId: type: integer minimum: 0 maximum: 255 CreateOTAUpdateResponse: type: object properties: otaUpdateId: allOf: - $ref: '#/components/schemas/OTAUpdateId' - description: The OTA update ID. awsIotJobId: allOf: - $ref: '#/components/schemas/AwsIotJobId' - description: The IoT job ID associated with the OTA update. otaUpdateArn: allOf: - $ref: '#/components/schemas/OTAUpdateArn' - description: The OTA update ARN. awsIotJobArn: allOf: - $ref: '#/components/schemas/AwsIotJobArn' - description: The IoT job ARN associated with the OTA update. otaUpdateStatus: allOf: - $ref: '#/components/schemas/OTAUpdateStatus' - description: The OTA update status. InlineDocument: type: string InvalidRequestException: {} ListOTAUpdatesResponse: type: object properties: otaUpdates: allOf: - $ref: '#/components/schemas/OTAUpdatesSummary' - description: A list of OTA update jobs. nextToken: allOf: - $ref: '#/components/schemas/NextToken' - description: A token to use to get the next set of results. CertificateName: type: string CodeSigningSignature: type: object properties: inlineDocument: allOf: - $ref: '#/components/schemas/Signature' - description: A base64 encoded binary representation of the code signing signature. description: Describes the signature for a file. AwsJobExecutionsRolloutConfig: type: object properties: maximumPerMinute: allOf: - $ref: '#/components/schemas/MaximumPerMinute' - description: The maximum number of OTA update job executions started per minute. exponentialRate: allOf: - $ref: '#/components/schemas/AwsJobExponentialRolloutRate' - description: The rate of increase for a job rollout. This parameter allows you to define an exponential rate increase for a job rollout. description: Configuration for the rollout of OTA updates. StreamId: type: string pattern: '[a-zA-Z0-9_-]+' minLength: 1 maxLength: 128 Targets: type: array items: $ref: '#/components/schemas/Target' minItems: 1 HashAlgorithm: type: string MaximumPerMinute: type: integer minimum: 1 maximum: 1000 AwsJobRateIncreaseCriteriaNumberOfThings: type: integer minimum: 1 AwsJobRolloutIncrementFactor: type: number format: double ErrorInfo: type: object properties: code: allOf: - $ref: '#/components/schemas/Code' - description: The error code. message: allOf: - $ref: '#/components/schemas/OTAUpdateErrorMessage' - description: The error message. description: Error information. CustomCodeSigning: type: object properties: signature: allOf: - $ref: '#/components/schemas/CodeSigningSignature' - description: The signature for the file. certificateChain: allOf: - $ref: '#/components/schemas/CodeSigningCertificateChain' - description: The certificate chain. hashAlgorithm: allOf: - $ref: '#/components/schemas/HashAlgorithm' - description: The hash algorithm used to code sign the file. You can use a string as the algorithm name if the target over-the-air (OTA) update devices are able to verify the signature that was generated using the same signature algorithm. For example, FreeRTOS usesSHA256 or SHA1, so you can pass either of them based on which was used for generating the signature.
signatureAlgorithm:
allOf:
- $ref: '#/components/schemas/SignatureAlgorithm'
- description: The signature algorithm used to code sign the file. You can use a string as the algorithm name if the target over-the-air (OTA) update devices are able to verify the signature that was generated using the same signature algorithm. For example, FreeRTOS uses ECDSA or RSA, so you can pass either of them based on which was used for generating the signature.
description: Describes a custom method used to code sign a file.
S3Location:
type: object
properties:
bucket:
allOf:
- $ref: '#/components/schemas/S3Bucket'
- description: The S3 bucket.
key:
allOf:
- $ref: '#/components/schemas/S3Key'
- description: The S3 key.
version:
allOf:
- $ref: '#/components/schemas/S3Version'
- description: The S3 bucket version.
description: The S3 location.
OTAUpdateStatus:
type: string
enum:
- CREATE_PENDING
- CREATE_IN_PROGRESS
- CREATE_COMPLETE
- CREATE_FAILED
- DELETE_IN_PROGRESS
- DELETE_FAILED
parameters:
X-Amz-SignedHeaders:
name: X-Amz-SignedHeaders
in: header
schema:
type: string
required: false
X-Amz-Algorithm:
name: X-Amz-Algorithm
in: header
schema:
type: string
required: false
X-Amz-Signature:
name: X-Amz-Signature
in: header
schema:
type: string
required: false
X-Amz-Content-Sha256:
name: X-Amz-Content-Sha256
in: header
schema:
type: string
required: false
X-Amz-Security-Token:
name: X-Amz-Security-Token
in: header
schema:
type: string
required: false
X-Amz-Date:
name: X-Amz-Date
in: header
schema:
type: string
required: false
X-Amz-Credential:
name: X-Amz-Credential
in: header
schema:
type: string
required: false
securitySchemes:
hmac:
type: apiKey
name: Authorization
in: header
description: Amazon Signature authorization v4
x-amazon-apigateway-authtype: awsSigv4
externalDocs:
description: Amazon Web Services documentation
url: https://docs.aws.amazon.com/iot/
x-hasEquivalentPaths: true