CreatePricingRule
Creates a pricing rule can be associated to a pricing plan, or a set of pricing plans.
Request Syntax
POST /create-pricing-rule HTTP/1.1
X-Amzn-Client-Token: ClientToken
Content-type: application/json
{
"BillingEntity": "string
",
"Description": "string
",
"ModifierPercentage": number
,
"Name": "string
",
"Operation": "string
",
"Scope": "string
",
"Service": "string
",
"Tags": {
"string
" : "string
"
},
"Tiering": {
"FreeTier": {
"Activated": boolean
}
},
"Type": "string
",
"UsageType": "string
"
}
URI Request Parameters
The request uses the following URI parameters.
- ClientToken
-
The token that's needed to support idempotency. Idempotency isn't currently supported, but will be implemented in a future update.
Length Constraints: Minimum length of 1. Maximum length of 64.
Pattern:
[a-zA-Z0-9-]+
Request Body
The request accepts the following data in JSON format.
- BillingEntity
-
The seller of services provided by AWS, their affiliates, or third-party providers selling services via AWS Marketplace.
Type: String
Pattern:
[a-zA-Z0-9 ]+
Required: No
- Description
-
The pricing rule description.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 1024.
Required: No
- ModifierPercentage
-
A percentage modifier that's applied on the public pricing rates.
Type: Double
Valid Range: Minimum value of 0.
Required: No
- Name
-
The pricing rule name. The names must be unique to each pricing rule.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[a-zA-Z0-9_\+=\.\-@]+
Required: Yes
- Operation
-
Operation is the specific AWS action covered by this line item. This describes the specific usage of the line item.
If the
Scope
attribute is set toSKU
, this attribute indicates which operation thePricingRule
is modifying. For example, a value ofRunInstances:0202
indicates the operation of running an Amazon EC2 instance.Type: String
Length Constraints: Minimum length of 1. Maximum length of 256.
Pattern:
\S+
Required: No
- Scope
-
The scope of pricing rule that indicates if it's globally applicable, or it's service-specific.
Type: String
Valid Values:
GLOBAL | SERVICE | BILLING_ENTITY
Required: Yes
- Service
-
If the
Scope
attribute is set toSERVICE
orSKU
, the attribute indicates which service thePricingRule
is applicable for.Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[a-zA-Z0-9]+
Required: No
- Tags
-
A map that contains tag keys and tag values that are attached to a pricing rule.
Type: String to string map
Map Entries: Maximum number of 200 items.
Key Length Constraints: Minimum length of 1. Maximum length of 128.
Value Length Constraints: Minimum length of 0. Maximum length of 256.
Required: No
- Tiering
-
The set of tiering configurations for the pricing rule.
Type: CreateTieringInput object
Required: No
- Type
-
The type of pricing rule.
Type: String
Valid Values:
MARKUP | DISCOUNT | TIERING
Required: Yes
- UsageType
-
Usage type is the unit that each service uses to measure the usage of a specific type of resource.
If the
Scope
attribute is set toSKU
, this attribute indicates which usage type thePricingRule
is modifying. For example,USW2-BoxUsage:m2.2xlarge
describes anM2 High Memory Double Extra Large
instance in the US West (Oregon) Region.Type: String
Length Constraints: Minimum length of 1. Maximum length of 256.
Pattern:
\S+
Required: No
Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"Arn": "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.
- Arn
-
The Amazon Resource Name (ARN) of the created pricing rule.
Type: String
Pattern:
(arn:aws(-cn)?:billingconductor::[0-9]{12}:pricingrule/)?[a-zA-Z0-9]{10}
Errors
For information about the errors that are common to all actions, see Common Errors.
- AccessDeniedException
-
You do not have sufficient access to perform this action.
HTTP Status Code: 403
- ConflictException
-
You can cause an inconsistent state by updating or deleting a resource.
HTTP Status Code: 409
- InternalServerException
-
An unexpected error occurred while processing a request.
HTTP Status Code: 500
- ServiceLimitExceededException
-
The request would cause a service limit to exceed.
HTTP Status Code: 402
- ThrottlingException
-
The request was denied due to request throttling.
HTTP Status Code: 429
- ValidationException
-
The input doesn't match with the constraints specified by AWS services.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: