Foxpro / Anypoint Platform APIs / Add automated policies (example spike-control)
Back to Collection Items
LOCAL loHttp
LOCAL lnSuccess
LOCAL loJson
LOCAL loResp
* This example assumes the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Http')
loHttp = CreateObject('Chilkat.Http')
* Use this online tool to generate code from sample JSON: Generate Code to Create JSON
* The following JSON is sent in the request body.
* {
* "configurationData": {
* "maximumRequests": 1,
* "timePeriodInMilliseconds": 1000,
* "delayTimeInMillis": 1000,
* "delayAttempts": 1,
* "queuingLimit": 5,
* "exposeHeaders": false
* },
* "id": null,
* "pointcutData": null,
* "ruleOfApplication": {
* "environmentId": "{{environment_id}}",
* "organizationId": "{{organization_id}}",
* "range": {
* "from": "4.1.1"
* }
* },
* "groupId": "68ef9520-24e9-4cf2-b2f5-620025690913",
* "assetId": "spike-control",
* "assetVersion": "1.1.5"
* }
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject')
loJson = CreateObject('Chilkat.JsonObject')
loJson.UpdateInt("configurationData.maximumRequests",1)
loJson.UpdateInt("configurationData.timePeriodInMilliseconds",1000)
loJson.UpdateInt("configurationData.delayTimeInMillis",1000)
loJson.UpdateInt("configurationData.delayAttempts",1)
loJson.UpdateInt("configurationData.queuingLimit",5)
loJson.UpdateBool("configurationData.exposeHeaders",0)
loJson.UpdateNull("id")
loJson.UpdateNull("pointcutData")
loJson.UpdateString("ruleOfApplication.environmentId","{{environment_id}}")
loJson.UpdateString("ruleOfApplication.organizationId","{{organization_id}}")
loJson.UpdateString("ruleOfApplication.range.from","4.1.1")
loJson.UpdateString("groupId","68ef9520-24e9-4cf2-b2f5-620025690913")
loJson.UpdateString("assetId","spike-control")
loJson.UpdateString("assetVersion","1.1.5")
* Adds the "Authorization: Bearer {{token}}" header.
loHttp.AuthToken = "{{token}}"
loResp = loHttp.PostJson3("https://domain.com/apimanager/api/v1/organizations/{{organization_id}}/automated-policies","application/json",loJson)
IF (loHttp.LastMethodSuccess = 0) THEN
? loHttp.LastErrorText
RELEASE loHttp
RELEASE loJson
CANCEL
ENDIF
? STR(loResp.StatusCode)
? loResp.BodyStr
RELEASE loResp
RELEASE loHttp
RELEASE loJson
Curl Command
curl -X POST
-H "Authorization: Bearer {{token}}"
-d '{
"configurationData":{
"maximumRequests":1,
"timePeriodInMilliseconds":1000,
"delayTimeInMillis":1000,
"delayAttempts":1,
"queuingLimit":5,
"exposeHeaders":false
},
"id":null,
"pointcutData":null,
"ruleOfApplication":{
"environmentId":"{{environment_id}}",
"organizationId":"{{organization_id}}",
"range":{
"from":"4.1.1"
}
},
"groupId":"68ef9520-24e9-4cf2-b2f5-620025690913",
"assetId":"spike-control",
"assetVersion":"1.1.5"
}'
https://domain.com/apimanager/api/v1/organizations/{{organization_id}}/automated-policies
Postman Collection Item JSON
{
"name": "Add automated policies (example spike-control)",
"request": {
"method": "POST",
"header": [
{
"key": "Authorization",
"value": "Bearer {{token}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n \"configurationData\":{\r\n \"maximumRequests\":1,\r\n \"timePeriodInMilliseconds\":1000,\r\n \"delayTimeInMillis\":1000,\r\n \"delayAttempts\":1,\r\n \"queuingLimit\":5,\r\n \"exposeHeaders\":false\r\n },\r\n \"id\":null,\r\n \"pointcutData\":null,\r\n \"ruleOfApplication\":{\r\n \"environmentId\":\"{{environment_id}}\",\r\n \"organizationId\":\"{{organization_id}}\",\r\n \"range\":{\r\n \"from\":\"4.1.1\"\r\n }\r\n },\r\n \"groupId\":\"68ef9520-24e9-4cf2-b2f5-620025690913\",\r\n \"assetId\":\"spike-control\",\r\n \"assetVersion\":\"1.1.5\"\r\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{url}}/apimanager/api/v1/organizations/{{organization_id}}/automated-policies",
"host": [
"{{url}}"
],
"path": [
"apimanager",
"api",
"v1",
"organizations",
"{{organization_id}}",
"automated-policies"
]
}
},
"response": [
]
}