CreateFuotaTask - AWS IoT Wireless

CreateFuotaTask

Creates a FUOTA task.

Request Syntax

POST /fuota-tasks HTTP/1.1 Content-type: application/json { "ClientRequestToken": "string", "Description": "string", "FirmwareUpdateImage": "string", "FirmwareUpdateRole": "string", "FragmentIntervalMS": number, "FragmentSizeBytes": number, "LoRaWAN": { "RfRegion": "string" }, "Name": "string", "RedundancyPercent": number, "Tags": [ { "Key": "string", "Value": "string" } ] }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.

ClientRequestToken

Each resource must have a unique client request token. The client token is used to implement idempotency. It ensures that the request completes no more than one time. If you retry a request with the same token and the same parameters, the request will complete successfully. However, if you try to create a new resource using the same token but different parameters, an HTTP 409 conflict occurs. If you omit this value, AWS SDKs will automatically generate a unique client request. For more information about idempotency, see Ensuring idempotency in Amazon EC2 API requests.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: ^[a-zA-Z0-9-_]+$

Required: No

Description

The description of the new resource.

Type: String

Length Constraints: Maximum length of 2048.

Required: No

FirmwareUpdateImage

The S3 URI points to a firmware update image that is to be used with a FUOTA task.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 4096.

Required: Yes

FirmwareUpdateRole

The firmware update role that is to be used with a FUOTA task.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 2048.

Required: Yes

FragmentIntervalMS

The interval for sending fragments in milliseconds, rounded to the nearest second.

Note

This interval only determines the timing for when the Cloud sends down the fragments to yor device. There can be a delay for when your device will receive these fragments. This delay depends on the device's class and the communication delay with the cloud.

Type: Integer

Valid Range: Minimum value of 1.

Required: No

FragmentSizeBytes

The size of each fragment in bytes. This parameter is supported only for FUOTA tasks with multicast groups.

Type: Integer

Valid Range: Minimum value of 1.

Required: No

LoRaWAN

The LoRaWAN information used with a FUOTA task.

Type: LoRaWANFuotaTask object

Required: No

Name

The name of a FUOTA task.

Type: String

Length Constraints: Maximum length of 256.

Required: No

RedundancyPercent

The percentage of the added fragments that are redundant. For example, if the size of the firmware image file is 100 bytes and the fragment size is 10 bytes, with RedundancyPercent set to 50(%), the final number of encoded fragments is (100 / 10) + (100 / 10 * 50%) = 15.

Type: Integer

Valid Range: Minimum value of 0. Maximum value of 100.

Required: No

Tags

The tag to attach to the specified resource. Tags are metadata that you can use to manage a resource.

Type: Array of Tag objects

Array Members: Minimum number of 0 items. Maximum number of 200 items.

Required: No

Response Syntax

HTTP/1.1 201 Content-type: application/json { "Arn": "string", "Id": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 201 response.

The following data is returned in JSON format by the service.

Arn

The arn of a FUOTA task.

Type: String

Length Constraints: Maximum length of 128.

Id

The ID of a FUOTA task.

Type: String

Length Constraints: Maximum length of 256.

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

User does not have permission to perform this action.

HTTP Status Code: 403

ConflictException

Adding, updating, or deleting the resource can cause an inconsistent state.

HTTP Status Code: 409

InternalServerException

An unexpected error occurred while processing a request.

HTTP Status Code: 500

ResourceNotFoundException

Resource does not exist.

HTTP Status Code: 404

ThrottlingException

The request was denied because it exceeded the allowed API request rate.

HTTP Status Code: 429

ValidationException

The input did not meet the specified constraints.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: