createDeviceProfile method
Creates a new device profile.
May throw AccessDeniedException.
May throw ConflictException.
May throw InternalServerException.
May throw ThrottlingException.
May throw ValidationException.
Parameter 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.
Parameter loRaWAN :
The device profile information to use to create the device profile.
Parameter name :
The name of the new resource.
Parameter sidewalk :
The Sidewalk-related information for creating the Sidewalk device profile.
Parameter tags :
The tags to attach to the new device profile. Tags are metadata that you
can use to manage a resource.
Implementation
Future<CreateDeviceProfileResponse> createDeviceProfile({
String? clientRequestToken,
LoRaWANDeviceProfile? loRaWAN,
String? name,
SidewalkCreateDeviceProfile? sidewalk,
List<Tag>? tags,
}) async {
final $payload = <String, dynamic>{
'ClientRequestToken': clientRequestToken ?? _s.generateIdempotencyToken(),
if (loRaWAN != null) 'LoRaWAN': loRaWAN,
if (name != null) 'Name': name,
if (sidewalk != null) 'Sidewalk': sidewalk,
if (tags != null) 'Tags': tags,
};
final response = await _protocol.send(
payload: $payload,
method: 'POST',
requestUri: '/device-profiles',
exceptionFnMap: _exceptionFns,
);
return CreateDeviceProfileResponse.fromJson(response);
}