openapi: 3.0.0 info: version: 2015-05-28 x-release: v4 title: AWS IoT Accept Certificate Transfer Jobs 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. 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.

The service endpoints that expose this API are listed in Amazon Web Services IoT Core Endpoints and Quotas. You must use the endpoint for the region that has the resources you want to access.

The service name used by Amazon Web Services Signature Version 4 to sign the request is: execute-api.

For more information about how IoT works, see the Developer Guide.

For information about how to use the credentials provider for IoT, see Authorizing Direct Calls to Amazon Web Services Services.

' 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: Jobs paths: /jobs/{jobId}/targets: 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: AssociateTargetsWithJob description: '

Associates a group with a continuous job. The following criteria must be met:

Requires permission to access the AssociateTargetsWithJob action.

' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/AssociateTargetsWithJobResponse' '480': description: InvalidRequestException content: application/json: schema: $ref: '#/components/schemas/InvalidRequestException' '481': description: ResourceNotFoundException content: application/json: schema: $ref: '#/components/schemas/ResourceNotFoundException' '482': description: LimitExceededException content: application/json: schema: $ref: '#/components/schemas/LimitExceededException' '483': description: ThrottlingException content: application/json: schema: $ref: '#/components/schemas/ThrottlingException' '484': description: ServiceUnavailableException content: application/json: schema: $ref: '#/components/schemas/ServiceUnavailableException' parameters: - name: jobId in: path required: true description: The unique identifier you assigned to this job when it was created. schema: type: string pattern: '[a-zA-Z0-9_-]+' minLength: 1 maxLength: 64 - name: namespaceId in: query required: false description:

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

schema: type: string pattern: '[a-zA-Z0-9_-]+' requestBody: required: true content: application/json: schema: type: object required: - targets properties: targets: description: A list of thing group ARNs that define the targets of the job. type: array items: $ref: '#/components/schemas/TargetArn' minItems: 1 comment: description: An optional comment string describing why the job was associated with the targets. type: string pattern: '[^\p{C}]+' maxLength: 2028 summary: Amazon IoT Device Management Associate Targets with Job x-microcks-operation: delay: 0 dispatcher: FALLBACK tags: - Jobs /jobs/{jobId}/cancel: 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' put: operationId: CancelJob description:

Cancels a job.

Requires permission to access the CancelJob action.

responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/CancelJobResponse' '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: ServiceUnavailableException content: application/json: schema: $ref: '#/components/schemas/ServiceUnavailableException' '484': description: LimitExceededException content: application/json: schema: $ref: '#/components/schemas/LimitExceededException' parameters: - name: jobId in: path required: true description: The unique identifier you assigned to this job when it was created. schema: type: string pattern: '[a-zA-Z0-9_-]+' minLength: 1 maxLength: 64 - name: force in: query required: false description:

(Optional) If true job executions with status "IN_PROGRESS" and "QUEUED" are canceled, otherwise only job executions with status "QUEUED" are canceled. The default is false.

Canceling a job which is "IN_PROGRESS", will cause a device which is executing the job to be unable to update the job execution status. Use caution and ensure that each device executing a job which is canceled is able to recover to a valid state.

schema: type: boolean requestBody: required: true content: application/json: schema: type: object properties: reasonCode: description: (Optional)A reason code string that explains why the job was canceled. type: string pattern: '[\p{Upper}\p{Digit}_]+' maxLength: 128 comment: description: An optional comment string describing why the job was canceled. type: string pattern: '[^\p{C}]+' maxLength: 2028 summary: Amazon IoT Device Management Cancel Job x-microcks-operation: delay: 0 dispatcher: FALLBACK tags: - Jobs /jobs/{jobId}: 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' put: operationId: CreateJob description:

Creates a job.

Requires permission to access the CreateJob action.

responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/CreateJobResponse' '480': description: InvalidRequestException content: application/json: schema: $ref: '#/components/schemas/InvalidRequestException' '481': description: ResourceNotFoundException content: application/json: schema: $ref: '#/components/schemas/ResourceNotFoundException' '482': description: ResourceAlreadyExistsException content: application/json: schema: $ref: '#/components/schemas/ResourceAlreadyExistsException' '483': description: LimitExceededException content: application/json: schema: $ref: '#/components/schemas/LimitExceededException' '484': description: ThrottlingException content: application/json: schema: $ref: '#/components/schemas/ThrottlingException' '485': description: ServiceUnavailableException content: application/json: schema: $ref: '#/components/schemas/ServiceUnavailableException' parameters: - name: jobId in: path required: true description: A job identifier which must be unique for your Amazon Web Services account. We recommend using a UUID. Alpha-numeric characters, "-" and "_" are valid for use here. schema: type: string pattern: '[a-zA-Z0-9_-]+' minLength: 1 maxLength: 64 requestBody: required: true content: application/json: schema: type: object required: - targets properties: targets: description: A list of things and thing groups to which the job should be sent. type: array items: $ref: '#/components/schemas/TargetArn' minItems: 1 documentSource: description:

