CreateLinkRoutingRule
Creates a routing rule for a link.
Routing rules use priority-based evaluation where lower priority numbers are evaluated first. Each rule specifies conditions that must all match for the rule to apply.
Request Syntax
POST /responder-gateway/gatewayId/link/linkId/routing-rule HTTP/1.1
Content-type: application/json
{
"clientToken": "string",
"conditions": {
"hostHeader": "string",
"hostHeaderWildcard": "string",
"pathExact": "string",
"pathPrefix": "string",
"queryStringEquals": {
"key": "string",
"value": "string"
},
"queryStringExists": "string"
},
"priority": number,
"tags": {
"string" : "string"
}
}
URI Request Parameters
The request uses the following URI parameters.
- gatewayId
-
The unique identifier of the gateway.
Length Constraints: Minimum length of 8. Maximum length of 32.
Pattern:
rtb-gw-[a-z0-9-]{1,25}Required: Yes
- linkId
-
The unique identifier of the link.
Length Constraints: Minimum length of 6. Maximum length of 30.
Pattern:
link-[a-z0-9-]{1,25}Required: Yes
Request Body
The request accepts the following data in JSON format.
- clientToken
-
Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value
. If you don't provide this value, then AWS generates a random one for you.
If you retry the operation with the same
ClientToken, but with different parameters, the retry fails with anIdempotentParameterMismatcherror.Type: String
Required: Yes
- conditions
-
The conditions for the routing rule. All specified fields must match for the rule to apply. At least one condition field must be set.
Type: RuleCondition object
Required: Yes
- priority
-
The priority of the routing rule. Lower numbers are evaluated first. Valid values are 1 to 1000. Priority must be unique among non-deleted rules within a link.
Type: Integer
Valid Range: Minimum value of 1. Maximum value of 1000.
Required: Yes
-
A map of the key-value pairs of the tag or tags to assign to the resource.
Type: String to string map
Key Length Constraints: Minimum length of 1. Maximum length of 128.
Key Pattern:
(resourceArn|internalId|[a-zA-Z0-9+\-=._:/@]+)Value Length Constraints: Minimum length of 0. Maximum length of 1600.
Required: No
Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"createdAt": number,
"ruleId": "string",
"status": "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.
- createdAt
-
The timestamp of when the routing rule was created.
Type: Timestamp
- ruleId
-
The unique identifier of the routing rule.
Type: String
Length Constraints: Minimum length of 6. Maximum length of 30.
Pattern:
rule-[a-z0-9-]{1,25} - status
-
The status of the routing rule.
Type: String
Valid Values:
CREATION_IN_PROGRESS | ACTIVE | UPDATE_IN_PROGRESS | DELETION_IN_PROGRESS | DELETED | FAILED
Errors
For information about the errors that are common to all actions, see Common Error Types.
- AccessDeniedException
-
The request could not be completed because you do not have sufficient access to perform this action.
HTTP Status Code: 403
- ConflictException
-
The request could not be completed because of a conflict in the current state of the resource.
HTTP Status Code: 409
- InternalServerException
-
The request could not be completed because of an internal server error. Try your call again.
HTTP Status Code: 500
- ResourceNotFoundException
-
The request could not be completed because the resource does not exist.
HTTP Status Code: 404
- ServiceQuotaExceededException
-
The request could not be completed because you exceeded a service quota.
HTTP Status Code: 402
- ThrottlingException
-
The request was denied due to request throttling.
HTTP Status Code: 429
- ValidationException
-
The request could not be completed because it fails satisfy the constraints specified by the service.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: