AttachThingPrincipal
Attaches the specified principal to the specified thing. A principal can be X.509 certificates, Amazon Cognito identities or federated identities.
Requires permission to access the AttachThingPrincipal action.
Request Syntax
PUT /things/thingName/principals?thingPrincipalType=thingPrincipalType HTTP/1.1
x-amzn-principal: principal
    
      URI Request Parameters
The request uses the following URI parameters.
- principal
 - 
               
The principal, which can be a certificate ARN (as returned from the CreateCertificate operation) or an Amazon Cognito ID.
Required: Yes
 - thingName
 - 
               
The name of the thing.
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[a-zA-Z0-9:_-]+Required: Yes
 - thingPrincipalType
 - 
               
The type of the relation you want to specify when you attach a principal to a thing.
- 
                     
EXCLUSIVE_THING- Attaches the specified principal to the specified thing, exclusively. The thing will be the only thing that’s attached to the principal. 
- 
                     
NON_EXCLUSIVE_THING- Attaches the specified principal to the specified thing. Multiple things can be attached to the principal. 
Valid Values:
EXCLUSIVE_THING | NON_EXCLUSIVE_THING - 
                     
 
Request Body
The request does not have a request body.
Response Syntax
HTTP/1.1 200
    
      Response Elements
If the action is successful, the service sends back an HTTP 200 response with an empty HTTP body.
Errors
- InternalFailureException
 - 
               
An unexpected error has occurred.
- message
 - 
                        
The message for the exception.
 
HTTP Status Code: 500
 - InvalidRequestException
 - 
               
The request is not valid.
- message
 - 
                        
The message for the exception.
 
HTTP Status Code: 400
 - ResourceNotFoundException
 - 
               
The specified resource does not exist.
- message
 - 
                        
The message for the exception.
 
HTTP Status Code: 404
 - ServiceUnavailableException
 - 
               
The service is temporarily unavailable.
- message
 - 
                        
The message for the exception.
 
HTTP Status Code: 503
 - ThrottlingException
 - 
               
The rate exceeds the limit.
- message
 - 
                        
The message for the exception.
 
HTTP Status Code: 400
 - UnauthorizedException
 - 
               
You are not authorized to perform this operation.
- message
 - 
                        
The message for the exception.
 
HTTP Status Code: 401
 
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: