Menu
AWS IoT
API Reference (API Version 2015-05-28)

CreatePolicy

Creates an AWS IoT policy.

The created policy is the default version for the policy. This operation creates a policy version with a version identifier of 1 and sets 1 as the policy's default version.

Request Syntax

POST /policies/policyName HTTP/1.1
Content-type: application/json

{
   "policyDocument": "string"
}

URI Request Parameters

The request requires the following URI parameters.

policyName

The policy name.

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

Pattern: [\w+=,.@-]+

Request Body

The request accepts the following data in JSON format.

policyDocument

The JSON document that describes the policy. policyDocument must have a minimum length of 1, with a maximum length of 2048, excluding whitespace.

Type: String

Required: Yes

Response Syntax

HTTP/1.1 200
Content-type: application/json

{
   "policyArn": "string",
   "policyDocument": "string",
   "policyName": "string",
   "policyVersionId": "string"
}

Response Elements

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

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

policyArn

The policy ARN.

Type: String

policyDocument

The JSON document that describes the policy.

Type: String

policyName

The policy name.

Type: String

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

Pattern: [\w+=,.@-]+

policyVersionId

The policy version ID.

Type: String

Pattern: [0-9]+

Errors

InternalFailureException

An unexpected error has occurred.

HTTP Status Code: 500

InvalidRequestException

The request is not valid.

HTTP Status Code: 400

MalformedPolicyException

The policy documentation is not valid.

HTTP Status Code: 400

ResourceAlreadyExistsException

The resource already exists.

HTTP Status Code: 409

ServiceUnavailableException

The service is temporarily unavailable.

HTTP Status Code: 503

ThrottlingException

The rate exceeds the limit.

HTTP Status Code: 429

UnauthorizedException

You are not authorized to perform this operation.

HTTP Status Code: 401

See Also

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