{
  "version":"2.0",
  "metadata":{
    "apiVersion":"2020-11-22",
    "endpointPrefix":"api.iotwireless",
    "protocol":"rest-json",
    "serviceFullName":"AWS IoT Wireless",
    "serviceId":"IoT Wireless",
    "signatureVersion":"v4",
    "signingName":"iotwireless",
    "uid":"iotwireless-2020-11-22"
  },
  "operations":{
    "AssociateAwsAccountWithPartnerAccount":{
      "name":"AssociateAwsAccountWithPartnerAccount",
      "http":{
        "method":"POST",
        "requestUri":"/partner-accounts"
      },
      "input":{"shape":"AssociateAwsAccountWithPartnerAccountRequest"},
      "output":{"shape":"AssociateAwsAccountWithPartnerAccountResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"},
        {"shape":"ConflictException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Associates a partner account with your AWS account.</p>"
    },
    "AssociateWirelessDeviceWithThing":{
      "name":"AssociateWirelessDeviceWithThing",
      "http":{
        "method":"PUT",
        "requestUri":"/wireless-devices/{Id}/thing",
        "responseCode":204
      },
      "input":{"shape":"AssociateWirelessDeviceWithThingRequest"},
      "output":{"shape":"AssociateWirelessDeviceWithThingResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerException"}
      ],
      "documentation":"<p>Associates a wireless device with a thing.</p>"
    },
    "AssociateWirelessGatewayWithCertificate":{
      "name":"AssociateWirelessGatewayWithCertificate",
      "http":{
        "method":"PUT",
        "requestUri":"/wireless-gateways/{Id}/certificate"
      },
      "input":{"shape":"AssociateWirelessGatewayWithCertificateRequest"},
      "output":{"shape":"AssociateWirelessGatewayWithCertificateResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Associates a wireless gateway with a certificate.</p>"
    },
    "AssociateWirelessGatewayWithThing":{
      "name":"AssociateWirelessGatewayWithThing",
      "http":{
        "method":"PUT",
        "requestUri":"/wireless-gateways/{Id}/thing",
        "responseCode":204
      },
      "input":{"shape":"AssociateWirelessGatewayWithThingRequest"},
      "output":{"shape":"AssociateWirelessGatewayWithThingResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerException"}
      ],
      "documentation":"<p>Associates a wireless gateway with a thing.</p>"
    },
    "CreateDestination":{
      "name":"CreateDestination",
      "http":{
        "method":"POST",
        "requestUri":"/destinations",
        "responseCode":201
      },
      "input":{"shape":"CreateDestinationRequest"},
      "output":{"shape":"CreateDestinationResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates a new destination that maps a device message to an AWS IoT rule.</p>"
    },
    "CreateDeviceProfile":{
      "name":"CreateDeviceProfile",
      "http":{
        "method":"POST",
        "requestUri":"/device-profiles",
        "responseCode":201
      },
      "input":{"shape":"CreateDeviceProfileRequest"},
      "output":{"shape":"CreateDeviceProfileResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates a new device profile.</p>"
    },
    "CreateServiceProfile":{
      "name":"CreateServiceProfile",
      "http":{
        "method":"POST",
        "requestUri":"/service-profiles",
        "responseCode":201
      },
      "input":{"shape":"CreateServiceProfileRequest"},
      "output":{"shape":"CreateServiceProfileResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates a new service profile.</p>"
    },
    "CreateWirelessDevice":{
      "name":"CreateWirelessDevice",
      "http":{
        "method":"POST",
        "requestUri":"/wireless-devices",
        "responseCode":201
      },
      "input":{"shape":"CreateWirelessDeviceRequest"},
      "output":{"shape":"CreateWirelessDeviceResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Provisions a wireless device.</p>"
    },
    "CreateWirelessGateway":{
      "name":"CreateWirelessGateway",
      "http":{
        "method":"POST",
        "requestUri":"/wireless-gateways",
        "responseCode":201
      },
      "input":{"shape":"CreateWirelessGatewayRequest"},
      "output":{"shape":"CreateWirelessGatewayResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Provisions a wireless gateway.</p>"
    },
    "CreateWirelessGatewayTask":{
      "name":"CreateWirelessGatewayTask",
      "http":{
        "method":"POST",
        "requestUri":"/wireless-gateways/{Id}/tasks",
        "responseCode":201
      },
      "input":{"shape":"CreateWirelessGatewayTaskRequest"},
      "output":{"shape":"CreateWirelessGatewayTaskResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates a task for a wireless gateway.</p>"
    },
    "CreateWirelessGatewayTaskDefinition":{
      "name":"CreateWirelessGatewayTaskDefinition",
      "http":{
        "method":"POST",
        "requestUri":"/wireless-gateway-task-definitions",
        "responseCode":201
      },
      "input":{"shape":"CreateWirelessGatewayTaskDefinitionRequest"},
      "output":{"shape":"CreateWirelessGatewayTaskDefinitionResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Creates a gateway task definition.</p>"
    },
    "DeleteDestination":{
      "name":"DeleteDestination",
      "http":{
        "method":"DELETE",
        "requestUri":"/destinations/{Name}",
        "responseCode":204
      },
      "input":{"shape":"DeleteDestinationRequest"},
      "output":{"shape":"DeleteDestinationResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes a destination.</p>"
    },
    "DeleteDeviceProfile":{
      "name":"DeleteDeviceProfile",
      "http":{
        "method":"DELETE",
        "requestUri":"/device-profiles/{Id}",
        "responseCode":204
      },
      "input":{"shape":"DeleteDeviceProfileRequest"},
      "output":{"shape":"DeleteDeviceProfileResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes a device profile.</p>"
    },
    "DeleteServiceProfile":{
      "name":"DeleteServiceProfile",
      "http":{
        "method":"DELETE",
        "requestUri":"/service-profiles/{Id}",
        "responseCode":204
      },
      "input":{"shape":"DeleteServiceProfileRequest"},
      "output":{"shape":"DeleteServiceProfileResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes a service profile.</p>"
    },
    "DeleteWirelessDevice":{
      "name":"DeleteWirelessDevice",
      "http":{
        "method":"DELETE",
        "requestUri":"/wireless-devices/{Id}",
        "responseCode":204
      },
      "input":{"shape":"DeleteWirelessDeviceRequest"},
      "output":{"shape":"DeleteWirelessDeviceResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes a wireless device.</p>"
    },
    "DeleteWirelessGateway":{
      "name":"DeleteWirelessGateway",
      "http":{
        "method":"DELETE",
        "requestUri":"/wireless-gateways/{Id}",
        "responseCode":204
      },
      "input":{"shape":"DeleteWirelessGatewayRequest"},
      "output":{"shape":"DeleteWirelessGatewayResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes a wireless gateway.</p>"
    },
    "DeleteWirelessGatewayTask":{
      "name":"DeleteWirelessGatewayTask",
      "http":{
        "method":"DELETE",
        "requestUri":"/wireless-gateways/{Id}/tasks",
        "responseCode":204
      },
      "input":{"shape":"DeleteWirelessGatewayTaskRequest"},
      "output":{"shape":"DeleteWirelessGatewayTaskResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes a wireless gateway task.</p>"
    },
    "DeleteWirelessGatewayTaskDefinition":{
      "name":"DeleteWirelessGatewayTaskDefinition",
      "http":{
        "method":"DELETE",
        "requestUri":"/wireless-gateway-task-definitions/{Id}",
        "responseCode":204
      },
      "input":{"shape":"DeleteWirelessGatewayTaskDefinitionRequest"},
      "output":{"shape":"DeleteWirelessGatewayTaskDefinitionResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Deletes a wireless gateway task definition. Deleting this task definition does not affect tasks that are currently in progress.</p>"
    },
    "DisassociateAwsAccountFromPartnerAccount":{
      "name":"DisassociateAwsAccountFromPartnerAccount",
      "http":{
        "method":"DELETE",
        "requestUri":"/partner-accounts/{PartnerAccountId}",
        "responseCode":204
      },
      "input":{"shape":"DisassociateAwsAccountFromPartnerAccountRequest"},
      "output":{"shape":"DisassociateAwsAccountFromPartnerAccountResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Disassociates your AWS account from a partner account. If <code>PartnerAccountId</code> and <code>PartnerType</code> are <code>null</code>, disassociates your AWS account from all partner accounts.</p>"
    },
    "DisassociateWirelessDeviceFromThing":{
      "name":"DisassociateWirelessDeviceFromThing",
      "http":{
        "method":"DELETE",
        "requestUri":"/wireless-devices/{Id}/thing",
        "responseCode":204
      },
      "input":{"shape":"DisassociateWirelessDeviceFromThingRequest"},
      "output":{"shape":"DisassociateWirelessDeviceFromThingResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerException"}
      ],
      "documentation":"<p>Disassociates a wireless device from its currently associated thing.</p>"
    },
    "DisassociateWirelessGatewayFromCertificate":{
      "name":"DisassociateWirelessGatewayFromCertificate",
      "http":{
        "method":"DELETE",
        "requestUri":"/wireless-gateways/{Id}/certificate",
        "responseCode":204
      },
      "input":{"shape":"DisassociateWirelessGatewayFromCertificateRequest"},
      "output":{"shape":"DisassociateWirelessGatewayFromCertificateResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Disassociates a wireless gateway from its currently associated certificate.</p>"
    },
    "DisassociateWirelessGatewayFromThing":{
      "name":"DisassociateWirelessGatewayFromThing",
      "http":{
        "method":"DELETE",
        "requestUri":"/wireless-gateways/{Id}/thing",
        "responseCode":204
      },
      "input":{"shape":"DisassociateWirelessGatewayFromThingRequest"},
      "output":{"shape":"DisassociateWirelessGatewayFromThingResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ConflictException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerException"}
      ],
      "documentation":"<p>Disassociates a wireless gateway from its currently associated thing.</p>"
    },
    "GetDestination":{
      "name":"GetDestination",
      "http":{
        "method":"GET",
        "requestUri":"/destinations/{Name}"
      },
      "input":{"shape":"GetDestinationRequest"},
      "output":{"shape":"GetDestinationResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets information about a destination.</p>"
    },
    "GetDeviceProfile":{
      "name":"GetDeviceProfile",
      "http":{
        "method":"GET",
        "requestUri":"/device-profiles/{Id}"
      },
      "input":{"shape":"GetDeviceProfileRequest"},
      "output":{"shape":"GetDeviceProfileResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets information about a device profile.</p>"
    },
    "GetLogLevelsByResourceTypes":{
      "name":"GetLogLevelsByResourceTypes",
      "http":{
        "method":"GET",
        "requestUri":"/log-levels",
        "responseCode":200
      },
      "input":{"shape":"GetLogLevelsByResourceTypesRequest"},
      "output":{"shape":"GetLogLevelsByResourceTypesResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "documentation":"<p>Returns current default log levels or log levels by resource types. Based on resource types, log levels can be for wireless device log options or wireless gateway log options.</p>"
    },
    "GetPartnerAccount":{
      "name":"GetPartnerAccount",
      "http":{
        "method":"GET",
        "requestUri":"/partner-accounts/{PartnerAccountId}"
      },
      "input":{"shape":"GetPartnerAccountRequest"},
      "output":{"shape":"GetPartnerAccountResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets information about a partner account. If <code>PartnerAccountId</code> and <code>PartnerType</code> are <code>null</code>, returns all partner accounts.</p>"
    },
    "GetResourceLogLevel":{
      "name":"GetResourceLogLevel",
      "http":{
        "method":"GET",
        "requestUri":"/log-levels/{ResourceIdentifier}",
        "responseCode":200
      },
      "input":{"shape":"GetResourceLogLevelRequest"},
      "output":{"shape":"GetResourceLogLevelResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "documentation":"<p>Fetches the log-level override, if any, for a given resource-ID and resource-type. It can be used for a wireless device or a wireless gateway.</p>"
    },
    "GetServiceEndpoint":{
      "name":"GetServiceEndpoint",
      "http":{
        "method":"GET",
        "requestUri":"/service-endpoint"
      },
      "input":{"shape":"GetServiceEndpointRequest"},
      "output":{"shape":"GetServiceEndpointResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets the account-specific endpoint for Configuration and Update Server (CUPS) protocol or LoRaWAN Network Server (LNS) connections.</p>"
    },
    "GetServiceProfile":{
      "name":"GetServiceProfile",
      "http":{
        "method":"GET",
        "requestUri":"/service-profiles/{Id}"
      },
      "input":{"shape":"GetServiceProfileRequest"},
      "output":{"shape":"GetServiceProfileResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets information about a service profile.</p>"
    },
    "GetWirelessDevice":{
      "name":"GetWirelessDevice",
      "http":{
        "method":"GET",
        "requestUri":"/wireless-devices/{Identifier}"
      },
      "input":{"shape":"GetWirelessDeviceRequest"},
      "output":{"shape":"GetWirelessDeviceResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets information about a wireless device.</p>"
    },
    "GetWirelessDeviceStatistics":{
      "name":"GetWirelessDeviceStatistics",
      "http":{
        "method":"GET",
        "requestUri":"/wireless-devices/{Id}/statistics",
        "responseCode":200
      },
      "input":{"shape":"GetWirelessDeviceStatisticsRequest"},
      "output":{"shape":"GetWirelessDeviceStatisticsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets operating information about a wireless device.</p>"
    },
    "GetWirelessGateway":{
      "name":"GetWirelessGateway",
      "http":{
        "method":"GET",
        "requestUri":"/wireless-gateways/{Identifier}"
      },
      "input":{"shape":"GetWirelessGatewayRequest"},
      "output":{"shape":"GetWirelessGatewayResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets information about a wireless gateway.</p>"
    },
    "GetWirelessGatewayCertificate":{
      "name":"GetWirelessGatewayCertificate",
      "http":{
        "method":"GET",
        "requestUri":"/wireless-gateways/{Id}/certificate"
      },
      "input":{"shape":"GetWirelessGatewayCertificateRequest"},
      "output":{"shape":"GetWirelessGatewayCertificateResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets the ID of the certificate that is currently associated with a wireless gateway.</p>"
    },
    "GetWirelessGatewayFirmwareInformation":{
      "name":"GetWirelessGatewayFirmwareInformation",
      "http":{
        "method":"GET",
        "requestUri":"/wireless-gateways/{Id}/firmware-information"
      },
      "input":{"shape":"GetWirelessGatewayFirmwareInformationRequest"},
      "output":{"shape":"GetWirelessGatewayFirmwareInformationResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets the firmware version and other information about a wireless gateway.</p>"
    },
    "GetWirelessGatewayStatistics":{
      "name":"GetWirelessGatewayStatistics",
      "http":{
        "method":"GET",
        "requestUri":"/wireless-gateways/{Id}/statistics",
        "responseCode":200
      },
      "input":{"shape":"GetWirelessGatewayStatisticsRequest"},
      "output":{"shape":"GetWirelessGatewayStatisticsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets operating information about a wireless gateway.</p>"
    },
    "GetWirelessGatewayTask":{
      "name":"GetWirelessGatewayTask",
      "http":{
        "method":"GET",
        "requestUri":"/wireless-gateways/{Id}/tasks"
      },
      "input":{"shape":"GetWirelessGatewayTaskRequest"},
      "output":{"shape":"GetWirelessGatewayTaskResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets information about a wireless gateway task.</p>"
    },
    "GetWirelessGatewayTaskDefinition":{
      "name":"GetWirelessGatewayTaskDefinition",
      "http":{
        "method":"GET",
        "requestUri":"/wireless-gateway-task-definitions/{Id}"
      },
      "input":{"shape":"GetWirelessGatewayTaskDefinitionRequest"},
      "output":{"shape":"GetWirelessGatewayTaskDefinitionResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Gets information about a wireless gateway task definition.</p>"
    },
    "ListDestinations":{
      "name":"ListDestinations",
      "http":{
        "method":"GET",
        "requestUri":"/destinations"
      },
      "input":{"shape":"ListDestinationsRequest"},
      "output":{"shape":"ListDestinationsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Lists the destinations registered to your AWS account.</p>"
    },
    "ListDeviceProfiles":{
      "name":"ListDeviceProfiles",
      "http":{
        "method":"GET",
        "requestUri":"/device-profiles"
      },
      "input":{"shape":"ListDeviceProfilesRequest"},
      "output":{"shape":"ListDeviceProfilesResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Lists the device profiles registered to your AWS account.</p>"
    },
    "ListPartnerAccounts":{
      "name":"ListPartnerAccounts",
      "http":{
        "method":"GET",
        "requestUri":"/partner-accounts"
      },
      "input":{"shape":"ListPartnerAccountsRequest"},
      "output":{"shape":"ListPartnerAccountsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Lists the partner accounts associated with your AWS account.</p>"
    },
    "ListServiceProfiles":{
      "name":"ListServiceProfiles",
      "http":{
        "method":"GET",
        "requestUri":"/service-profiles"
      },
      "input":{"shape":"ListServiceProfilesRequest"},
      "output":{"shape":"ListServiceProfilesResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Lists the service profiles registered to your AWS account.</p>"
    },
    "ListTagsForResource":{
      "name":"ListTagsForResource",
      "http":{
        "method":"GET",
        "requestUri":"/tags"
      },
      "input":{"shape":"ListTagsForResourceRequest"},
      "output":{"shape":"ListTagsForResourceResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Lists the tags (metadata) you have assigned to the resource.</p>"
    },
    "ListWirelessDevices":{
      "name":"ListWirelessDevices",
      "http":{
        "method":"GET",
        "requestUri":"/wireless-devices"
      },
      "input":{"shape":"ListWirelessDevicesRequest"},
      "output":{"shape":"ListWirelessDevicesResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Lists the wireless devices registered to your AWS account.</p>"
    },
    "ListWirelessGatewayTaskDefinitions":{
      "name":"ListWirelessGatewayTaskDefinitions",
      "http":{
        "method":"GET",
        "requestUri":"/wireless-gateway-task-definitions"
      },
      "input":{"shape":"ListWirelessGatewayTaskDefinitionsRequest"},
      "output":{"shape":"ListWirelessGatewayTaskDefinitionsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>List the wireless gateway tasks definitions registered to your AWS account.</p>"
    },
    "ListWirelessGateways":{
      "name":"ListWirelessGateways",
      "http":{
        "method":"GET",
        "requestUri":"/wireless-gateways"
      },
      "input":{"shape":"ListWirelessGatewaysRequest"},
      "output":{"shape":"ListWirelessGatewaysResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Lists the wireless gateways registered to your AWS account.</p>"
    },
    "PutResourceLogLevel":{
      "name":"PutResourceLogLevel",
      "http":{
        "method":"PUT",
        "requestUri":"/log-levels/{ResourceIdentifier}",
        "responseCode":200
      },
      "input":{"shape":"PutResourceLogLevelRequest"},
      "output":{"shape":"PutResourceLogLevelResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "documentation":"<p>Sets the log-level override for a resource-ID and resource-type. This option can be specified for a wireless gateway or a wireless device. A limit of 200 log level override can be set per account.</p>"
    },
    "ResetAllResourceLogLevels":{
      "name":"ResetAllResourceLogLevels",
      "http":{
        "method":"DELETE",
        "requestUri":"/log-levels",
        "responseCode":204
      },
      "input":{"shape":"ResetAllResourceLogLevelsRequest"},
      "output":{"shape":"ResetAllResourceLogLevelsResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "documentation":"<p>Removes the log-level overrides for all resources; both wireless devices and wireless gateways.</p>"
    },
    "ResetResourceLogLevel":{
      "name":"ResetResourceLogLevel",
      "http":{
        "method":"DELETE",
        "requestUri":"/log-levels/{ResourceIdentifier}",
        "responseCode":204
      },
      "input":{"shape":"ResetResourceLogLevelRequest"},
      "output":{"shape":"ResetResourceLogLevelResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "documentation":"<p>Removes the log-level override, if any, for a specific resource-ID and resource-type. It can be used for a wireless device or a wireless gateway.</p>"
    },
    "SendDataToWirelessDevice":{
      "name":"SendDataToWirelessDevice",
      "http":{
        "method":"POST",
        "requestUri":"/wireless-devices/{Id}/data",
        "responseCode":202
      },
      "input":{"shape":"SendDataToWirelessDeviceRequest"},
      "output":{"shape":"SendDataToWirelessDeviceResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerException"}
      ],
      "documentation":"<p>Sends a decrypted application data frame to a device.</p>"
    },
    "TagResource":{
      "name":"TagResource",
      "http":{
        "method":"POST",
        "requestUri":"/tags",
        "responseCode":204
      },
      "input":{"shape":"TagResourceRequest"},
      "output":{"shape":"TagResourceResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"},
        {"shape":"TooManyTagsException"}
      ],
      "documentation":"<p>Adds a tag to a resource.</p>"
    },
    "TestWirelessDevice":{
      "name":"TestWirelessDevice",
      "http":{
        "method":"POST",
        "requestUri":"/wireless-devices/{Id}/test",
        "responseCode":200
      },
      "input":{"shape":"TestWirelessDeviceRequest"},
      "output":{"shape":"TestWirelessDeviceResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerException"}
      ],
      "documentation":"<p>Simulates a provisioned device by sending an uplink data payload of <code>Hello</code>.</p>"
    },
    "UntagResource":{
      "name":"UntagResource",
      "http":{
        "method":"DELETE",
        "requestUri":"/tags",
        "responseCode":204
      },
      "input":{"shape":"UntagResourceRequest"},
      "output":{"shape":"UntagResourceResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Removes one or more tags from a resource.</p>"
    },
    "UpdateDestination":{
      "name":"UpdateDestination",
      "http":{
        "method":"PATCH",
        "requestUri":"/destinations/{Name}",
        "responseCode":204
      },
      "input":{"shape":"UpdateDestinationRequest"},
      "output":{"shape":"UpdateDestinationResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Updates properties of a destination.</p>"
    },
    "UpdateLogLevelsByResourceTypes":{
      "name":"UpdateLogLevelsByResourceTypes",
      "http":{
        "method":"POST",
        "requestUri":"/log-levels",
        "responseCode":200
      },
      "input":{"shape":"UpdateLogLevelsByResourceTypesRequest"},
      "output":{"shape":"UpdateLogLevelsByResourceTypesResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ConflictException"},
        {"shape":"InternalServerException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "documentation":"<p>Set default log level, or log levels by resource types. This can be for wireless device log options or wireless gateways log options and is used to control the log messages that'll be displayed in CloudWatch.</p>"
    },
    "UpdatePartnerAccount":{
      "name":"UpdatePartnerAccount",
      "http":{
        "method":"PATCH",
        "requestUri":"/partner-accounts/{PartnerAccountId}",
        "responseCode":204
      },
      "input":{"shape":"UpdatePartnerAccountRequest"},
      "output":{"shape":"UpdatePartnerAccountResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Updates properties of a partner account.</p>"
    },
    "UpdateWirelessDevice":{
      "name":"UpdateWirelessDevice",
      "http":{
        "method":"PATCH",
        "requestUri":"/wireless-devices/{Id}",
        "responseCode":204
      },
      "input":{"shape":"UpdateWirelessDeviceRequest"},
      "output":{"shape":"UpdateWirelessDeviceResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Updates properties of a wireless device.</p>"
    },
    "UpdateWirelessGateway":{
      "name":"UpdateWirelessGateway",
      "http":{
        "method":"PATCH",
        "requestUri":"/wireless-gateways/{Id}",
        "responseCode":204
      },
      "input":{"shape":"UpdateWirelessGatewayRequest"},
      "output":{"shape":"UpdateWirelessGatewayResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Updates properties of a wireless gateway.</p>"
    }
  },
  "shapes":{
    "AbpV1_0_x":{
      "type":"structure",
      "members":{
        "DevAddr":{
          "shape":"DevAddr",
          "documentation":"<p>The DevAddr value.</p>"
        },
        "SessionKeys":{
          "shape":"SessionKeysAbpV1_0_x",
          "documentation":"<p>Session keys for ABP v1.0.x</p>"
        }
      },
      "documentation":"<p>ABP device object for LoRaWAN specification v1.0.x</p>"
    },
    "AbpV1_1":{
      "type":"structure",
      "members":{
        "DevAddr":{
          "shape":"DevAddr",
          "documentation":"<p>The DevAddr value.</p>"
        },
        "SessionKeys":{
          "shape":"SessionKeysAbpV1_1",
          "documentation":"<p>Session keys for ABP v1.1</p>"
        }
      },
      "documentation":"<p>ABP device object for LoRaWAN specification v1.1</p>"
    },
    "AccessDeniedException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"Message"}
      },
      "documentation":"<p>User does not have permission to perform this action.</p>",
      "error":{"httpStatusCode":403},
      "exception":true
    },
    "AccountLinked":{"type":"boolean"},
    "AddGwMetadata":{"type":"boolean"},
    "AmazonId":{
      "type":"string",
      "documentation":"<p>The Sidewalk Amazon ID.</p>",
      "max":2048
    },
    "AmazonResourceName":{
      "type":"string",
      "max":1011,
      "min":1
    },
    "AppEui":{
      "type":"string",
      "pattern":"[a-fA-F0-9]{16}"
    },
    "AppKey":{
      "type":"string",
      "pattern":"[a-fA-F0-9]{32}"
    },
    "AppSKey":{
      "type":"string",
      "pattern":"[a-fA-F0-9]{32}"
    },
    "AppServerPrivateKey":{
      "type":"string",
      "max":4096,
      "min":1,
      "pattern":"[a-fA-F0-9]{64}",
      "sensitive":true
    },
    "AssociateAwsAccountWithPartnerAccountRequest":{
      "type":"structure",
      "required":["Sidewalk"],
      "members":{
        "Sidewalk":{
          "shape":"SidewalkAccountInfo",
          "documentation":"<p>The Sidewalk account credentials.</p>"
        },
        "ClientRequestToken":{
          "shape":"ClientRequestToken",
          "documentation":"<p>Each resource must have a unique client request token. If you try to create a new resource with the same token as a resource that already exists, an exception occurs. If you omit this value, AWS SDKs will automatically generate a unique client request. </p>",
          "idempotencyToken":true
        },
        "Tags":{
          "shape":"TagList",
          "documentation":"<p>The tags to attach to the specified resource. Tags are metadata that you can use to manage a resource.</p>"
        }
      }
    },
    "AssociateAwsAccountWithPartnerAccountResponse":{
      "type":"structure",
      "members":{
        "Sidewalk":{
          "shape":"SidewalkAccountInfo",
          "documentation":"<p>The Sidewalk account credentials.</p>"
        },
        "Arn":{
          "shape":"PartnerAccountArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        }
      }
    },
    "AssociateWirelessDeviceWithThingRequest":{
      "type":"structure",
      "required":[
        "Id",
        "ThingArn"
      ],
      "members":{
        "Id":{
          "shape":"WirelessDeviceId",
          "documentation":"<p>The ID of the resource to update.</p>",
          "location":"uri",
          "locationName":"Id"
        },
        "ThingArn":{
          "shape":"ThingArn",
          "documentation":"<p>The ARN of the thing to associate with the wireless device.</p>"
        }
      }
    },
    "AssociateWirelessDeviceWithThingResponse":{
      "type":"structure",
      "members":{
      }
    },
    "AssociateWirelessGatewayWithCertificateRequest":{
      "type":"structure",
      "required":[
        "Id",
        "IotCertificateId"
      ],
      "members":{
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the resource to update.</p>",
          "location":"uri",
          "locationName":"Id"
        },
        "IotCertificateId":{
          "shape":"IotCertificateId",
          "documentation":"<p>The ID of the certificate to associate with the wireless gateway.</p>"
        }
      }
    },
    "AssociateWirelessGatewayWithCertificateResponse":{
      "type":"structure",
      "members":{
        "IotCertificateId":{
          "shape":"IotCertificateId",
          "documentation":"<p>The ID of the certificate associated with the wireless gateway.</p>"
        }
      }
    },
    "AssociateWirelessGatewayWithThingRequest":{
      "type":"structure",
      "required":[
        "Id",
        "ThingArn"
      ],
      "members":{
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the resource to update.</p>",
          "location":"uri",
          "locationName":"Id"
        },
        "ThingArn":{
          "shape":"ThingArn",
          "documentation":"<p>The ARN of the thing to associate with the wireless gateway.</p>"
        }
      }
    },
    "AssociateWirelessGatewayWithThingResponse":{
      "type":"structure",
      "members":{
      }
    },
    "AutoCreateTasks":{"type":"boolean"},
    "BatteryLevel":{
      "type":"string",
      "documentation":"<p>Sidewalk device battery level.</p>",
      "enum":[
        "normal",
        "low",
        "critical"
      ]
    },
    "CertificateList":{
      "type":"structure",
      "required":[
        "SigningAlg",
        "Value"
      ],
      "members":{
        "SigningAlg":{
          "shape":"SigningAlg",
          "documentation":"<p>The certificate chain algorithm provided by sidewalk.</p>"
        },
        "Value":{
          "shape":"CertificateValue",
          "documentation":"<p>The value of the chosen sidewalk certificate.</p>"
        }
      },
      "documentation":"<p>List of sidewalk certificates.</p>"
    },
    "CertificatePEM":{
      "type":"string",
      "max":4096,
      "min":1,
      "pattern":"[^-A-Za-z0-9+/=]|=[^=]|={3,}${1,4096}"
    },
    "CertificateValue":{
      "type":"string",
      "documentation":"<p>Certificate value.</p>",
      "max":2048,
      "min":0
    },
    "ChannelMask":{
      "type":"string",
      "max":2048
    },
    "ClassBTimeout":{
      "type":"integer",
      "max":1000,
      "min":0
    },
    "ClassCTimeout":{
      "type":"integer",
      "max":1000,
      "min":0
    },
    "ClientRequestToken":{
      "type":"string",
      "max":64,
      "min":1,
      "pattern":"^[a-zA-Z0-9-_]+$"
    },
    "ConflictException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"Message"},
        "ResourceId":{
          "shape":"ResourceId",
          "documentation":"<p>Id of the resource in the conflicting operation.</p>"
        },
        "ResourceType":{
          "shape":"ResourceType",
          "documentation":"<p>Type of the resource in the conflicting operation.</p>"
        }
      },
      "documentation":"<p>Adding, updating, or deleting the resource can cause an inconsistent state.</p>",
      "error":{"httpStatusCode":409},
      "exception":true
    },
    "ConnectionStatus":{
      "type":"string",
      "enum":[
        "Connected",
        "Disconnected"
      ]
    },
    "Crc":{
      "type":"long",
      "max":4294967295,
      "min":1
    },
    "CreateDestinationRequest":{
      "type":"structure",
      "required":[
        "Name",
        "ExpressionType",
        "Expression",
        "RoleArn"
      ],
      "members":{
        "Name":{
          "shape":"DestinationName",
          "documentation":"<p>The name of the new resource.</p>"
        },
        "ExpressionType":{
          "shape":"ExpressionType",
          "documentation":"<p>The type of value in <code>Expression</code>.</p>"
        },
        "Expression":{
          "shape":"Expression",
          "documentation":"<p>The rule name or topic rule to send messages to.</p>"
        },
        "Description":{
          "shape":"Description",
          "documentation":"<p>The description of the new resource.</p>"
        },
        "RoleArn":{
          "shape":"RoleArn",
          "documentation":"<p>The ARN of the IAM Role that authorizes the destination.</p>"
        },
        "Tags":{
          "shape":"TagList",
          "documentation":"<p>The tags to attach to the new destination. Tags are metadata that you can use to manage a resource.</p>"
        },
        "ClientRequestToken":{
          "shape":"ClientRequestToken",
          "documentation":"<p>Each resource must have a unique client request token. If you try to create a new resource with the same token as a resource that already exists, an exception occurs. If you omit this value, AWS SDKs will automatically generate a unique client request. </p>",
          "idempotencyToken":true
        }
      }
    },
    "CreateDestinationResponse":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"DestinationArn",
          "documentation":"<p>The Amazon Resource Name of the new resource.</p>"
        },
        "Name":{
          "shape":"DestinationName",
          "documentation":"<p>The name of the new resource.</p>"
        }
      }
    },
    "CreateDeviceProfileRequest":{
      "type":"structure",
      "members":{
        "Name":{
          "shape":"DeviceProfileName",
          "documentation":"<p>The name of the new resource.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANDeviceProfile",
          "documentation":"<p>The device profile information to use to create the device profile.</p>"
        },
        "Tags":{
          "shape":"TagList",
          "documentation":"<p>The tags to attach to the new device profile. Tags are metadata that you can use to manage a resource.</p>"
        },
        "ClientRequestToken":{
          "shape":"ClientRequestToken",
          "documentation":"<p>Each resource must have a unique client request token. If you try to create a new resource with the same token as a resource that already exists, an exception occurs. If you omit this value, AWS SDKs will automatically generate a unique client request. </p>",
          "idempotencyToken":true
        }
      }
    },
    "CreateDeviceProfileResponse":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"DeviceProfileArn",
          "documentation":"<p>The Amazon Resource Name of the new resource.</p>"
        },
        "Id":{
          "shape":"DeviceProfileId",
          "documentation":"<p>The ID of the new device profile.</p>"
        }
      }
    },
    "CreateServiceProfileRequest":{
      "type":"structure",
      "members":{
        "Name":{
          "shape":"ServiceProfileName",
          "documentation":"<p>The name of the new resource.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANServiceProfile",
          "documentation":"<p>The service profile information to use to create the service profile.</p>"
        },
        "Tags":{
          "shape":"TagList",
          "documentation":"<p>The tags to attach to the new service profile. Tags are metadata that you can use to manage a resource.</p>"
        },
        "ClientRequestToken":{
          "shape":"ClientRequestToken",
          "documentation":"<p>Each resource must have a unique client request token. If you try to create a new resource with the same token as a resource that already exists, an exception occurs. If you omit this value, AWS SDKs will automatically generate a unique client request. </p>",
          "idempotencyToken":true
        }
      }
    },
    "CreateServiceProfileResponse":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"ServiceProfileArn",
          "documentation":"<p>The Amazon Resource Name of the new resource.</p>"
        },
        "Id":{
          "shape":"ServiceProfileId",
          "documentation":"<p>The ID of the new service profile.</p>"
        }
      }
    },
    "CreateWirelessDeviceRequest":{
      "type":"structure",
      "required":[
        "Type",
        "DestinationName"
      ],
      "members":{
        "Type":{
          "shape":"WirelessDeviceType",
          "documentation":"<p>The wireless device type.</p>"
        },
        "Name":{
          "shape":"WirelessDeviceName",
          "documentation":"<p>The name of the new resource.</p>"
        },
        "Description":{
          "shape":"Description",
          "documentation":"<p>The description of the new resource.</p>"
        },
        "DestinationName":{
          "shape":"DestinationName",
          "documentation":"<p>The name of the destination to assign to the new wireless device.</p>"
        },
        "ClientRequestToken":{
          "shape":"ClientRequestToken",
          "documentation":"<p>Each resource must have a unique client request token. If you try to create a new resource with the same token as a resource that already exists, an exception occurs. If you omit this value, AWS SDKs will automatically generate a unique client request. </p>",
          "idempotencyToken":true
        },
        "LoRaWAN":{
          "shape":"LoRaWANDevice",
          "documentation":"<p>The device configuration information to use to create the wireless device.</p>"
        },
        "Tags":{
          "shape":"TagList",
          "documentation":"<p>The tags to attach to the new wireless device. Tags are metadata that you can use to manage a resource.</p>"
        }
      }
    },
    "CreateWirelessDeviceResponse":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"WirelessDeviceArn",
          "documentation":"<p>The Amazon Resource Name of the new resource.</p>"
        },
        "Id":{
          "shape":"WirelessDeviceId",
          "documentation":"<p>The ID of the new wireless device.</p>"
        }
      }
    },
    "CreateWirelessGatewayRequest":{
      "type":"structure",
      "required":["LoRaWAN"],
      "members":{
        "Name":{
          "shape":"WirelessGatewayName",
          "documentation":"<p>The name of the new resource.</p>"
        },
        "Description":{
          "shape":"Description",
          "documentation":"<p>The description of the new resource.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANGateway",
          "documentation":"<p>The gateway configuration information to use to create the wireless gateway.</p>"
        },
        "Tags":{
          "shape":"TagList",
          "documentation":"<p>The tags to attach to the new wireless gateway. Tags are metadata that you can use to manage a resource.</p>"
        },
        "ClientRequestToken":{
          "shape":"ClientRequestToken",
          "documentation":"<p>Each resource must have a unique client request token. If you try to create a new resource with the same token as a resource that already exists, an exception occurs. If you omit this value, AWS SDKs will automatically generate a unique client request. </p>",
          "idempotencyToken":true
        }
      }
    },
    "CreateWirelessGatewayResponse":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"WirelessGatewayArn",
          "documentation":"<p>The Amazon Resource Name of the new resource.</p>"
        },
        "Id":{
          "shape":"WirelessDeviceId",
          "documentation":"<p>The ID of the new wireless gateway.</p>"
        }
      }
    },
    "CreateWirelessGatewayTaskDefinitionRequest":{
      "type":"structure",
      "required":["AutoCreateTasks"],
      "members":{
        "AutoCreateTasks":{
          "shape":"AutoCreateTasks",
          "documentation":"<p>Whether to automatically create tasks using this task definition for all gateways with the specified current version. If <code>false</code>, the task must me created by calling <code>CreateWirelessGatewayTask</code>.</p>"
        },
        "Name":{
          "shape":"WirelessGatewayTaskName",
          "documentation":"<p>The name of the new resource.</p>"
        },
        "Update":{
          "shape":"UpdateWirelessGatewayTaskCreate",
          "documentation":"<p>Information about the gateways to update.</p>"
        },
        "ClientRequestToken":{
          "shape":"ClientRequestToken",
          "documentation":"<p>Each resource must have a unique client request token. If you try to create a new resource with the same token as a resource that already exists, an exception occurs. If you omit this value, AWS SDKs will automatically generate a unique client request. </p>",
          "idempotencyToken":true
        },
        "Tags":{
          "shape":"TagList",
          "documentation":"<p>The tags to attach to the specified resource. Tags are metadata that you can use to manage a resource.</p>"
        }
      }
    },
    "CreateWirelessGatewayTaskDefinitionResponse":{
      "type":"structure",
      "members":{
        "Id":{
          "shape":"WirelessGatewayTaskDefinitionId",
          "documentation":"<p>The ID of the new wireless gateway task definition.</p>"
        },
        "Arn":{
          "shape":"WirelessGatewayTaskDefinitionArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        }
      }
    },
    "CreateWirelessGatewayTaskRequest":{
      "type":"structure",
      "required":[
        "Id",
        "WirelessGatewayTaskDefinitionId"
      ],
      "members":{
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the resource to update.</p>",
          "location":"uri",
          "locationName":"Id"
        },
        "WirelessGatewayTaskDefinitionId":{
          "shape":"WirelessGatewayTaskDefinitionId",
          "documentation":"<p>The ID of the WirelessGatewayTaskDefinition.</p>"
        }
      }
    },
    "CreateWirelessGatewayTaskResponse":{
      "type":"structure",
      "members":{
        "WirelessGatewayTaskDefinitionId":{
          "shape":"WirelessGatewayTaskDefinitionId",
          "documentation":"<p>The ID of the WirelessGatewayTaskDefinition.</p>"
        },
        "Status":{
          "shape":"WirelessGatewayTaskStatus",
          "documentation":"<p>The status of the request.</p>"
        }
      }
    },
    "DeleteDestinationRequest":{
      "type":"structure",
      "required":["Name"],
      "members":{
        "Name":{
          "shape":"DestinationName",
          "documentation":"<p>The name of the resource to delete.</p>",
          "location":"uri",
          "locationName":"Name"
        }
      }
    },
    "DeleteDestinationResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DeleteDeviceProfileRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"DeviceProfileId",
          "documentation":"<p>The ID of the resource to delete.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "DeleteDeviceProfileResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DeleteServiceProfileRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"ServiceProfileId",
          "documentation":"<p>The ID of the resource to delete.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "DeleteServiceProfileResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DeleteWirelessDeviceRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessDeviceId",
          "documentation":"<p>The ID of the resource to delete.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "DeleteWirelessDeviceResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DeleteWirelessGatewayRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the resource to delete.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "DeleteWirelessGatewayResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DeleteWirelessGatewayTaskDefinitionRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessGatewayTaskDefinitionId",
          "documentation":"<p>The ID of the resource to delete.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "DeleteWirelessGatewayTaskDefinitionResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DeleteWirelessGatewayTaskRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the resource to delete.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "DeleteWirelessGatewayTaskResponse":{
      "type":"structure",
      "members":{
      }
    },
    "Description":{
      "type":"string",
      "max":2048
    },
    "DestinationArn":{"type":"string"},
    "DestinationList":{
      "type":"list",
      "member":{"shape":"Destinations"}
    },
    "DestinationName":{
      "type":"string",
      "max":128,
      "pattern":"[a-zA-Z0-9-_]+"
    },
    "Destinations":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"DestinationArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        },
        "Name":{
          "shape":"DestinationName",
          "documentation":"<p>The name of the resource.</p>"
        },
        "ExpressionType":{
          "shape":"ExpressionType",
          "documentation":"<p>The type of value in <code>Expression</code>.</p>"
        },
        "Expression":{
          "shape":"Expression",
          "documentation":"<p>The rule name or topic rule to send messages to.</p>"
        },
        "Description":{
          "shape":"Description",
          "documentation":"<p>The description of the resource.</p>"
        },
        "RoleArn":{
          "shape":"RoleArn",
          "documentation":"<p>The ARN of the IAM Role that authorizes the destination.</p>"
        }
      },
      "documentation":"<p>Describes a destination.</p>"
    },
    "DevAddr":{
      "type":"string",
      "pattern":"[a-fA-F0-9]{8}"
    },
    "DevEui":{
      "type":"string",
      "pattern":"[a-fA-F0-9]{16}"
    },
    "DevStatusReqFreq":{
      "type":"integer",
      "max":2147483647,
      "min":0
    },
    "DeviceCertificateList":{
      "type":"list",
      "member":{"shape":"CertificateList"},
      "documentation":"<p>List of device certificate chain.</p>"
    },
    "DeviceProfile":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"DeviceProfileArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        },
        "Name":{
          "shape":"DeviceProfileName",
          "documentation":"<p>The name of the resource.</p>"
        },
        "Id":{
          "shape":"DeviceProfileId",
          "documentation":"<p>The ID of the device profile.</p>"
        }
      },
      "documentation":"<p>Describes a device profile.</p>"
    },
    "DeviceProfileArn":{"type":"string"},
    "DeviceProfileId":{
      "type":"string",
      "max":256
    },
    "DeviceProfileList":{
      "type":"list",
      "member":{"shape":"DeviceProfile"}
    },
    "DeviceProfileName":{
      "type":"string",
      "max":256
    },
    "DeviceState":{
      "type":"string",
      "documentation":"<p>Device state defines the device status of sidewalk device.</p>",
      "enum":[
        "Provisioned",
        "RegisteredNotSeen",
        "RegisteredReachable",
        "RegisteredUnreachable"
      ]
    },
    "DisassociateAwsAccountFromPartnerAccountRequest":{
      "type":"structure",
      "required":[
        "PartnerAccountId",
        "PartnerType"
      ],
      "members":{
        "PartnerAccountId":{
          "shape":"PartnerAccountId",
          "documentation":"<p>The partner account ID to disassociate from the AWS account.</p>",
          "location":"uri",
          "locationName":"PartnerAccountId"
        },
        "PartnerType":{
          "shape":"PartnerType",
          "documentation":"<p>The partner type.</p>",
          "location":"querystring",
          "locationName":"partnerType"
        }
      }
    },
    "DisassociateAwsAccountFromPartnerAccountResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DisassociateWirelessDeviceFromThingRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessDeviceId",
          "documentation":"<p>The ID of the resource to update.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "DisassociateWirelessDeviceFromThingResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DisassociateWirelessGatewayFromCertificateRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the resource to update.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "DisassociateWirelessGatewayFromCertificateResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DisassociateWirelessGatewayFromThingRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the resource to update.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "DisassociateWirelessGatewayFromThingResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DlBucketSize":{
      "type":"integer",
      "max":2147483647,
      "min":0
    },
    "DlRate":{
      "type":"integer",
      "max":2147483647,
      "min":0
    },
    "DlRatePolicy":{
      "type":"string",
      "max":256
    },
    "Double":{"type":"double"},
    "DrMax":{
      "type":"integer",
      "max":15,
      "min":0
    },
    "DrMin":{
      "type":"integer",
      "max":15,
      "min":0
    },
    "EndPoint":{
      "type":"string",
      "max":256,
      "min":1
    },
    "Event":{
      "type":"string",
      "documentation":"<p>Sidewalk device status notification.</p>",
      "enum":[
        "discovered",
        "lost",
        "ack",
        "nack",
        "passthrough"
      ]
    },
    "Expression":{
      "type":"string",
      "max":2048
    },
    "ExpressionType":{
      "type":"string",
      "enum":[
        "RuleName",
        "MqttTopic"
      ]
    },
    "FNwkSIntKey":{
      "type":"string",
      "pattern":"[a-fA-F0-9]{32}"
    },
    "FPort":{
      "type":"integer",
      "max":223,
      "min":1
    },
    "FactoryPresetFreqsList":{
      "type":"list",
      "member":{"shape":"PresetFreq"},
      "max":20,
      "min":0
    },
    "Fingerprint":{
      "type":"string",
      "max":64,
      "min":64,
      "pattern":"[a-fA-F0-9]{64}",
      "sensitive":true
    },
    "GatewayEui":{
      "type":"string",
      "pattern":"^(([0-9A-Fa-f]{2}-){7}|([0-9A-Fa-f]{2}:){7}|([0-9A-Fa-f]{2}\\s){7}|([0-9A-Fa-f]{2}){7})([0-9A-Fa-f]{2})$"
    },
    "GetDestinationRequest":{
      "type":"structure",
      "required":["Name"],
      "members":{
        "Name":{
          "shape":"DestinationName",
          "documentation":"<p>The name of the resource to get.</p>",
          "location":"uri",
          "locationName":"Name"
        }
      }
    },
    "GetDestinationResponse":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"DestinationArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        },
        "Name":{
          "shape":"DestinationName",
          "documentation":"<p>The name of the resource.</p>"
        },
        "Expression":{
          "shape":"Expression",
          "documentation":"<p>The rule name or topic rule to send messages to.</p>"
        },
        "ExpressionType":{
          "shape":"ExpressionType",
          "documentation":"<p>The type of value in <code>Expression</code>.</p>"
        },
        "Description":{
          "shape":"Description",
          "documentation":"<p>The description of the resource.</p>"
        },
        "RoleArn":{
          "shape":"RoleArn",
          "documentation":"<p>The ARN of the IAM Role that authorizes the destination.</p>"
        }
      }
    },
    "GetDeviceProfileRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"DeviceProfileId",
          "documentation":"<p>The ID of the resource to get.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "GetDeviceProfileResponse":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"DeviceProfileArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        },
        "Name":{
          "shape":"DeviceProfileName",
          "documentation":"<p>The name of the resource.</p>"
        },
        "Id":{
          "shape":"DeviceProfileId",
          "documentation":"<p>The ID of the device profile.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANDeviceProfile",
          "documentation":"<p>Information about the device profile.</p>"
        }
      }
    },
    "GetLogLevelsByResourceTypesRequest":{
      "type":"structure",
      "members":{
      }
    },
    "GetLogLevelsByResourceTypesResponse":{
      "type":"structure",
      "members":{
        "DefaultLogLevel":{"shape":"LogLevel"},
        "WirelessGatewayLogOptions":{"shape":"WirelessGatewayLogOptionList"},
        "WirelessDeviceLogOptions":{"shape":"WirelessDeviceLogOptionList"}
      }
    },
    "GetPartnerAccountRequest":{
      "type":"structure",
      "required":[
        "PartnerAccountId",
        "PartnerType"
      ],
      "members":{
        "PartnerAccountId":{
          "shape":"PartnerAccountId",
          "documentation":"<p>The partner account ID to disassociate from the AWS account.</p>",
          "location":"uri",
          "locationName":"PartnerAccountId"
        },
        "PartnerType":{
          "shape":"PartnerType",
          "documentation":"<p>The partner type.</p>",
          "location":"querystring",
          "locationName":"partnerType"
        }
      }
    },
    "GetPartnerAccountResponse":{
      "type":"structure",
      "members":{
        "Sidewalk":{
          "shape":"SidewalkAccountInfoWithFingerprint",
          "documentation":"<p>The Sidewalk account credentials.</p>"
        },
        "AccountLinked":{
          "shape":"AccountLinked",
          "documentation":"<p>Whether the partner account is linked to the AWS account.</p>"
        }
      }
    },
    "GetResourceLogLevelRequest":{
      "type":"structure",
      "required":[
        "ResourceIdentifier",
        "ResourceType"
      ],
      "members":{
        "ResourceIdentifier":{
          "shape":"ResourceIdentifier",
          "location":"uri",
          "locationName":"ResourceIdentifier"
        },
        "ResourceType":{
          "shape":"ResourceType",
          "documentation":"<p>The type of the resource, which can be <code>WirelessDevice</code> or <code>WirelessGateway</code>.</p>",
          "location":"querystring",
          "locationName":"resourceType"
        }
      }
    },
    "GetResourceLogLevelResponse":{
      "type":"structure",
      "members":{
        "LogLevel":{"shape":"LogLevel"}
      }
    },
    "GetServiceEndpointRequest":{
      "type":"structure",
      "members":{
        "ServiceType":{
          "shape":"WirelessGatewayServiceType",
          "documentation":"<p>The service type for which to get endpoint information about. Can be <code>CUPS</code> for the Configuration and Update Server endpoint, or <code>LNS</code> for the LoRaWAN Network Server endpoint.</p>",
          "location":"querystring",
          "locationName":"serviceType"
        }
      }
    },
    "GetServiceEndpointResponse":{
      "type":"structure",
      "members":{
        "ServiceType":{
          "shape":"WirelessGatewayServiceType",
          "documentation":"<p>The endpoint's service type.</p>"
        },
        "ServiceEndpoint":{
          "shape":"EndPoint",
          "documentation":"<p>The service endpoint value.</p>"
        },
        "ServerTrust":{
          "shape":"CertificatePEM",
          "documentation":"<p>The Root CA of the server trust certificate.</p>"
        }
      }
    },
    "GetServiceProfileRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"ServiceProfileId",
          "documentation":"<p>The ID of the resource to get.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "GetServiceProfileResponse":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"ServiceProfileArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        },
        "Name":{
          "shape":"ServiceProfileName",
          "documentation":"<p>The name of the resource.</p>"
        },
        "Id":{
          "shape":"ServiceProfileId",
          "documentation":"<p>The ID of the service profile.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANGetServiceProfileInfo",
          "documentation":"<p>Information about the service profile.</p>"
        }
      }
    },
    "GetWirelessDeviceRequest":{
      "type":"structure",
      "required":[
        "Identifier",
        "IdentifierType"
      ],
      "members":{
        "Identifier":{
          "shape":"Identifier",
          "documentation":"<p>The identifier of the wireless device to get.</p>",
          "location":"uri",
          "locationName":"Identifier"
        },
        "IdentifierType":{
          "shape":"WirelessDeviceIdType",
          "documentation":"<p>The type of identifier used in <code>identifier</code>.</p>",
          "location":"querystring",
          "locationName":"identifierType"
        }
      }
    },
    "GetWirelessDeviceResponse":{
      "type":"structure",
      "members":{
        "Type":{
          "shape":"WirelessDeviceType",
          "documentation":"<p>The wireless device type.</p>"
        },
        "Name":{
          "shape":"WirelessDeviceName",
          "documentation":"<p>The name of the resource.</p>"
        },
        "Description":{
          "shape":"Description",
          "documentation":"<p>The description of the resource.</p>"
        },
        "DestinationName":{
          "shape":"DestinationName",
          "documentation":"<p>The name of the destination to which the device is assigned.</p>"
        },
        "Id":{
          "shape":"WirelessDeviceId",
          "documentation":"<p>The ID of the wireless device.</p>"
        },
        "Arn":{
          "shape":"WirelessDeviceArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        },
        "ThingName":{
          "shape":"ThingName",
          "documentation":"<p>The name of the thing associated with the wireless device. The value is empty if a thing isn't associated with the device.</p>"
        },
        "ThingArn":{
          "shape":"ThingArn",
          "documentation":"<p>The ARN of the thing associated with the wireless device.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANDevice",
          "documentation":"<p>Information about the wireless device.</p>"
        },
        "Sidewalk":{
          "shape":"SidewalkDevice",
          "documentation":"<p>Sidewalk device object.</p>"
        }
      }
    },
    "GetWirelessDeviceStatisticsRequest":{
      "type":"structure",
      "required":["WirelessDeviceId"],
      "members":{
        "WirelessDeviceId":{
          "shape":"WirelessDeviceId",
          "documentation":"<p>The ID of the wireless device for which to get the data.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "GetWirelessDeviceStatisticsResponse":{
      "type":"structure",
      "members":{
        "WirelessDeviceId":{
          "shape":"WirelessDeviceId",
          "documentation":"<p>The ID of the wireless device.</p>"
        },
        "LastUplinkReceivedAt":{
          "shape":"ISODateTimeString",
          "documentation":"<p>The date and time when the most recent uplink was received.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANDeviceMetadata",
          "documentation":"<p>Information about the wireless device's operations.</p>"
        },
        "Sidewalk":{
          "shape":"SidewalkDeviceMetadata",
          "documentation":"<p>MetaData for Sidewalk device.</p>"
        }
      }
    },
    "GetWirelessGatewayCertificateRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the resource to get.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "GetWirelessGatewayCertificateResponse":{
      "type":"structure",
      "members":{
        "IotCertificateId":{
          "shape":"IotCertificateId",
          "documentation":"<p>The ID of the certificate associated with the wireless gateway.</p>"
        },
        "LoRaWANNetworkServerCertificateId":{
          "shape":"IotCertificateId",
          "documentation":"<p>The ID of the certificate that is associated with the wireless gateway and used for the LoRaWANNetworkServer endpoint.</p>"
        }
      }
    },
    "GetWirelessGatewayFirmwareInformationRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the resource to get.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "GetWirelessGatewayFirmwareInformationResponse":{
      "type":"structure",
      "members":{
        "LoRaWAN":{
          "shape":"LoRaWANGatewayCurrentVersion",
          "documentation":"<p>Information about the wireless gateway's firmware.</p>"
        }
      }
    },
    "GetWirelessGatewayRequest":{
      "type":"structure",
      "required":[
        "Identifier",
        "IdentifierType"
      ],
      "members":{
        "Identifier":{
          "shape":"Identifier",
          "documentation":"<p>The identifier of the wireless gateway to get.</p>",
          "location":"uri",
          "locationName":"Identifier"
        },
        "IdentifierType":{
          "shape":"WirelessGatewayIdType",
          "documentation":"<p>The type of identifier used in <code>identifier</code>.</p>",
          "location":"querystring",
          "locationName":"identifierType"
        }
      }
    },
    "GetWirelessGatewayResponse":{
      "type":"structure",
      "members":{
        "Name":{
          "shape":"WirelessGatewayName",
          "documentation":"<p>The name of the resource.</p>"
        },
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the wireless gateway.</p>"
        },
        "Description":{
          "shape":"Description",
          "documentation":"<p>The description of the resource.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANGateway",
          "documentation":"<p>Information about the wireless gateway.</p>"
        },
        "Arn":{
          "shape":"WirelessGatewayArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        },
        "ThingName":{
          "shape":"ThingName",
          "documentation":"<p>The name of the thing associated with the wireless gateway. The value is empty if a thing isn't associated with the gateway.</p>"
        },
        "ThingArn":{
          "shape":"ThingArn",
          "documentation":"<p>The ARN of the thing associated with the wireless gateway.</p>"
        }
      }
    },
    "GetWirelessGatewayStatisticsRequest":{
      "type":"structure",
      "required":["WirelessGatewayId"],
      "members":{
        "WirelessGatewayId":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the wireless gateway for which to get the data.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "GetWirelessGatewayStatisticsResponse":{
      "type":"structure",
      "members":{
        "WirelessGatewayId":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the wireless gateway.</p>"
        },
        "LastUplinkReceivedAt":{
          "shape":"ISODateTimeString",
          "documentation":"<p>The date and time when the most recent uplink was received.</p>"
        },
        "ConnectionStatus":{
          "shape":"ConnectionStatus",
          "documentation":"<p>The connection status of the wireless gateway.</p>"
        }
      }
    },
    "GetWirelessGatewayTaskDefinitionRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessGatewayTaskDefinitionId",
          "documentation":"<p>The ID of the resource to get.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "GetWirelessGatewayTaskDefinitionResponse":{
      "type":"structure",
      "members":{
        "AutoCreateTasks":{
          "shape":"AutoCreateTasks",
          "documentation":"<p>Whether to automatically create tasks using this task definition for all gateways with the specified current version. If <code>false</code>, the task must me created by calling <code>CreateWirelessGatewayTask</code>.</p>"
        },
        "Name":{
          "shape":"WirelessGatewayTaskName",
          "documentation":"<p>The name of the resource.</p>"
        },
        "Update":{
          "shape":"UpdateWirelessGatewayTaskCreate",
          "documentation":"<p>Information about the gateways to update.</p>"
        },
        "Arn":{
          "shape":"WirelessGatewayTaskDefinitionArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        }
      }
    },
    "GetWirelessGatewayTaskRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the resource to get.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "GetWirelessGatewayTaskResponse":{
      "type":"structure",
      "members":{
        "WirelessGatewayId":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the wireless gateway.</p>"
        },
        "WirelessGatewayTaskDefinitionId":{
          "shape":"WirelessGatewayTaskDefinitionId",
          "documentation":"<p>The ID of the WirelessGatewayTask.</p>"
        },
        "LastUplinkReceivedAt":{
          "shape":"ISODateTimeString",
          "documentation":"<p>The date and time when the most recent uplink was received.</p>"
        },
        "TaskCreatedAt":{
          "shape":"ISODateTimeString",
          "documentation":"<p>The date and time when the task was created.</p>"
        },
        "Status":{
          "shape":"WirelessGatewayTaskStatus",
          "documentation":"<p>The status of the request.</p>"
        }
      }
    },
    "HrAllowed":{"type":"boolean"},
    "ISODateTimeString":{
      "type":"string",
      "pattern":"^([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$"
    },
    "Identifier":{
      "type":"string",
      "max":256
    },
    "Integer":{"type":"integer"},
    "InternalServerException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"Message"}
      },
      "documentation":"<p>An unexpected error occurred while processing a request.</p>",
      "error":{"httpStatusCode":500},
      "exception":true
    },
    "IotCertificateId":{
      "type":"string",
      "max":4096,
      "min":1
    },
    "JoinEui":{
      "type":"string",
      "pattern":"[a-fA-F0-9]{16}"
    },
    "JoinEuiFilters":{
      "type":"list",
      "member":{"shape":"JoinEuiRange"},
      "documentation":"<p>A list of JoinEuiRange used by LoRa gateways to filter LoRa frames.</p>",
      "max":3,
      "min":0
    },
    "JoinEuiRange":{
      "type":"list",
      "member":{"shape":"JoinEui"},
      "documentation":"<p>A pair of join EUI describing a range [BegEui, EndEui], both ends are inclusive.</p>",
      "max":2,
      "min":2
    },
    "ListDestinationsRequest":{
      "type":"structure",
      "members":{
        "MaxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return in this operation.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>To retrieve the next set of results, the <code>nextToken</code> value from a previous response; otherwise <b>null</b> to receive the first set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        }
      }
    },
    "ListDestinationsResponse":{
      "type":"structure",
      "members":{
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token to use to get the next set of results, or <b>null</b> if there are no additional results.</p>"
        },
        "DestinationList":{
          "shape":"DestinationList",
          "documentation":"<p>The list of destinations.</p>"
        }
      }
    },
    "ListDeviceProfilesRequest":{
      "type":"structure",
      "members":{
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>To retrieve the next set of results, the <code>nextToken</code> value from a previous response; otherwise <b>null</b> to receive the first set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "MaxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return in this operation.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListDeviceProfilesResponse":{
      "type":"structure",
      "members":{
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token to use to get the next set of results, or <b>null</b> if there are no additional results.</p>"
        },
        "DeviceProfileList":{
          "shape":"DeviceProfileList",
          "documentation":"<p>The list of device profiles.</p>"
        }
      }
    },
    "ListPartnerAccountsRequest":{
      "type":"structure",
      "members":{
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>To retrieve the next set of results, the <code>nextToken</code> value from a previous response; otherwise <b>null</b> to receive the first set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "MaxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return in this operation.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListPartnerAccountsResponse":{
      "type":"structure",
      "members":{
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token to use to get the next set of results, or <b>null</b> if there are no additional results.</p>"
        },
        "Sidewalk":{
          "shape":"SidewalkAccountList",
          "documentation":"<p>The Sidewalk account credentials.</p>"
        }
      }
    },
    "ListServiceProfilesRequest":{
      "type":"structure",
      "members":{
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>To retrieve the next set of results, the <code>nextToken</code> value from a previous response; otherwise <b>null</b> to receive the first set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "MaxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return in this operation.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListServiceProfilesResponse":{
      "type":"structure",
      "members":{
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token to use to get the next set of results, or <b>null</b> if there are no additional results.</p>"
        },
        "ServiceProfileList":{
          "shape":"ServiceProfileList",
          "documentation":"<p>The list of service profiles.</p>"
        }
      }
    },
    "ListTagsForResourceRequest":{
      "type":"structure",
      "required":["ResourceArn"],
      "members":{
        "ResourceArn":{
          "shape":"AmazonResourceName",
          "documentation":"<p>The ARN of the resource for which you want to list tags.</p>",
          "location":"querystring",
          "locationName":"resourceArn"
        }
      }
    },
    "ListTagsForResourceResponse":{
      "type":"structure",
      "members":{
        "Tags":{
          "shape":"TagList",
          "documentation":"<p>The tags to attach to the specified resource. Tags are metadata that you can use to manage a resource.</p>"
        }
      }
    },
    "ListWirelessDevicesRequest":{
      "type":"structure",
      "members":{
        "MaxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return in this operation.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>To retrieve the next set of results, the <code>nextToken</code> value from a previous response; otherwise <b>null</b> to receive the first set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "DestinationName":{
          "shape":"DestinationName",
          "documentation":"<p>A filter to list only the wireless devices that use this destination.</p>",
          "location":"querystring",
          "locationName":"destinationName"
        },
        "DeviceProfileId":{
          "shape":"DeviceProfileId",
          "documentation":"<p>A filter to list only the wireless devices that use this device profile.</p>",
          "location":"querystring",
          "locationName":"deviceProfileId"
        },
        "ServiceProfileId":{
          "shape":"ServiceProfileId",
          "documentation":"<p>A filter to list only the wireless devices that use this service profile.</p>",
          "location":"querystring",
          "locationName":"serviceProfileId"
        },
        "WirelessDeviceType":{
          "shape":"WirelessDeviceType",
          "documentation":"<p>A filter to list only the wireless devices that use this wireless device type.</p>",
          "location":"querystring",
          "locationName":"wirelessDeviceType"
        }
      }
    },
    "ListWirelessDevicesResponse":{
      "type":"structure",
      "members":{
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token to use to get the next set of results, or <b>null</b> if there are no additional results.</p>"
        },
        "WirelessDeviceList":{
          "shape":"WirelessDeviceStatisticsList",
          "documentation":"<p>The ID of the wireless device.</p>"
        }
      }
    },
    "ListWirelessGatewayTaskDefinitionsRequest":{
      "type":"structure",
      "members":{
        "MaxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return in this operation.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>To retrieve the next set of results, the <code>nextToken</code> value from a previous response; otherwise <b>null</b> to receive the first set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "TaskDefinitionType":{
          "shape":"WirelessGatewayTaskDefinitionType",
          "documentation":"<p>A filter to list only the wireless gateway task definitions that use this task definition type.</p>",
          "location":"querystring",
          "locationName":"taskDefinitionType"
        }
      }
    },
    "ListWirelessGatewayTaskDefinitionsResponse":{
      "type":"structure",
      "members":{
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token to use to get the next set of results, or <b>null</b> if there are no additional results.</p>"
        },
        "TaskDefinitions":{
          "shape":"WirelessGatewayTaskDefinitionList",
          "documentation":"<p>The list of task definitions.</p>"
        }
      }
    },
    "ListWirelessGatewaysRequest":{
      "type":"structure",
      "members":{
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>To retrieve the next set of results, the <code>nextToken</code> value from a previous response; otherwise <b>null</b> to receive the first set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "MaxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum number of results to return in this operation.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListWirelessGatewaysResponse":{
      "type":"structure",
      "members":{
        "NextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token to use to get the next set of results, or <b>null</b> if there are no additional results.</p>"
        },
        "WirelessGatewayList":{
          "shape":"WirelessGatewayStatisticsList",
          "documentation":"<p>The ID of the wireless gateway.</p>"
        }
      }
    },
    "LoRaWANDevice":{
      "type":"structure",
      "members":{
        "DevEui":{
          "shape":"DevEui",
          "documentation":"<p>The DevEUI value.</p>"
        },
        "DeviceProfileId":{
          "shape":"DeviceProfileId",
          "documentation":"<p>The ID of the device profile for the new wireless device.</p>"
        },
        "ServiceProfileId":{
          "shape":"ServiceProfileId",
          "documentation":"<p>The ID of the service profile.</p>"
        },
        "OtaaV1_1":{
          "shape":"OtaaV1_1",
          "documentation":"<p>OTAA device object for v1.1 for create APIs</p>"
        },
        "OtaaV1_0_x":{
          "shape":"OtaaV1_0_x",
          "documentation":"<p>OTAA device object for create APIs for v1.0.x</p>"
        },
        "AbpV1_1":{
          "shape":"AbpV1_1",
          "documentation":"<p>ABP device object for create APIs for v1.1</p>"
        },
        "AbpV1_0_x":{
          "shape":"AbpV1_0_x",
          "documentation":"<p>LoRaWAN object for create APIs</p>"
        }
      },
      "documentation":"<p>LoRaWAN object for create functions.</p>"
    },
    "LoRaWANDeviceMetadata":{
      "type":"structure",
      "members":{
        "DevEui":{
          "shape":"DevEui",
          "documentation":"<p>The DevEUI value.</p>"
        },
        "FPort":{
          "shape":"Integer",
          "documentation":"<p>The FPort value.</p>"
        },
        "DataRate":{
          "shape":"Integer",
          "documentation":"<p>The DataRate value.</p>"
        },
        "Frequency":{
          "shape":"Integer",
          "documentation":"<p>The device's channel frequency in Hz.</p>"
        },
        "Timestamp":{
          "shape":"ISODateTimeString",
          "documentation":"<p>The date and time of the metadata.</p>"
        },
        "Gateways":{
          "shape":"LoRaWANGatewayMetadataList",
          "documentation":"<p>Information about the gateways accessed by the device.</p>"
        }
      },
      "documentation":"<p>LoRaWAN device metatdata.</p>"
    },
    "LoRaWANDeviceProfile":{
      "type":"structure",
      "members":{
        "SupportsClassB":{
          "shape":"SupportsClassB",
          "documentation":"<p>The SupportsClassB value.</p>"
        },
        "ClassBTimeout":{
          "shape":"ClassBTimeout",
          "documentation":"<p>The ClassBTimeout value.</p>"
        },
        "PingSlotPeriod":{
          "shape":"PingSlotPeriod",
          "documentation":"<p>The PingSlotPeriod value.</p>"
        },
        "PingSlotDr":{
          "shape":"PingSlotDr",
          "documentation":"<p>The PingSlotDR value.</p>"
        },
        "PingSlotFreq":{
          "shape":"PingSlotFreq",
          "documentation":"<p>The PingSlotFreq value.</p>"
        },
        "SupportsClassC":{
          "shape":"SupportsClassC",
          "documentation":"<p>The SupportsClassC value.</p>"
        },
        "ClassCTimeout":{
          "shape":"ClassCTimeout",
          "documentation":"<p>The ClassCTimeout value.</p>"
        },
        "MacVersion":{
          "shape":"MacVersion",
          "documentation":"<p>The MAC version (such as OTAA 1.1 or OTAA 1.0.3) to use with this device profile.</p>"
        },
        "RegParamsRevision":{
          "shape":"RegParamsRevision",
          "documentation":"<p>The version of regional parameters.</p>"
        },
        "RxDelay1":{
          "shape":"RxDelay1",
          "documentation":"<p>The RXDelay1 value.</p>"
        },
        "RxDrOffset1":{
          "shape":"RxDrOffset1",
          "documentation":"<p>The RXDROffset1 value.</p>"
        },
        "RxDataRate2":{
          "shape":"RxDataRate2",
          "documentation":"<p>The RXDataRate2 value.</p>"
        },
        "RxFreq2":{
          "shape":"RxFreq2",
          "documentation":"<p>The RXFreq2 value.</p>"
        },
        "FactoryPresetFreqsList":{
          "shape":"FactoryPresetFreqsList",
          "documentation":"<p>The list of values that make up the FactoryPresetFreqs value.</p>"
        },
        "MaxEirp":{
          "shape":"MaxEirp",
          "documentation":"<p>The MaxEIRP value.</p>"
        },
        "MaxDutyCycle":{
          "shape":"MaxDutyCycle",
          "documentation":"<p>The MaxDutyCycle value.</p>"
        },
        "RfRegion":{
          "shape":"RfRegion",
          "documentation":"<p>The frequency band (RFRegion) value.</p>"
        },
        "SupportsJoin":{
          "shape":"SupportsJoin",
          "documentation":"<p>The SupportsJoin value.</p>"
        },
        "Supports32BitFCnt":{
          "shape":"Supports32BitFCnt",
          "documentation":"<p>The Supports32BitFCnt value.</p>"
        }
      },
      "documentation":"<p>LoRaWANDeviceProfile object.</p>"
    },
    "LoRaWANGateway":{
      "type":"structure",
      "members":{
        "GatewayEui":{
          "shape":"GatewayEui",
          "documentation":"<p>The gateway's EUI value.</p>"
        },
        "RfRegion":{
          "shape":"RfRegion",
          "documentation":"<p>The frequency band (RFRegion) value.</p>"
        },
        "JoinEuiFilters":{"shape":"JoinEuiFilters"},
        "NetIdFilters":{"shape":"NetIdFilters"},
        "SubBands":{"shape":"SubBands"}
      },
      "documentation":"<p>LoRaWANGateway object.</p>"
    },
    "LoRaWANGatewayCurrentVersion":{
      "type":"structure",
      "members":{
        "CurrentVersion":{
          "shape":"LoRaWANGatewayVersion",
          "documentation":"<p>The version of the gateways that should receive the update.</p>"
        }
      },
      "documentation":"<p>LoRaWANGatewayCurrentVersion object.</p>"
    },
    "LoRaWANGatewayMetadata":{
      "type":"structure",
      "members":{
        "GatewayEui":{
          "shape":"GatewayEui",
          "documentation":"<p>The gateway's EUI value.</p>"
        },
        "Snr":{
          "shape":"Double",
          "documentation":"<p>The SNR value.</p>"
        },
        "Rssi":{
          "shape":"Double",
          "documentation":"<p>The RSSI value.</p>"
        }
      },
      "documentation":"<p>LoRaWAN gateway metatdata.</p>"
    },
    "LoRaWANGatewayMetadataList":{
      "type":"list",
      "member":{"shape":"LoRaWANGatewayMetadata"}
    },
    "LoRaWANGatewayVersion":{
      "type":"structure",
      "members":{
        "PackageVersion":{
          "shape":"PackageVersion",
          "documentation":"<p>The version of the wireless gateway firmware.</p>"
        },
        "Model":{
          "shape":"Model",
          "documentation":"<p>The model number of the wireless gateway.</p>"
        },
        "Station":{
          "shape":"Station",
          "documentation":"<p>The basic station version of the wireless gateway.</p>"
        }
      },
      "documentation":"<p>LoRaWANGatewayVersion object.</p>"
    },
    "LoRaWANGetServiceProfileInfo":{
      "type":"structure",
      "members":{
        "UlRate":{
          "shape":"UlRate",
          "documentation":"<p>The ULRate value.</p>"
        },
        "UlBucketSize":{
          "shape":"UlBucketSize",
          "documentation":"<p>The ULBucketSize value.</p>"
        },
        "UlRatePolicy":{
          "shape":"UlRatePolicy",
          "documentation":"<p>The ULRatePolicy value.</p>"
        },
        "DlRate":{
          "shape":"DlRate",
          "documentation":"<p>The DLRate value.</p>"
        },
        "DlBucketSize":{
          "shape":"DlBucketSize",
          "documentation":"<p>The DLBucketSize value.</p>"
        },
        "DlRatePolicy":{
          "shape":"DlRatePolicy",
          "documentation":"<p>The DLRatePolicy value.</p>"
        },
        "AddGwMetadata":{
          "shape":"AddGwMetadata",
          "documentation":"<p>The AddGWMetaData value.</p>"
        },
        "DevStatusReqFreq":{
          "shape":"DevStatusReqFreq",
          "documentation":"<p>The DevStatusReqFreq value.</p>"
        },
        "ReportDevStatusBattery":{
          "shape":"ReportDevStatusBattery",
          "documentation":"<p>The ReportDevStatusBattery value.</p>"
        },
        "ReportDevStatusMargin":{
          "shape":"ReportDevStatusMargin",
          "documentation":"<p>The ReportDevStatusMargin value.</p>"
        },
        "DrMin":{
          "shape":"DrMin",
          "documentation":"<p>The DRMin value.</p>"
        },
        "DrMax":{
          "shape":"DrMax",
          "documentation":"<p>The DRMax value.</p>"
        },
        "ChannelMask":{
          "shape":"ChannelMask",
          "documentation":"<p>The ChannelMask value.</p>"
        },
        "PrAllowed":{
          "shape":"PrAllowed",
          "documentation":"<p>The PRAllowed value that describes whether passive roaming is allowed.</p>"
        },
        "HrAllowed":{
          "shape":"HrAllowed",
          "documentation":"<p>The HRAllowed value that describes whether handover roaming is allowed.</p>"
        },
        "RaAllowed":{
          "shape":"RaAllowed",
          "documentation":"<p>The RAAllowed value that describes whether roaming activation is allowed.</p>"
        },
        "NwkGeoLoc":{
          "shape":"NwkGeoLoc",
          "documentation":"<p>The NwkGeoLoc value.</p>"
        },
        "TargetPer":{
          "shape":"TargetPer",
          "documentation":"<p>The TargetPER value.</p>"
        },
        "MinGwDiversity":{
          "shape":"MinGwDiversity",
          "documentation":"<p>The MinGwDiversity value.</p>"
        }
      },
      "documentation":"<p>LoRaWANGetServiceProfileInfo object.</p>"
    },
    "LoRaWANListDevice":{
      "type":"structure",
      "members":{
        "DevEui":{
          "shape":"DevEui",
          "documentation":"<p>The DevEUI value.</p>"
        }
      },
      "documentation":"<p>LoRaWAN object for list functions.</p>"
    },
    "LoRaWANSendDataToDevice":{
      "type":"structure",
      "members":{
        "FPort":{
          "shape":"FPort",
          "documentation":"<p>The Fport value.</p>"
        }
      },
      "documentation":"<p>LoRaWAN router info.</p>"
    },
    "LoRaWANServiceProfile":{
      "type":"structure",
      "members":{
        "AddGwMetadata":{
          "shape":"AddGwMetadata",
          "documentation":"<p>The AddGWMetaData value.</p>"
        }
      },
      "documentation":"<p>LoRaWANServiceProfile object.</p>"
    },
    "LoRaWANUpdateDevice":{
      "type":"structure",
      "members":{
        "DeviceProfileId":{
          "shape":"DeviceProfileId",
          "documentation":"<p>The ID of the device profile for the wireless device.</p>"
        },
        "ServiceProfileId":{
          "shape":"ServiceProfileId",
          "documentation":"<p>The ID of the service profile.</p>"
        }
      },
      "documentation":"<p>LoRaWAN object for update functions.</p>"
    },
    "LoRaWANUpdateGatewayTaskCreate":{
      "type":"structure",
      "members":{
        "UpdateSignature":{
          "shape":"UpdateSignature",
          "documentation":"<p>The signature used to verify the update firmware.</p>"
        },
        "SigKeyCrc":{
          "shape":"Crc",
          "documentation":"<p>The CRC of the signature private key to check.</p>"
        },
        "CurrentVersion":{
          "shape":"LoRaWANGatewayVersion",
          "documentation":"<p>The version of the gateways that should receive the update.</p>"
        },
        "UpdateVersion":{
          "shape":"LoRaWANGatewayVersion",
          "documentation":"<p>The firmware version to update the gateway to.</p>"
        }
      },
      "documentation":"<p>LoRaWANUpdateGatewayTaskCreate object.</p>"
    },
    "LoRaWANUpdateGatewayTaskEntry":{
      "type":"structure",
      "members":{
        "CurrentVersion":{
          "shape":"LoRaWANGatewayVersion",
          "documentation":"<p>The version of the gateways that should receive the update.</p>"
        },
        "UpdateVersion":{
          "shape":"LoRaWANGatewayVersion",
          "documentation":"<p>The firmware version to update the gateway to.</p>"
        }
      },
      "documentation":"<p>LoRaWANUpdateGatewayTaskEntry object.</p>"
    },
    "LogLevel":{
      "type":"string",
      "documentation":"<p>The log level for a log message.</p>",
      "enum":[
        "INFO",
        "ERROR",
        "DISABLED"
      ]
    },
    "MacVersion":{
      "type":"string",
      "max":64
    },
    "MaxDutyCycle":{
      "type":"integer",
      "max":100,
      "min":0
    },
    "MaxEirp":{
      "type":"integer",
      "max":15,
      "min":0
    },
    "MaxResults":{
      "type":"integer",
      "max":250,
      "min":0
    },
    "Message":{
      "type":"string",
      "max":2048
    },
    "MessageId":{"type":"string"},
    "MessageType":{
      "type":"string",
      "documentation":"<p>Sidewalk device message type. Default value is <code>CUSTOM_COMMAND_ID_NOTIFY</code>.</p>",
      "enum":[
        "CUSTOM_COMMAND_ID_NOTIFY",
        "CUSTOM_COMMAND_ID_GET",
        "CUSTOM_COMMAND_ID_SET",
        "CUSTOM_COMMAND_ID_RESP"
      ]
    },
    "MinGwDiversity":{
      "type":"integer",
      "max":100,
      "min":1
    },
    "Model":{
      "type":"string",
      "max":4096,
      "min":1
    },
    "NetId":{
      "type":"string",
      "documentation":"<p>LoRaWAN network ID.</p>",
      "pattern":"[a-fA-F0-9]{6}"
    },
    "NetIdFilters":{
      "type":"list",
      "member":{"shape":"NetId"},
      "documentation":"<p>A list of NetId values that are used by LoRa gateways to filter the uplink frames.</p>",
      "max":10,
      "min":0
    },
    "NextToken":{
      "type":"string",
      "max":4096
    },
    "NwkGeoLoc":{"type":"boolean"},
    "NwkKey":{
      "type":"string",
      "pattern":"[a-fA-F0-9]{32}"
    },
    "NwkSEncKey":{
      "type":"string",
      "pattern":"[a-fA-F0-9]{32}"
    },
    "NwkSKey":{
      "type":"string",
      "pattern":"[a-fA-F0-9]{32}"
    },
    "OtaaV1_0_x":{
      "type":"structure",
      "members":{
        "AppKey":{
          "shape":"AppKey",
          "documentation":"<p>The AppKey value.</p>"
        },
        "AppEui":{
          "shape":"AppEui",
          "documentation":"<p>The AppEUI value.</p>"
        }
      },
      "documentation":"<p>OTAA device object for v1.0.x</p>"
    },
    "OtaaV1_1":{
      "type":"structure",
      "members":{
        "AppKey":{
          "shape":"AppKey",
          "documentation":"<p>The AppKey value.</p>"
        },
        "NwkKey":{
          "shape":"NwkKey",
          "documentation":"<p>The NwkKey value.</p>"
        },
        "JoinEui":{
          "shape":"JoinEui",
          "documentation":"<p>The JoinEUI value.</p>"
        }
      },
      "documentation":"<p>OTAA device object for v1.1</p>"
    },
    "PackageVersion":{
      "type":"string",
      "max":32,
      "min":1
    },
    "PartnerAccountArn":{"type":"string"},
    "PartnerAccountId":{
      "type":"string",
      "max":256
    },
    "PartnerType":{
      "type":"string",
      "enum":["Sidewalk"]
    },
    "PayloadData":{
      "type":"string",
      "max":2048,
      "pattern":"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$"
    },
    "PingSlotDr":{
      "type":"integer",
      "max":15,
      "min":0
    },
    "PingSlotFreq":{
      "type":"integer",
      "max":16700000,
      "min":1000000
    },
    "PingSlotPeriod":{
      "type":"integer",
      "max":4096,
      "min":128
    },
    "PrAllowed":{"type":"boolean"},
    "PresetFreq":{
      "type":"integer",
      "max":16700000,
      "min":1000000
    },
    "PutResourceLogLevelRequest":{
      "type":"structure",
      "required":[
        "ResourceIdentifier",
        "ResourceType",
        "LogLevel"
      ],
      "members":{
        "ResourceIdentifier":{
          "shape":"ResourceIdentifier",
          "location":"uri",
          "locationName":"ResourceIdentifier"
        },
        "ResourceType":{
          "shape":"ResourceType",
          "documentation":"<p>The type of the resource, which can be <code>WirelessDevice</code> or <code>WirelessGateway</code>.</p>",
          "location":"querystring",
          "locationName":"resourceType"
        },
        "LogLevel":{"shape":"LogLevel"}
      }
    },
    "PutResourceLogLevelResponse":{
      "type":"structure",
      "members":{
      }
    },
    "RaAllowed":{"type":"boolean"},
    "RegParamsRevision":{
      "type":"string",
      "max":64
    },
    "ReportDevStatusBattery":{"type":"boolean"},
    "ReportDevStatusMargin":{"type":"boolean"},
    "ResetAllResourceLogLevelsRequest":{
      "type":"structure",
      "members":{
      }
    },
    "ResetAllResourceLogLevelsResponse":{
      "type":"structure",
      "members":{
      }
    },
    "ResetResourceLogLevelRequest":{
      "type":"structure",
      "required":[
        "ResourceIdentifier",
        "ResourceType"
      ],
      "members":{
        "ResourceIdentifier":{
          "shape":"ResourceIdentifier",
          "location":"uri",
          "locationName":"ResourceIdentifier"
        },
        "ResourceType":{
          "shape":"ResourceType",
          "documentation":"<p>The type of the resource, which can be <code>WirelessDevice</code> or <code>WirelessGateway</code>.</p>",
          "location":"querystring",
          "locationName":"resourceType"
        }
      }
    },
    "ResetResourceLogLevelResponse":{
      "type":"structure",
      "members":{
      }
    },
    "ResourceId":{"type":"string"},
    "ResourceIdentifier":{
      "type":"string",
      "documentation":"<p>The identifier of the resource. For a Wireless Device, it is the wireless device ID. For a wireless gateway, it is the wireless gateway ID.</p>",
      "max":256
    },
    "ResourceNotFoundException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"Message"},
        "ResourceId":{
          "shape":"ResourceId",
          "documentation":"<p>Id of the not found resource.</p>"
        },
        "ResourceType":{
          "shape":"ResourceType",
          "documentation":"<p>Type of the font found resource.</p>"
        }
      },
      "documentation":"<p>Resource does not exist.</p>",
      "error":{"httpStatusCode":404},
      "exception":true
    },
    "ResourceType":{"type":"string"},
    "Result":{
      "type":"string",
      "max":2048
    },
    "RfRegion":{
      "type":"string",
      "max":64
    },
    "RoleArn":{
      "type":"string",
      "max":2048,
      "min":20
    },
    "RxDataRate2":{
      "type":"integer",
      "max":15,
      "min":0
    },
    "RxDelay1":{
      "type":"integer",
      "max":15,
      "min":0
    },
    "RxDrOffset1":{
      "type":"integer",
      "max":7,
      "min":0
    },
    "RxFreq2":{
      "type":"integer",
      "max":16700000,
      "min":1000000
    },
    "SNwkSIntKey":{
      "type":"string",
      "pattern":"[a-fA-F0-9]{32}"
    },
    "SendDataToWirelessDeviceRequest":{
      "type":"structure",
      "required":[
        "Id",
        "TransmitMode",
        "PayloadData"
      ],
      "members":{
        "Id":{
          "shape":"WirelessDeviceId",
          "documentation":"<p>The ID of the wireless device to receive the data.</p>",
          "location":"uri",
          "locationName":"Id"
        },
        "TransmitMode":{
          "shape":"TransmitMode",
          "documentation":"<p>The transmit mode to use to send data to the wireless device. Can be: <code>0</code> for UM (unacknowledge mode) or <code>1</code> for AM (acknowledge mode).</p>"
        },
        "PayloadData":{
          "shape":"PayloadData",
          "documentation":"<p>The binary to be sent to the end device, encoded in base64.</p>"
        },
        "WirelessMetadata":{
          "shape":"WirelessMetadata",
          "documentation":"<p>Metadata about the message request.</p>"
        }
      }
    },
    "SendDataToWirelessDeviceResponse":{
      "type":"structure",
      "members":{
        "MessageId":{
          "shape":"MessageId",
          "documentation":"<p>The ID of the message sent to the wireless device.</p>"
        }
      }
    },
    "Seq":{
      "type":"integer",
      "max":16383,
      "min":0
    },
    "ServiceProfile":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"ServiceProfileArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        },
        "Name":{
          "shape":"ServiceProfileName",
          "documentation":"<p>The name of the resource.</p>"
        },
        "Id":{
          "shape":"ServiceProfileId",
          "documentation":"<p>The ID of the service profile.</p>"
        }
      },
      "documentation":"<p>Information about a service profile.</p>"
    },
    "ServiceProfileArn":{"type":"string"},
    "ServiceProfileId":{
      "type":"string",
      "max":256
    },
    "ServiceProfileList":{
      "type":"list",
      "member":{"shape":"ServiceProfile"}
    },
    "ServiceProfileName":{
      "type":"string",
      "max":256
    },
    "SessionKeysAbpV1_0_x":{
      "type":"structure",
      "members":{
        "NwkSKey":{
          "shape":"NwkSKey",
          "documentation":"<p>The NwkSKey value.</p>"
        },
        "AppSKey":{
          "shape":"AppSKey",
          "documentation":"<p>The AppSKey value.</p>"
        }
      },
      "documentation":"<p>Session keys for ABP v1.1</p>"
    },
    "SessionKeysAbpV1_1":{
      "type":"structure",
      "members":{
        "FNwkSIntKey":{
          "shape":"FNwkSIntKey",
          "documentation":"<p>The FNwkSIntKey value.</p>"
        },
        "SNwkSIntKey":{
          "shape":"SNwkSIntKey",
          "documentation":"<p>The SNwkSIntKey value.</p>"
        },
        "NwkSEncKey":{
          "shape":"NwkSEncKey",
          "documentation":"<p>The NwkSEncKey value.</p>"
        },
        "AppSKey":{
          "shape":"AppSKey",
          "documentation":"<p>The AppSKey value.</p>"
        }
      },
      "documentation":"<p>Session keys for ABP v1.1</p>"
    },
    "SidewalkAccountInfo":{
      "type":"structure",
      "members":{
        "AmazonId":{
          "shape":"AmazonId",
          "documentation":"<p>The Sidewalk Amazon ID.</p>"
        },
        "AppServerPrivateKey":{
          "shape":"AppServerPrivateKey",
          "documentation":"<p>The Sidewalk application server private key.</p>"
        }
      },
      "documentation":"<p>Information about a Sidewalk account.</p>"
    },
    "SidewalkAccountInfoWithFingerprint":{
      "type":"structure",
      "members":{
        "AmazonId":{
          "shape":"AmazonId",
          "documentation":"<p>The Sidewalk Amazon ID.</p>"
        },
        "Fingerprint":{
          "shape":"Fingerprint",
          "documentation":"<p>The fingerprint of the Sidewalk application server private key.</p>"
        },
        "Arn":{
          "shape":"PartnerAccountArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        }
      },
      "documentation":"<p>Information about a Sidewalk account.</p>"
    },
    "SidewalkAccountList":{
      "type":"list",
      "member":{"shape":"SidewalkAccountInfoWithFingerprint"}
    },
    "SidewalkDevice":{
      "type":"structure",
      "members":{
        "AmazonId":{"shape":"AmazonId"},
        "SidewalkId":{
          "shape":"SidewalkId",
          "documentation":"<p>The sidewalk device identification.</p>"
        },
        "SidewalkManufacturingSn":{
          "shape":"SidewalkManufacturingSn",
          "documentation":"<p>The Sidewalk manufacturing series number.</p>"
        },
        "DeviceCertificates":{
          "shape":"DeviceCertificateList",
          "documentation":"<p>The sidewalk device certificates for Ed25519 and P256r1.</p>"
        }
      },
      "documentation":"<p>Sidewalk device object.</p>"
    },
    "SidewalkDeviceMetadata":{
      "type":"structure",
      "members":{
        "Rssi":{
          "shape":"Integer",
          "documentation":"<p>The RSSI value.</p>"
        },
        "BatteryLevel":{
          "shape":"BatteryLevel",
          "documentation":"<p>Sidewalk device battery level.</p>"
        },
        "Event":{
          "shape":"Event",
          "documentation":"<p>Sidewalk device status notification.</p>"
        },
        "DeviceState":{
          "shape":"DeviceState",
          "documentation":"<p>Device state defines the device status of sidewalk device.</p>"
        }
      },
      "documentation":"<p>MetaData for Sidewalk device.</p>"
    },
    "SidewalkId":{
      "type":"string",
      "documentation":"<p>The sidewalk device identification.</p>",
      "max":256
    },
    "SidewalkListDevice":{
      "type":"structure",
      "members":{
        "AmazonId":{
          "shape":"AmazonId",
          "documentation":"<p>The Sidewalk Amazon ID.</p>"
        },
        "SidewalkId":{
          "shape":"SidewalkId",
          "documentation":"<p>The sidewalk device identification.</p>"
        },
        "SidewalkManufacturingSn":{
          "shape":"SidewalkManufacturingSn",
          "documentation":"<p>The Sidewalk manufacturing series number.</p>"
        },
        "DeviceCertificates":{
          "shape":"DeviceCertificateList",
          "documentation":"<p>The sidewalk device certificates for Ed25519 and P256r1.</p>"
        }
      },
      "documentation":"<p>Sidewalk object used by list functions.</p>"
    },
    "SidewalkManufacturingSn":{
      "type":"string",
      "max":64
    },
    "SidewalkSendDataToDevice":{
      "type":"structure",
      "members":{
        "Seq":{
          "shape":"Seq",
          "documentation":"<p>The sequence number.</p>"
        },
        "MessageType":{"shape":"MessageType"}
      },
      "documentation":"<p>Information about a Sidewalk router.</p>"
    },
    "SidewalkUpdateAccount":{
      "type":"structure",
      "members":{
        "AppServerPrivateKey":{
          "shape":"AppServerPrivateKey",
          "documentation":"<p>The new Sidewalk application server private key.</p>"
        }
      },
      "documentation":"<p>Sidewalk update.</p>"
    },
    "SigningAlg":{
      "type":"string",
      "documentation":"<p>The certificate chain algorithm provided by sidewalk.</p>",
      "enum":[
        "Ed25519",
        "P256r1"
      ]
    },
    "Station":{
      "type":"string",
      "max":4096,
      "min":1
    },
    "SubBand":{
      "type":"integer",
      "documentation":"<p>A subset of supported frequency channels in a certain RFRegion.</p>",
      "max":8,
      "min":1
    },
    "SubBands":{
      "type":"list",
      "member":{"shape":"SubBand"},
      "documentation":"<p>A list of integer indicating which sub bands are supported by LoRa gateway.</p>",
      "max":8,
      "min":0
    },
    "Supports32BitFCnt":{"type":"boolean"},
    "SupportsClassB":{"type":"boolean"},
    "SupportsClassC":{"type":"boolean"},
    "SupportsJoin":{"type":"boolean"},
    "Tag":{
      "type":"structure",
      "required":[
        "Key",
        "Value"
      ],
      "members":{
        "Key":{
          "shape":"TagKey",
          "documentation":"<p>The tag's key value.</p>"
        },
        "Value":{
          "shape":"TagValue",
          "documentation":"<p>The tag's value.</p>"
        }
      },
      "documentation":"<p>A simple label consisting of a customer-defined key-value pair</p>"
    },
    "TagKey":{
      "type":"string",
      "max":128,
      "min":1
    },
    "TagKeyList":{
      "type":"list",
      "member":{"shape":"TagKey"},
      "max":200,
      "min":0
    },
    "TagList":{
      "type":"list",
      "member":{"shape":"Tag"},
      "max":200,
      "min":0
    },
    "TagResourceRequest":{
      "type":"structure",
      "required":[
        "ResourceArn",
        "Tags"
      ],
      "members":{
        "ResourceArn":{
          "shape":"AmazonResourceName",
          "documentation":"<p>The ARN of the resource to add tags to.</p>",
          "location":"querystring",
          "locationName":"resourceArn"
        },
        "Tags":{
          "shape":"TagList",
          "documentation":"<p>Adds to or modifies the tags of the given resource. Tags are metadata that you can use to manage a resource.</p>"
        }
      }
    },
    "TagResourceResponse":{
      "type":"structure",
      "members":{
      }
    },
    "TagValue":{
      "type":"string",
      "max":256,
      "min":0
    },
    "TargetPer":{
      "type":"integer",
      "max":100,
      "min":0
    },
    "TestWirelessDeviceRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessDeviceId",
          "documentation":"<p>The ID of the wireless device to test.</p>",
          "location":"uri",
          "locationName":"Id"
        }
      }
    },
    "TestWirelessDeviceResponse":{
      "type":"structure",
      "members":{
        "Result":{
          "shape":"Result",
          "documentation":"<p>The result returned by the test.</p>"
        }
      }
    },
    "ThingArn":{"type":"string"},
    "ThingName":{"type":"string"},
    "ThrottlingException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"Message"}
      },
      "documentation":"<p>The request was denied because it exceeded the allowed API request rate.</p>",
      "error":{"httpStatusCode":429},
      "exception":true
    },
    "TooManyTagsException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"Message"},
        "ResourceName":{
          "shape":"AmazonResourceName",
          "documentation":"<p>Name of the resource that exceeds maximum number of tags allowed.</p>"
        }
      },
      "documentation":"<p>The request was denied because the resource can't have any more tags.</p>",
      "error":{"httpStatusCode":400},
      "exception":true
    },
    "TransmitMode":{
      "type":"integer",
      "max":1,
      "min":0
    },
    "UlBucketSize":{
      "type":"integer",
      "max":2147483647,
      "min":0
    },
    "UlRate":{
      "type":"integer",
      "max":2147483647,
      "min":0
    },
    "UlRatePolicy":{
      "type":"string",
      "max":256
    },
    "UntagResourceRequest":{
      "type":"structure",
      "required":[
        "ResourceArn",
        "TagKeys"
      ],
      "members":{
        "ResourceArn":{
          "shape":"AmazonResourceName",
          "documentation":"<p>The ARN of the resource to remove tags from.</p>",
          "location":"querystring",
          "locationName":"resourceArn"
        },
        "TagKeys":{
          "shape":"TagKeyList",
          "documentation":"<p>A list of the keys of the tags to remove from the resource.</p>",
          "location":"querystring",
          "locationName":"tagKeys"
        }
      }
    },
    "UntagResourceResponse":{
      "type":"structure",
      "members":{
      }
    },
    "UpdateDataSource":{
      "type":"string",
      "max":4096,
      "min":1
    },
    "UpdateDestinationRequest":{
      "type":"structure",
      "required":["Name"],
      "members":{
        "Name":{
          "shape":"DestinationName",
          "documentation":"<p>The new name of the resource.</p>",
          "location":"uri",
          "locationName":"Name"
        },
        "ExpressionType":{
          "shape":"ExpressionType",
          "documentation":"<p>The type of value in <code>Expression</code>.</p>"
        },
        "Expression":{
          "shape":"Expression",
          "documentation":"<p>The new rule name or topic rule to send messages to.</p>"
        },
        "Description":{
          "shape":"Description",
          "documentation":"<p>A new description of the resource.</p>"
        },
        "RoleArn":{
          "shape":"RoleArn",
          "documentation":"<p>The ARN of the IAM Role that authorizes the destination.</p>"
        }
      }
    },
    "UpdateDestinationResponse":{
      "type":"structure",
      "members":{
      }
    },
    "UpdateLogLevelsByResourceTypesRequest":{
      "type":"structure",
      "members":{
        "DefaultLogLevel":{"shape":"LogLevel"},
        "WirelessDeviceLogOptions":{"shape":"WirelessDeviceLogOptionList"},
        "WirelessGatewayLogOptions":{"shape":"WirelessGatewayLogOptionList"}
      }
    },
    "UpdateLogLevelsByResourceTypesResponse":{
      "type":"structure",
      "members":{
      }
    },
    "UpdatePartnerAccountRequest":{
      "type":"structure",
      "required":[
        "Sidewalk",
        "PartnerAccountId",
        "PartnerType"
      ],
      "members":{
        "Sidewalk":{
          "shape":"SidewalkUpdateAccount",
          "documentation":"<p>The Sidewalk account credentials.</p>"
        },
        "PartnerAccountId":{
          "shape":"PartnerAccountId",
          "documentation":"<p>The ID of the partner account to update.</p>",
          "location":"uri",
          "locationName":"PartnerAccountId"
        },
        "PartnerType":{
          "shape":"PartnerType",
          "documentation":"<p>The partner type.</p>",
          "location":"querystring",
          "locationName":"partnerType"
        }
      }
    },
    "UpdatePartnerAccountResponse":{
      "type":"structure",
      "members":{
      }
    },
    "UpdateSignature":{
      "type":"string",
      "max":4096,
      "min":1
    },
    "UpdateWirelessDeviceRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessDeviceId",
          "documentation":"<p>The ID of the resource to update.</p>",
          "location":"uri",
          "locationName":"Id"
        },
        "DestinationName":{
          "shape":"DestinationName",
          "documentation":"<p>The name of the new destination for the device.</p>"
        },
        "Name":{
          "shape":"WirelessDeviceName",
          "documentation":"<p>The new name of the resource.</p>"
        },
        "Description":{
          "shape":"Description",
          "documentation":"<p>A new description of the resource.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANUpdateDevice",
          "documentation":"<p>The updated wireless device's configuration.</p>"
        }
      }
    },
    "UpdateWirelessDeviceResponse":{
      "type":"structure",
      "members":{
      }
    },
    "UpdateWirelessGatewayRequest":{
      "type":"structure",
      "required":["Id"],
      "members":{
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the resource to update.</p>",
          "location":"uri",
          "locationName":"Id"
        },
        "Name":{
          "shape":"WirelessGatewayName",
          "documentation":"<p>The new name of the resource.</p>"
        },
        "Description":{
          "shape":"Description",
          "documentation":"<p>A new description of the resource.</p>"
        },
        "JoinEuiFilters":{"shape":"JoinEuiFilters"},
        "NetIdFilters":{"shape":"NetIdFilters"}
      }
    },
    "UpdateWirelessGatewayResponse":{
      "type":"structure",
      "members":{
      }
    },
    "UpdateWirelessGatewayTaskCreate":{
      "type":"structure",
      "members":{
        "UpdateDataSource":{
          "shape":"UpdateDataSource",
          "documentation":"<p>The link to the S3 bucket.</p>"
        },
        "UpdateDataRole":{
          "shape":"UpdateDataSource",
          "documentation":"<p>The IAM role used to read data from the S3 bucket.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANUpdateGatewayTaskCreate",
          "documentation":"<p>The properties that relate to the LoRaWAN wireless gateway.</p>"
        }
      },
      "documentation":"<p>UpdateWirelessGatewayTaskCreate object.</p>"
    },
    "UpdateWirelessGatewayTaskEntry":{
      "type":"structure",
      "members":{
        "Id":{
          "shape":"WirelessGatewayTaskDefinitionId",
          "documentation":"<p>The ID of the new wireless gateway task entry.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANUpdateGatewayTaskEntry",
          "documentation":"<p>The properties that relate to the LoRaWAN wireless gateway.</p>"
        },
        "Arn":{
          "shape":"WirelessGatewayTaskDefinitionArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        }
      },
      "documentation":"<p>UpdateWirelessGatewayTaskEntry object.</p>"
    },
    "ValidationException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"Message"}
      },
      "documentation":"<p>The input did not meet the specified constraints.</p>",
      "error":{"httpStatusCode":400},
      "exception":true
    },
    "WirelessDeviceArn":{"type":"string"},
    "WirelessDeviceEvent":{
      "type":"string",
      "documentation":"<p>The event for a log message, if the log message is tied to a wireless device.</p>",
      "enum":[
        "Join",
        "Rejoin",
        "Uplink_Data",
        "Downlink_Data",
        "Registration"
      ]
    },
    "WirelessDeviceEventLogOption":{
      "type":"structure",
      "required":[
        "Event",
        "LogLevel"
      ],
      "members":{
        "Event":{"shape":"WirelessDeviceEvent"},
        "LogLevel":{"shape":"LogLevel"}
      },
      "documentation":"<p>The log options for a wireless device event and can be used to set log levels for a specific wireless device event.</p> <p>For a LoRaWAN device, possible events for a log messsage are: <code>Join</code>, <code>Rejoin</code>, <code>Downlink_Data</code>, and <code>Uplink_Data</code>. For a Sidewalk device, possible events for a log message are <code>Registration</code>, <code>Downlink_Data</code>, and <code>Uplink_Data</code>.</p>"
    },
    "WirelessDeviceEventLogOptionList":{
      "type":"list",
      "member":{"shape":"WirelessDeviceEventLogOption"},
      "documentation":"<p>The list of wireless device event log options.</p>"
    },
    "WirelessDeviceId":{
      "type":"string",
      "max":256
    },
    "WirelessDeviceIdType":{
      "type":"string",
      "enum":[
        "WirelessDeviceId",
        "DevEui",
        "ThingName",
        "SidewalkManufacturingSn"
      ]
    },
    "WirelessDeviceLogOption":{
      "type":"structure",
      "required":[
        "Type",
        "LogLevel"
      ],
      "members":{
        "Type":{
          "shape":"WirelessDeviceType",
          "documentation":"<p>The wireless device type.</p>"
        },
        "LogLevel":{"shape":"LogLevel"},
        "Events":{"shape":"WirelessDeviceEventLogOptionList"}
      },
      "documentation":"<p>The log options for wireless devices and can be used to set log levels for a specific type of wireless device.</p>"
    },
    "WirelessDeviceLogOptionList":{
      "type":"list",
      "member":{"shape":"WirelessDeviceLogOption"},
      "documentation":"<p>The list of wireless device log options.</p>"
    },
    "WirelessDeviceName":{
      "type":"string",
      "max":256
    },
    "WirelessDeviceStatistics":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"WirelessDeviceArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        },
        "Id":{
          "shape":"WirelessDeviceId",
          "documentation":"<p>The ID of the wireless device reporting the data.</p>"
        },
        "Type":{
          "shape":"WirelessDeviceType",
          "documentation":"<p>The wireless device type.</p>"
        },
        "Name":{
          "shape":"WirelessDeviceName",
          "documentation":"<p>The name of the resource.</p>"
        },
        "DestinationName":{
          "shape":"DestinationName",
          "documentation":"<p>The name of the destination to which the device is assigned.</p>"
        },
        "LastUplinkReceivedAt":{
          "shape":"ISODateTimeString",
          "documentation":"<p>The date and time when the most recent uplink was received.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANListDevice",
          "documentation":"<p>LoRaWAN device info.</p>"
        },
        "Sidewalk":{
          "shape":"SidewalkListDevice",
          "documentation":"<p>The Sidewalk account credentials.</p>"
        }
      },
      "documentation":"<p>Information about a wireless device's operation.</p>"
    },
    "WirelessDeviceStatisticsList":{
      "type":"list",
      "member":{"shape":"WirelessDeviceStatistics"}
    },
    "WirelessDeviceType":{
      "type":"string",
      "enum":[
        "Sidewalk",
        "LoRaWAN"
      ]
    },
    "WirelessGatewayArn":{"type":"string"},
    "WirelessGatewayEvent":{
      "type":"string",
      "documentation":"<p>The event for a log message, if the log message is tied to a wireless gateway.</p>",
      "enum":[
        "CUPS_Request",
        "Certificate"
      ]
    },
    "WirelessGatewayEventLogOption":{
      "type":"structure",
      "required":[
        "Event",
        "LogLevel"
      ],
      "members":{
        "Event":{"shape":"WirelessGatewayEvent"},
        "LogLevel":{"shape":"LogLevel"}
      },
      "documentation":"<p>The log options for a wireless gateway event and can be used to set log levels for a specific wireless gateway event.</p> <p>For a LoRaWAN gateway, possible events for a log message are <code>CUPS_Request</code> and <code>Certificate</code>.</p>"
    },
    "WirelessGatewayEventLogOptionList":{
      "type":"list",
      "member":{"shape":"WirelessGatewayEventLogOption"},
      "documentation":"<p>The list of wireless gateway event log options.</p>"
    },
    "WirelessGatewayId":{
      "type":"string",
      "max":256
    },
    "WirelessGatewayIdType":{
      "type":"string",
      "enum":[
        "GatewayEui",
        "WirelessGatewayId",
        "ThingName"
      ]
    },
    "WirelessGatewayLogOption":{
      "type":"structure",
      "required":[
        "Type",
        "LogLevel"
      ],
      "members":{
        "Type":{"shape":"WirelessGatewayType"},
        "LogLevel":{"shape":"LogLevel"},
        "Events":{"shape":"WirelessGatewayEventLogOptionList"}
      },
      "documentation":"<p>The log options for wireless gateways and can be used to set log levels for a specific type of wireless gateway.</p>"
    },
    "WirelessGatewayLogOptionList":{
      "type":"list",
      "member":{"shape":"WirelessGatewayLogOption"},
      "documentation":"<p>The list of wireless gateway log options.</p>"
    },
    "WirelessGatewayName":{
      "type":"string",
      "max":256
    },
    "WirelessGatewayServiceType":{
      "type":"string",
      "enum":[
        "CUPS",
        "LNS"
      ]
    },
    "WirelessGatewayStatistics":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"WirelessGatewayArn",
          "documentation":"<p>The Amazon Resource Name of the resource.</p>"
        },
        "Id":{
          "shape":"WirelessGatewayId",
          "documentation":"<p>The ID of the wireless gateway reporting the data.</p>"
        },
        "Name":{
          "shape":"WirelessGatewayName",
          "documentation":"<p>The name of the resource.</p>"
        },
        "Description":{
          "shape":"Description",
          "documentation":"<p>The description of the resource.</p>"
        },
        "LoRaWAN":{
          "shape":"LoRaWANGateway",
          "documentation":"<p>LoRaWAN gateway info.</p>"
        },
        "LastUplinkReceivedAt":{
          "shape":"ISODateTimeString",
          "documentation":"<p>The date and time when the most recent uplink was received.</p>"
        }
      },
      "documentation":"<p>Information about a wireless gateway's operation.</p>"
    },
    "WirelessGatewayStatisticsList":{
      "type":"list",
      "member":{"shape":"WirelessGatewayStatistics"}
    },
    "WirelessGatewayTaskDefinitionArn":{"type":"string"},
    "WirelessGatewayTaskDefinitionId":{
      "type":"string",
      "max":36,
      "pattern":"[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}"
    },
    "WirelessGatewayTaskDefinitionList":{
      "type":"list",
      "member":{"shape":"UpdateWirelessGatewayTaskEntry"}
    },
    "WirelessGatewayTaskDefinitionType":{
      "type":"string",
      "enum":["UPDATE"]
    },
    "WirelessGatewayTaskName":{
      "type":"string",
      "max":2048,
      "min":1
    },
    "WirelessGatewayTaskStatus":{
      "type":"string",
      "enum":[
        "PENDING",
        "IN_PROGRESS",
        "FIRST_RETRY",
        "SECOND_RETRY",
        "COMPLETED",
        "FAILED"
      ]
    },
    "WirelessGatewayType":{
      "type":"string",
      "documentation":"<p>The wireless gateway type.</p>",
      "enum":["LoRaWAN"]
    },
    "WirelessMetadata":{
      "type":"structure",
      "members":{
        "LoRaWAN":{
          "shape":"LoRaWANSendDataToDevice",
          "documentation":"<p>LoRaWAN device info.</p>"
        },
        "Sidewalk":{
          "shape":"SidewalkSendDataToDevice",
          "documentation":"<p>The Sidewalk account credentials.</p>"
        }
      },
      "documentation":"<p>WirelessMetadata object.</p>"
    }
  },
  "documentation":"<p>AWS IoT Wireless API documentation</p>"
}
