Amazon IoT Device Defender OtaUpdates API
The OtaUpdates API from Amazon IoT Device Defender — 2 operation(s) for otaupdates.
The OtaUpdates API from Amazon IoT Device Defender — 2 operation(s) for otaupdates.
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-device-defender-otaupdates-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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:
version: 1.0.0
x-release: v4
title: AWS IoT Accept Certificate Transfer Ota Updates API
description: '<fullname>IoT</fullname> <p>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. You can discover your custom IoT-Data endpoint to communicate with, configure rules for data processing and integration with other services, organize resources associated with each device (Registry), configure logging, and create and manage policies and credentials to authenticate devices.</p> <p>The service endpoints that expose this API are listed in <a href="https://docs.aws.amazon.com/general/latest/gr/iot-core.html">Amazon Web Services IoT Core Endpoints and Quotas</a>. You must use the endpoint for the region that has the resources you want to access.</p> <p>The service name used by <a href="https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html">Amazon Web Services Signature Version 4</a> to sign the request is: <i>execute-api</i>.</p> <p>For more information about how IoT works, see the <a href="https://docs.aws.amazon.com/iot/latest/developerguide/aws-iot-how-it-works.html">Developer Guide</a>.</p> <p>For information about how to use the credentials provider for IoT, see <a href="https://docs.aws.amazon.com/iot/latest/developerguide/authorizing-direct-aws.html">Authorizing Direct Calls to Amazon Web Services Services</a>.</p>'
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
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: OtaUpdates
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: <p>Creates an IoT OTA update on a target group of things or groups.</p> <p>Requires permission to access the <a href="https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions">CreateOTAUpdate</a> action.</p>
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 <code>protocols</code> 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 <code>IN_PROGRESS</code>. If the job execution status is not set to another terminal state before the timer expires, it will be automatically set to <code>TIMED_OUT</code>.
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 <code>TIMED_OUT</code> 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 Defender Create O T a Update
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
tags:
- OtaUpdates
delete:
operationId: DeleteOTAUpdate
description: <p>Delete an OTA update.</p> <p>Requires permission to access the <a href="https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions">DeleteOTAUpdate</a> action.</p>
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 Defender Delete O T a Update
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
tags:
- OtaUpdates
get:
operationId: GetOTAUpdate
description: <p>Gets an OTA update.</p> <p>Requires permission to access the <a href="https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions">GetOTAUpdate</a> action.</p>
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 Defender Get O T a Update
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
tags:
- OtaUpdates
/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: <p>Lists OTA updates.</p> <p>Requires permission to access the <a href="https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions">ListOTAUpdates</a> action.</p>
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 Defender List O T a Updates
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
tags:
- OtaUpdates
components:
schemas:
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 uses <code>SHA256</code> or <code>SHA1</code>, 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 <code>ECDSA</code> or <code>RSA</code>, 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.
UnauthorizedException: {}
GetOTAUpdateResponse:
type: object
properties:
otaUpdateInfo:
allOf:
- $ref: '#/components/schemas/OTAUpdateInfo'
- description: The OTA update info.
AdditionalParameterMap:
type: object
additionalProperties:
$ref: '#/components/schemas/Value'
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: <p>The criteria to initiate the increase in rate of rollout for a job.</p> <p>Amazon Web Services IoT Core supports up to one digit after the decimal (for example, 1.5, but not 1.55).</p>
description: The rate of increase for a job rollout. This parameter allows you to define an exponential rate increase for a job rollout.
OTAUpdateId:
type: string
pattern: '[a-zA-Z0-9_-]+'
minLength: 1
maxLength: 128
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 <code>protocols</code> contains HTTP.
InlineDocument:
type: string
InvalidRequestException: {}
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.
InternalFailureException: {}
Targets:
type: array
items:
$ref: '#/components/schemas/Target'
minItems: 1
ServiceUnavailableException: {}
AwsIotJobArn:
type: string
OTAUpdateErrorMessage:
type: string
AwsIotJobId:
type: string
VersionConflictException: {}
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.
OTAUpdatesSummary:
type: array
items:
$ref: '#/components/schemas/OTAUpdateSummary'
ResourceAlreadyExistsException: {}
CertificateName:
type: string
MaximumPerMinute:
type: integer
minimum: 1
maximum: 1000
AttributesMap:
type: object
additionalProperties:
$ref: '#/components/schemas/Value'
HashAlgorithm:
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.
StreamId:
type: string
pattern: '[a-zA-Z0-9_-]+'
minLength: 1
maxLength: 128
S3Bucket:
type: string
minLength: 1
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 <code>protocols</code> 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.
TagValue:
type: string
minLength: 0
maxLength: 256
AwsJobRateIncreaseCriteriaNumberOfThings:
type: integer
minimum: 1
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.
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.
LimitExceededException: {}
ThrottlingException: {}
FileName:
type: string
SigningJobId:
type: string
OTAUpdateDescription:
type: string
pattern: '[^\p{C}]+'
maxLength: 2028
CertificateArn:
type: string
Platform:
type: string
OTAUpdateFiles:
type: array
items:
$ref: '#/components/schemas/OTAUpdateFile'
minItems: 1
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.
CodeSigning:
type: object
properties:
awsSignerJobId:
allOf:
- $ref: '#/components/schemas/SigningJobId'
- description: The ID of the <code>AWSSignerJob</code> which was created to sign the file.
startSigningJobParameter:
# --- truncated at 32 KB (42 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/amazon-iot-device-defender/refs/heads/main/openapi/amazon-iot-device-defender-otaupdates-api-openapi.yml