An S3 link to the job document. Required if you don't specify a value for document.

If the job document resides in an S3 bucket, you must use a placeholder link when specifying the document.

The placeholder link is of the following form:

${aws:iot:s3-presigned-url:https://s3.amazonaws.com/bucket/key}

where bucket is your bucket name and key is the object in the bucket to which you are linking.

type: string minLength: 1 maxLength: 1350 document: description: The job document. Required if you don't specify a value for documentSource. type: string maxLength: 32768 description: description: A short text description of the job. type: string pattern: '[^\p{C}]+' maxLength: 2028 presignedUrlConfig: description: Configuration for pre-signed S3 URLs. type: object properties: roleArn: allOf: - $ref: '#/components/schemas/RoleArn' - description:

The ARN of an IAM role that grants grants permission to download files from the S3 bucket where the job data/updates are stored. The role must also grant permission for IoT to download the files.

For information about addressing the confused deputy problem, see cross-service confused deputy prevention in the Amazon Web Services IoT Core developer guide.

expiresInSec: allOf: - $ref: '#/components/schemas/ExpiresInSec' - description: How long (in seconds) pre-signed URLs are valid. Valid values are 60 - 3600, the default value is 3600 seconds. Pre-signed URLs are generated when Jobs receives an MQTT request for the job document. targetSelection: description:

Specifies whether the job will continue to run (CONTINUOUS), or will be complete after all those things specified as targets have completed the job (SNAPSHOT). If continuous, the job may also be run on a thing when a change is detected in a target. For example, a job will run on a thing when the thing is added to a target group, even after the job was completed by all things originally in the group.

We recommend that you use continuous jobs instead of snapshot jobs for dynamic thing group targets. By using continuous jobs, devices that join the group receive the job execution even after the job has been created.

type: string enum: - CONTINUOUS - SNAPSHOT jobExecutionsRolloutConfig: description: Allows you to create a staged rollout of a job. type: object properties: maximumPerMinute: allOf: - $ref: '#/components/schemas/MaxJobExecutionsPerMin' - description: The maximum number of things that will be notified of a pending job, per minute. This parameter allows you to create a staged rollout. exponentialRate: allOf: - $ref: '#/components/schemas/ExponentialRolloutRate' - description: The rate of increase for a job rollout. This parameter allows you to define an exponential rate for a job rollout. abortConfig: description: The criteria that determine when and how a job abort takes place. type: object properties: criteriaList: allOf: - $ref: '#/components/schemas/AbortCriteriaList' - description: The list of criteria that determine when and how to abort the job. timeoutConfig: 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/InProgressTimeoutInMinutes' - 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. tags: description: Metadata which can be used to manage the job. type: array items: $ref: '#/components/schemas/Tag' namespaceId: description:

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

type: string pattern: '[a-zA-Z0-9_-]+' jobTemplateArn: description: The ARN of the job template used to create the job. type: string pattern: ^arn:[!-~]+$ minLength: 1 maxLength: 1600 jobExecutionsRetryConfig: description: The configuration that determines how many retries are allowed for each failure type for a job. type: object properties: criteriaList: allOf: - $ref: '#/components/schemas/RetryCriteriaList' - description: The list of criteria that determines how many retries are allowed for each failure type for a job. documentParameters: description:

Parameters of an Amazon Web Services managed template that you can specify to create the job document.

documentParameters can only be used when creating jobs from Amazon Web Services managed templates. This parameter can't be used with custom job templates or to create jobs from them.

type: object additionalProperties: $ref: '#/components/schemas/ParameterValue' schedulingConfig: description: Specifies the date and time that a job will begin the rollout of the job document to all devices in the target group. Additionally, you can specify the end behavior for each job execution when it reaches the scheduled end time. type: object properties: startTime: allOf: - $ref: '#/components/schemas/StringDateTime' - description: The time a job will begin rollout of the job document to all devices in the target group for a job. The startTime can be scheduled up to a year in advance and must be scheduled a minimum of thirty minutes from the current time. The date and time format for the startTime is YYYY-MM-DD for the date and HH:MM for the time. endTime: allOf: - $ref: '#/components/schemas/StringDateTime' - description: The time a job will stop rollout of the job document to all devices in the target group for a job. The endTime must take place no later than two years from the current time and be scheduled a minimum of thirty minutes from the current time. The minimum duration between startTime and endTime is thirty minutes. The maximum duration between startTime and endTime is two years. The date and time format for the endTime is YYYY-MM-DD for the date and HH:MM for the time. endBehavior: allOf: - $ref: '#/components/schemas/JobEndBehavior' - description: Specifies the end behavior for all job executions after a job reaches the selected endTime. If endTime is not selected when creating the job, then endBehavior does not apply. maintenanceWindows: allOf: - $ref: '#/components/schemas/MaintenanceWindows' - description: An optional configuration within the SchedulingConfig to setup a recurring maintenance window with a predetermined start time and duration for the rollout of a job document to all devices in a target group for a job. summary: Amazon IoT Device Management Create Job x-microcks-operation: delay: 0 dispatcher: FALLBACK tags: - Jobs delete: operationId: DeleteJob description:

Deletes a job and its related job executions.

Deleting a job may take time, depending on the number of job executions created for the job and various other factors. While the job is being deleted, the status of the job will be shown as "DELETION_IN_PROGRESS". Attempting to delete or cancel a job whose status is already "DELETION_IN_PROGRESS" will result in an error.

Only 10 jobs may have status "DELETION_IN_PROGRESS" at the same time, or a LimitExceededException will occur.

Requires permission to access the DeleteJob action.

responses: '200': description: Success '480': description: InvalidRequestException content: application/json: schema: $ref: '#/components/schemas/InvalidRequestException' '481': description: InvalidStateTransitionException content: application/json: schema: $ref: '#/components/schemas/InvalidStateTransitionException' '482': description: ResourceNotFoundException content: application/json: schema: $ref: '#/components/schemas/ResourceNotFoundException' '483': description: LimitExceededException content: application/json: schema: $ref: '#/components/schemas/LimitExceededException' '484': description: ThrottlingException content: application/json: schema: $ref: '#/components/schemas/ThrottlingException' '485': description: ServiceUnavailableException content: application/json: schema: $ref: '#/components/schemas/ServiceUnavailableException' parameters: - name: jobId in: path required: true description:

The ID of the job to be deleted.

After a job deletion is completed, you may reuse this jobId when you create a new job. However, this is not recommended, and you must ensure that your devices are not using the jobId to refer to the deleted job.

schema: type: string pattern: '[a-zA-Z0-9_-]+' minLength: 1 maxLength: 64 - name: force in: query required: false description:

(Optional) When true, you can delete a job which is "IN_PROGRESS". Otherwise, you can only delete a job which is in a terminal state ("COMPLETED" or "CANCELED") or an exception will occur. The default is false.

Deleting a job which is "IN_PROGRESS", will cause a device which is executing the job to be unable to access job information or update the job execution status. Use caution and ensure that each device executing a job which is deleted is able to recover to a valid state.

schema: type: boolean - name: namespaceId in: query required: false description:

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

schema: type: string pattern: '[a-zA-Z0-9_-]+' summary: Amazon IoT Device Management Delete Job x-microcks-operation: delay: 0 dispatcher: FALLBACK tags: - Jobs get: operationId: DescribeJob description:

Describes a job.

Requires permission to access the DescribeJob action.

responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/DescribeJobResponse' '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: ServiceUnavailableException content: application/json: schema: $ref: '#/components/schemas/ServiceUnavailableException' parameters: - name: jobId in: path required: true description: The unique identifier you assigned to this job when it was created. schema: type: string pattern: '[a-zA-Z0-9_-]+' minLength: 1 maxLength: 64 summary: Amazon IoT Device Management Describe Job x-microcks-operation: delay: 0 dispatcher: FALLBACK tags: - Jobs patch: operationId: UpdateJob description:

Updates supported fields of the specified job.

Requires permission to access the UpdateJob action.

responses: '200': description: Success '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: ServiceUnavailableException content: application/json: schema: $ref: '#/components/schemas/ServiceUnavailableException' parameters: - name: jobId in: path required: true description: The ID of the job to be updated. schema: type: string pattern: '[a-zA-Z0-9_-]+' minLength: 1 maxLength: 64 - name: namespaceId in: query required: false description:

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

schema: type: string pattern: '[a-zA-Z0-9_-]+' requestBody: required: true content: application/json: schema: type: object properties: description: description: A short text description of the job. type: string pattern: '[^\p{C}]+' maxLength: 2028 presignedUrlConfig: description: Configuration for pre-signed S3 URLs. type: object properties: roleArn: allOf: - $ref: '#/components/schemas/RoleArn' - description:

The ARN of an IAM role that grants grants permission to download files from the S3 bucket where the job data/updates are stored. The role must also grant permission for IoT to download the files.

For information about addressing the confused deputy problem, see cross-service confused deputy prevention in the Amazon Web Services IoT Core developer guide.

expiresInSec: allOf: - $ref: '#/components/schemas/ExpiresInSec' - description: How long (in seconds) pre-signed URLs are valid. Valid values are 60 - 3600, the default value is 3600 seconds. Pre-signed URLs are generated when Jobs receives an MQTT request for the job document. jobExecutionsRolloutConfig: description: Allows you to create a staged rollout of a job. type: object properties: maximumPerMinute: allOf: - $ref: '#/components/schemas/MaxJobExecutionsPerMin' - description: The maximum number of things that will be notified of a pending job, per minute. This parameter allows you to create a staged rollout. exponentialRate: allOf: - $ref: '#/components/schemas/ExponentialRolloutRate' - description: The rate of increase for a job rollout. This parameter allows you to define an exponential rate for a job rollout. abortConfig: description: The criteria that determine when and how a job abort takes place. type: object properties: criteriaList: allOf: - $ref: '#/components/schemas/AbortCriteriaList' - description: The list of criteria that determine when and how to abort the job. timeoutConfig: 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/InProgressTimeoutInMinutes' - 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. jobExecutionsRetryConfig: description: The configuration that determines how many retries are allowed for each failure type for a job. type: object properties: criteriaList: allOf: - $ref: '#/components/schemas/RetryCriteriaList' - description: The list of criteria that determines how many retries are allowed for each failure type for a job. summary: Amazon IoT Device Management Update Job x-microcks-operation: delay: 0 dispatcher: FALLBACK tags: - Jobs /jobs/{jobId}/job-document: 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: GetJobDocument description:

Gets a job document.

Requires permission to access the GetJobDocument action.

responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/GetJobDocumentResponse' '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: ServiceUnavailableException content: application/json: schema: $ref: '#/components/schemas/ServiceUnavailableException' parameters: - name: jobId in: path required: true description: The unique identifier you assigned to this job when it was created. schema: type: string pattern: '[a-zA-Z0-9_-]+' minLength: 1 maxLength: 64 summary: Amazon IoT Device Management Get Job Document x-microcks-operation: delay: 0 dispatcher: FALLBACK tags: - Jobs /jobs/{jobId}/things: 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: ListJobExecutionsForJob description:

Lists the job executions for a job.

Requires permission to access the ListJobExecutionsForJob action.

responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ListJobExecutionsForJobResponse' '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: ServiceUnavailableException content: application/json: schema: $ref: '#/components/schemas/ServiceUnavailableException' parameters: - name: jobId in: path required: true description: The unique identifier you assigned to this job when it was created. schema: type: string pattern: '[a-zA-Z0-9_-]+' minLength: 1 maxLength: 64 - name: status in: query required: false description: The status of the job. schema: type: string enum: - QUEUED - IN_PROGRESS - SUCCEEDED - FAILED - TIMED_OUT - REJECTED - REMOVED - CANCELED - name: maxResults in: query required: false description: The maximum number of results to be returned per request. schema: type: integer minimum: 1 maximum: 250 - name: nextToken in: query required: false description: The token to retrieve the next set of results. schema: type: string summary: Amazon IoT Device Management List Job Executions for Job x-microcks-operation: delay: 0 dispatcher: FALLBACK tags: - Jobs /jobs: 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: ListJobs description:

Lists jobs.

Requires permission to access the ListJobs action.

responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ListJobsResponse' '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: ServiceUnavailableException content: application/json: schema: $ref: '#/components/schemas/ServiceUnavailableException' parameters: - name: status in: query required: false description: An optional filter that lets you search for jobs that have the specified status. schema: type: string enum: - IN_PROGRESS - CANCELED - COMPLETED - DELETION_IN_PROGRESS - SCHEDULED - name: targetSelection in: query required: false description:

Specifies whether the job will continue to run (CONTINUOUS), or will be complete after all those things specified as targets have completed the job (SNAPSHOT). If continuous, the job may also be run on a thing when a change is detected in a target. For example, a job will run on a thing when the thing is added to a target group, even after the job was completed by all things originally in the group.

We recommend that you use continuous jobs instead of snapshot jobs for dynamic thing group targets. By using continuous jobs, devices that join the group receive the job execution even after the job has been created.

schema: type: string enum: - CONTINUOUS - SNAPSHOT - name: maxResults in: query required: false description: The maximum number of results to return per request. schema: type: integer minimum: 1 maximum: 250 - name: nextToken in: query required: false description: The token to retrieve the next set of results. schema: type: string - name: thingGroupName in: query required: false description: A filter that limits the returned jobs to those for the specified group. schema: type: string pattern: '[a-zA-Z0-9:_-]+' minLength: 1 maxLength: 128 - name: thingGroupId in: query required: false description: A filter that limits the returned jobs to those for the specified group. schema: type: string pattern: '[a-zA-Z0-9\-]+' minLength: 1 maxLength: 128 - name: namespaceId in: query required: false description:

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

schema: type: string pattern: '[a-zA-Z0-9_-]+' summary: Amazon IoT Device Management List Jobs x-microcks-operation: delay: 0 dispatcher: FALLBACK tags: - Jobs components: schemas: SucceededThings: type: integer RetryAttempt: type: integer ServiceUnavailableException: {} ScheduledJobRolloutList: type: array items: $ref: '#/components/schemas/ScheduledJobRollout' ListJobsResponse: type: object properties: jobs: allOf: - $ref: '#/components/schemas/JobSummaryList' - description: A list of jobs. nextToken: allOf: - $ref: '#/components/schemas/NextToken' - description: The token for the next set of results, or null if there are no additional results. QueuedThings: type: integer MinimumNumberOfExecutedThings: type: integer minimum: 1 NamespaceId: type: string pattern: '[a-zA-Z0-9_-]+' ResourceAlreadyExistsException: {} RolloutRatePerMinute: type: integer minimum: 1 maximum: 1000 GetJobDocumentResponse: type: object properties: document: allOf: - $ref: '#/components/schemas/JobDocument' - description: The job document content. ParameterMap: type: object additionalProperties: $ref: '#/components/schemas/ParameterValue' ProcessingTargetName: type: string Comment: type: string pattern: '[^\p{C}]+' maxLength: 2028 JobExecutionSummary: type: object properties: status: allOf: - $ref: '#/components/schemas/JobExecutionStatus' - description: The status of the job execution. queuedAt: allOf: - $ref: '#/components/schemas/DateType' - description: The time, in seconds since the epoch, when the job execution was queued. startedAt: allOf: - $ref: '#/components/schemas/DateType' - description: The time, in seconds since the epoch, when the job execution started. lastUpdatedAt: allOf: - $ref: '#/components/schemas/DateType' - description: The time, in seconds since the epoch, when the job execution was last updated. executionNumber: allOf: - $ref: '#/components/schemas/ExecutionNumber' - description: A string (consisting of the digits "0" through "9") which identifies this particular job execution on this particular device. It can be used later in commands which return or update job execution information. retryAttempt: allOf: - $ref: '#/components/schemas/RetryAttempt' - description: The number that indicates how many retry attempts have been completed for this job on this device. description: The job execution summary. RetryableFailureType: type: string enum: - FAILED - TIMED_OUT - ALL JobStatus: type: string enum: - IN_PROGRESS - CANCELED - COMPLETED - DELETION_IN_PROGRESS - SCHEDULED ExecutionNumber: type: integer ListJobExecutionsForJobResponse: type: object properties: executionSummaries: allOf: - $ref: '#/components/schemas/JobExecutionSummaryForJobList' - description: A list of job execution summaries. nextToken: allOf: - $ref: '#/components/schemas/NextToken' - description: The token for the next set of results, or null if there are no additional results. JobDocument: type: string maxLength: 32768 NumberOfRetries: type: integer minimum: 0 maximum: 10 JobSummary: type: object properties: jobArn: allOf: - $ref: '#/components/schemas/JobArn' - description: The job ARN. jobId: allOf: - $ref: '#/components/schemas/JobId' - description: The unique identifier you assigned to this job when it was created. thingGroupId: allOf: - $ref: '#/components/schemas/ThingGroupId' - description: The ID of the thing group. targetSelection: allOf: - $ref: '#/components/schemas/TargetSelection' - description:

Specifies whether the job will continue to run (CONTINUOUS), or will be complete after all those things specified as targets have completed the job (SNAPSHOT). If continuous, the job may also be run on a thing when a change is detected in a target. For example, a job will run on a thing when the thing is added to a target group, even after the job was completed by all things originally in the group.

We recommend that you use continuous jobs instead of snapshot jobs for dynamic thing group targets. By using continuous jobs, devices that join the group receive the job execution even after the job has been created.

status: allOf: - $ref: '#/components/schemas/JobStatus' - description: The job summary status. createdAt: allOf: - $ref: '#/components/schemas/DateType' - description: The time, in seconds since the epoch, when the job was created. lastUpdatedAt: allOf: - $ref: '#/components/schemas/DateType' - description: The time, in seconds since the epoch, when the job was last updated. completedAt: allOf: - $ref: '#/components/schemas/DateType' - description: The time, in seconds since the epoch, when the job completed. isConcurrent: allOf: - $ref: '#/components/schemas/BooleanWrapperObject' - description: Indicates whether a job is concurrent. Will be true when a job is rolling out new job executions or canceling previously created executions, otherwise false. description: The job summary. Job: type: object properties: jobArn: allOf: - $ref: '#/components/schemas/JobArn' - description: An ARN identifying the job with format "arn:aws:iot:region:account:job/jobId". jobId: allOf: - $ref: '#/components/schemas/JobId' - description: The unique identifier you assigned to this job when it was created. targetSelection: allOf: - $ref: '#/components/schemas/TargetSelection' - description:

Specifies whether the job will continue to run (CONTINUOUS), or will be complete after all those things specified as targets have completed the job (SNAPSHOT). If continuous, the job may also be run on a thing when a change is detected in a target. For example, a job will run on a device when the thing representing the device is added to a target group, even after the job was completed by all things originally in the group.

We recommend that you use continuous jobs instead of snapshot jobs for dynamic thing group targets. By using continuous jobs, devices that join the group receive the job execution even after the job has been created.

status: allOf: - $ref: '#/components/schemas/JobStatus' - description: 'The status of the job, one of IN_PROGRESS, CANCELED, DELETION_IN_PROGRESS or COMPLETED. ' forceCanceled: allOf: - $ref: '#/components/schemas/Forced' - description: Will be true if the job was canceled with the optional force parameter set to true. reasonCode: allOf: - $ref: '#/components/schemas/ReasonCode' - description: If the job was updated, provides the reason code for the update. comment: allOf: - $ref: '#/components/schemas/Comment' - description: If the job was updated, describes the reason for the update. targets: allOf: - $ref: '#/components/schemas/JobTargets' - description: A list of IoT things and thing groups to which the job should be sent. description: allOf: - $ref: '#/components/schemas/JobDescription' - description: A short text description of the job. presignedUrlConfig: allOf: - $ref: '#/components/schemas/PresignedUrlConfig' - description: Configuration for pre-signed S3 URLs. jobExecutionsRolloutConfig: allOf: - $ref: '#/components/schemas/JobExecutionsRolloutConfig' - description: Allows you to create a staged rollout of a job. abortConfig: allOf: - $ref: '#/components/schemas/AbortConfig' - description: Configuration for criteria to abort the job. createdAt: allOf: - $ref: '#/components/schemas/DateType' - description: The time, in seconds since the epoch, when the job was created. lastUpdatedAt: allOf: - $ref: '#/components/schemas/DateType' - description: The time, in seconds since the epoch, when the job was last updated. completedAt: allOf: - $ref: '#/components/schemas/DateType' - description: The time, in seconds since the epoch, when the job was completed. jobProcessDetails: allOf: - $ref: '#/components/schemas/JobProcessDetails' - description: Details about the job process. timeoutConfig: allOf: - $ref: '#/components/schemas/TimeoutConfig' - 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. namespaceId: allOf: - $ref: '#/components/schemas/NamespaceId' - description:

The namespace used to indicate that a job is a customer-managed job.

When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to MQTT topics that contain the value in the following format.

$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/

The namespaceId feature is in public preview.

jobTemplateArn: allOf: - $ref: '#/components/schemas/JobTemplateArn' - description: The ARN of the job template used to create the job. jobExecutionsRetryConfig: allOf: - $ref: '#/components/schemas/JobExecutionsRetryConfig' - description: The configuration for the criteria to retry the job. documentParameters: allOf: - $ref: '#/components/schemas/ParameterMap' - description:

A key-value map that pairs the patterns that need to be replaced in a managed template job document schema. You can use the description of each key as a guidance to specify the inputs during runtime when creating a job.

documentParameters can only be used when creating jobs from Amazon Web Services managed templates. This parameter can't be used with custom job templates or to create jobs from them.

isConcurrent: allOf: - $ref: '#/components/schemas/BooleanWrapperObject' - description: Indicates whether a job is concurrent. Will be true when a job is rolling out new job executions or canceling previously created executions, otherwise false. schedulingConfig: allOf: - $ref: '#/components/schemas/SchedulingConfig' - description: The configuration that allows you to schedule a job for a future date and time in addition to specifying the end behavior for each job execution. scheduledJobRollouts: allOf: - $ref: '#/components/schemas/ScheduledJobRolloutList' - description: Displays the next seven maintenance window occurrences and their start times. description: The Job object contains details about a job. ScheduledJobRollout: type: object properties: startTime: allOf: - $ref: '#/components/schemas/StringDateTime' - description: Displays the start times of the next seven maintenance window occurrences. description: Displays the next seven maintenance window occurrences and their start times. AbortConfig: type: object required: - criteriaList properties: criteriaList: allOf: - $ref: '#/components/schemas/AbortCriteriaList' - description: The list of criteria that determine when and how to abort the job. description: The criteria that determine when and how a job abort takes place. JobExecutionSummaryForJob: type: object properties: thingArn: allOf: - $ref: '#/components/schemas/ThingArn' - description: The ARN of the thing on which the job execution is running. jobExecutionSummary: allOf: - $ref: '#/components/schemas/JobExecutionSummary' - description: Contains a subset of information about a job execution. description: Contains a summary of information about job executions for a specific job. ExponentialRolloutRate: type: object required: - baseRatePerMinute - incrementFactor - rateIncreaseCriteria properties: baseRatePerMinute: allOf: - $ref: '#/components/schemas/RolloutRatePerMinute' - description: The minimum number of things that will be notified of a pending job, per minute at the start of job rollout. This parameter allows you to define the initial rate of rollout. incrementFactor: allOf: - $ref: '#/components/schemas/IncrementFactor' - description:

The exponential factor to increase the 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).

