ves-io-schema-views-rate_limiter_policy-API-Replace
On This Page:
Examples of replacing rate_limiter_policy
Usecase:
Replace rate-limiter-policy-1
Request using vesctl:
vesctl configuration replace rate_limiter_policy -i rate_limiter_policy.yaml
where file rate_limiter_policy.yaml has following contents (rate_limiter_policy.ReplaceRequest):
RequestJSON:
{
"metadata": {
"name": "rate-limiter-policy-1",
"namespace": "documentation"
},
"spec": {
"server_selector": {
"expressions": [
"geoip.ves.io/region in (US-West), deployment in (testing)"
]
},
"rules": [
{
"metadata": {
"name": "rule-3",
"description": "description-3"
},
"spec": {
"apply_rate_limiter": {},
"path": {
"exact_values": [
"/register",
"/guest-play"
]
}
}
},
{
"metadata": {
"name": "rule-4",
"description": "description-4"
},
"spec": {
"apply_rate_limiter": {},
"path": {
"exact_values": [
"/register-v2",
"/guest-play-v2"
]
},
"headers": [
{
"name": "Accept-Language",
"item": {
"exact_values": [
"en-UK"
]
}
},
{
"name": "Accept-Encoding",
"item": {
"exact_values": [
"deflate"
]
}
}
]
}
}
]
}
}
vesctl yaml response: None
Request using curl:
curl -X 'PUT' -d '{"metadata":{"name":"rate-limiter-policy-1","namespace":"documentation"},"spec":{"server_selector":{"expressions":["geoip.ves.io/region in (US-West), deployment in (testing)"]},"rules":[{"metadata":{"name":"rule-3","description":"description-3"},"spec":{"apply_rate_limiter":{},"path":{"exact_values":["/register","/guest-play"]}}},{"metadata":{"name":"rule-4","description":"description-4"},"spec":{"apply_rate_limiter":{},"path":{"exact_values":["/register-v2","/guest-play-v2"]},"headers":[{"name":"Accept-Language","item":{"exact_values":["en-UK"]}},{"name":"Accept-Encoding","item":{"exact_values":["deflate"]}}]}}]}}' -H 'X-Volterra-Useragent: v1/pgm=_var_folders_2__8qnt6fwd5dvglr1xqq6l8b7w0000gp_T_go-build3109416560_b001_apidocs.test/host=C02FN35BMD6R/svc=S:examplesvc/site=mytestce01' 'https://acmecorp.console.ves.volterra.io/api/config/namespaces/documentation/rate_limiter_policys/rate-limiter-policy-1'
curl response:
HTTP/1.1 200 OK
Content-Length: 4
Content-Type: application/json
Date: Thu, 21 Mar 2024 14:08:50 GMT
Vary: Accept-Encoding
{
}