rateIncreaseCriteria: allOf: - $ref: '#/components/schemas/RateIncreaseCriteria' - description: The criteria to initiate the increase in rate of rollout for a job. description: Allows you to create an exponential rate of rollout for a job. RetryCriteriaList: type: array items: $ref: '#/components/schemas/RetryCriteria' minItems: 1 maxItems: 2 TimeoutConfig: type: object properties: inProgressTimeoutInMinutes: allOf: - $ref: '#/components/schemas/InProgressTimeoutInMinutes' - 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. 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. AbortCriteriaList: type: array items: $ref: '#/components/schemas/AbortCriteria' minItems: 1 Forced: type: boolean JobProcessDetails: type: object properties: processingTargets: allOf: - $ref: '#/components/schemas/ProcessingTargetNameList' - description: The target devices to which the job execution is being rolled out. This value will be null after the job execution has finished rolling out to all the target devices. numberOfCanceledThings: allOf: - $ref: '#/components/schemas/CanceledThings' - description: The number of things that cancelled the job. numberOfSucceededThings: allOf: - $ref: '#/components/schemas/SucceededThings' - description: The number of things which successfully completed the job. numberOfFailedThings: allOf: - $ref: '#/components/schemas/FailedThings' - description: The number of things that failed executing the job. numberOfRejectedThings: allOf: - $ref: '#/components/schemas/RejectedThings' - description: The number of things that rejected the job. numberOfQueuedThings: allOf: - $ref: '#/components/schemas/QueuedThings' - description: The number of things that are awaiting execution of the job. numberOfInProgressThings: allOf: - $ref: '#/components/schemas/InProgressThings' - description: The number of things currently executing the job. numberOfRemovedThings: allOf: - $ref: '#/components/schemas/RemovedThings' - description: The number of things that are no longer scheduled to execute the job because they have been deleted or have been removed from the group that was a target of the job. numberOfTimedOutThings: allOf: - $ref: '#/components/schemas/TimedOutThings' - description: The number of things whose job execution status is TIMED_OUT. description: The job process details. RemovedThings: type: integer ThingGroupId: type: string pattern: '[a-zA-Z0-9\-]+' minLength: 1 maxLength: 128 TimedOutThings: type: integer RetryCriteria: type: object required: - failureType - numberOfRetries properties: failureType: allOf: - $ref: '#/components/schemas/RetryableFailureType' - description: The type of job execution failures that can initiate a job retry. numberOfRetries: allOf: - $ref: '#/components/schemas/NumberOfRetries' - description: The number of retries allowed for a failure type for the job. description: The criteria that determines how many retries are allowed for each failure type for a job. InvalidRequestException: {} ReasonCode: type: string pattern: '[\p{Upper}\p{Digit}_]+' maxLength: 128 CronExpression: type: string minLength: 1 maxLength: 256 CreateJobResponse: type: object properties: jobArn: allOf: - $ref: '#/components/schemas/JobArn' - description: The job ARN. jobId: allOf: - $ref: '#/components/schemas/JobId' - description: The unique identifier you assigned to this job. description: allOf: - $ref: '#/components/schemas/JobDescription' - description: The job description. AbortAction: type: string enum: - CANCEL CancelJobResponse: type: object properties: jobArn: allOf: - $ref: '#/components/schemas/JobArn' - description: The job ARN. jobId: allOf: - $ref: '#/components/schemas/JobId' - description: The unique identifier you assigned to this job when it was created. description: allOf: - $ref: '#/components/schemas/JobDescription' - description: A short text description of the job. JobExecutionStatus: type: string enum: - QUEUED - IN_PROGRESS - SUCCEEDED - FAILED - TIMED_OUT - REJECTED - REMOVED - CANCELED AssociateTargetsWithJobResponse: type: object properties: jobArn: allOf: - $ref: '#/components/schemas/JobArn' - description: An ARN identifying the job. jobId: allOf: - $ref: '#/components/schemas/JobId' - description: The unique identifier you assigned to this job when it was created. description: allOf: - $ref: '#/components/schemas/JobDescription' - description: A short text description of the job. SchedulingConfig: type: object properties: startTime: allOf: - $ref: '#/components/schemas/StringDateTime' - description: The time a job will begin rollout of the job document to all devices in the target group for a job. The startTime can be scheduled up to a year in advance and must be scheduled a minimum of thirty minutes from the current time. The date and time format for the startTime is YYYY-MM-DD for the date and HH:MM for the time. endTime: allOf: - $ref: '#/components/schemas/StringDateTime' - description: The time a job will stop rollout of the job document to all devices in the target group for a job. The endTime must take place no later than two years from the current time and be scheduled a minimum of thirty minutes from the current time. The minimum duration between startTime and endTime is thirty minutes. The maximum duration between startTime and endTime is two years. The date and time format for the endTime is YYYY-MM-DD for the date and HH:MM for the time. endBehavior: allOf: - $ref: '#/components/schemas/JobEndBehavior' - description: Specifies the end behavior for all job executions after a job reaches the selected endTime. If endTime is not selected when creating the job, then endBehavior does not apply. maintenanceWindows: allOf: - $ref: '#/components/schemas/MaintenanceWindows' - description: An optional configuration within the SchedulingConfig to setup a recurring maintenance window with a predetermined start time and duration for the rollout of a job document to all devices in a target group for a job. description: Specifies the date and time that a job will begin the rollout of the job document to all devices in the target group. Additionally, you can specify the end behavior for each job execution when it reaches the scheduled end time. JobExecutionsRetryConfig: type: object required: - criteriaList properties: criteriaList: allOf: - $ref: '#/components/schemas/RetryCriteriaList' - description: The list of criteria that determines how many retries are allowed for each failure type for a job. description: The configuration that determines how many retries are allowed for each failure type for a job. 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. FailedThings: type: integer MaintenanceWindows: type: array items: $ref: '#/components/schemas/MaintenanceWindow' MaintenanceWindow: type: object required: - startTime - durationInMinutes properties: startTime: allOf: - $ref: '#/components/schemas/CronExpression' - description: Displays the start time of the next maintenance window. durationInMinutes: allOf: - $ref: '#/components/schemas/DurationInMinutes' - description: Displays the duration of the next maintenance window. description: An optional configuration within the SchedulingConfig to setup a recurring maintenance window with a predetermined start time and duration for the rollout of a job document to all devices in a target group for a job. NumberOfThings: type: integer minimum: 1 JobDocumentSource: type: string minLength: 1 maxLength: 1350 JobExecutionFailureType: type: string enum: - FAILED - REJECTED - TIMED_OUT - ALL InProgressTimeoutInMinutes: type: integer RejectedThings: type: integer JobExecutionSummaryForJobList: type: array items: $ref: '#/components/schemas/JobExecutionSummaryForJob' AbortCriteria: type: object required: - failureType - action - thresholdPercentage - minNumberOfExecutedThings properties: failureType: allOf: - $ref: '#/components/schemas/JobExecutionFailureType' - description: The type of job execution failures that can initiate a job abort. action: allOf: - $ref: '#/components/schemas/AbortAction' - description: The type of job action to take to initiate the job abort. thresholdPercentage: allOf: - $ref: '#/components/schemas/AbortThresholdPercentage' - 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/MinimumNumberOfExecutedThings' - 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. ResourceNotFoundException: {} JobEndBehavior: type: string enum: - STOP_ROLLOUT - CANCEL - FORCE_CANCEL JobSummaryList: type: array items: $ref: '#/components/schemas/JobSummary' MaxJobExecutionsPerMin: type: integer minimum: 1 TagValue: type: string minLength: 0 maxLength: 256 RoleArn: type: string minLength: 20 maxLength: 2048 JobExecutionsRolloutConfig: type: object properties: maximumPerMinute: allOf: - $ref: '#/components/schemas/MaxJobExecutionsPerMin' - description: The maximum number of things that will be notified of a pending job, per minute. This parameter allows you to create a staged rollout. exponentialRate: allOf: - $ref: '#/components/schemas/ExponentialRolloutRate' - description: The rate of increase for a job rollout. This parameter allows you to define an exponential rate for a job rollout. description: Allows you to create a staged rollout of a job. CanceledThings: type: integer RateIncreaseCriteria: type: object properties: numberOfNotifiedThings: allOf: - $ref: '#/components/schemas/NumberOfThings' - description: The threshold for number of notified things that will initiate the increase in rate of rollout. numberOfSucceededThings: allOf: - $ref: '#/components/schemas/NumberOfThings' - description: The threshold for number of succeeded things that will initiate the increase in rate of rollout. description: Allows you to define a criteria to initiate the increase in rate of rollout for a job. TargetSelection: type: string enum: - CONTINUOUS - SNAPSHOT ThrottlingException: {} TagKey: type: string pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$ minLength: 1 maxLength: 128 InvalidStateTransitionException: {} DurationInMinutes: type: integer minimum: 30 maximum: 1430 LimitExceededException: {} AbortThresholdPercentage: type: number format: double maximum: 100 ThingArn: type: string JobTemplateArn: type: string pattern: ^arn:[!-~]+$ minLength: 1 maxLength: 1600 PresignedUrlConfig: type: object properties: roleArn: allOf: - $ref: '#/components/schemas/RoleArn' - description:

The ARN of an IAM role that grants grants permission to download files from the S3 bucket where the job data/updates are stored. The role must also grant permission for IoT to download the files.

For information about addressing the confused deputy problem, see cross-service confused deputy prevention in the Amazon Web Services IoT Core developer guide.

expiresInSec: allOf: - $ref: '#/components/schemas/ExpiresInSec' - description: How long (in seconds) pre-signed URLs are valid. Valid values are 60 - 3600, the default value is 3600 seconds. Pre-signed URLs are generated when Jobs receives an MQTT request for the job document. description: Configuration for pre-signed S3 URLs. IncrementFactor: type: number format: double minimum: 1.1 maximum: 5 JobTargets: type: array items: $ref: '#/components/schemas/TargetArn' minItems: 1 ProcessingTargetNameList: type: array items: $ref: '#/components/schemas/ProcessingTargetName' TargetArn: type: string maxLength: 2048 NextToken: type: string JobArn: type: string JobId: type: string pattern: '[a-zA-Z0-9_-]+' minLength: 1 maxLength: 64 ExpiresInSec: type: integer minimum: 60 maximum: 3600 JobDescription: type: string pattern: '[^\p{C}]+' maxLength: 2028 ParameterValue: type: string pattern: '[^\p{C}]+' minLength: 1 maxLength: 512 DateType: type: string format: date-time BooleanWrapperObject: type: boolean InProgressThings: type: integer StringDateTime: type: string minLength: 1 maxLength: 64 DescribeJobResponse: type: object properties: documentSource: allOf: - $ref: '#/components/schemas/JobDocumentSource' - description: An S3 link to the job document. job: allOf: - $ref: '#/components/schemas/Job' - description: Information about the job. parameters: 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-Content-Sha256: name: X-Amz-Content-Sha256 in: header schema: type: string required: false X-Amz-Credential: name: X-Amz-Credential in: header schema: type: string required: false X-Amz-Signature: name: X-Amz-Signature in: header schema: type: string required: false 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 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