Back to Collection Items
IncludeFile "CkJsonObject.pb"
IncludeFile "CkStringBuilder.pb"
IncludeFile "CkHttp.pb"
Procedure ChilkatExample()
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
http.i = CkHttp::ckCreate()
If http.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success.i
CkHttp::ckSetRequestHeader(http,"Accept","application/json")
sbResponseBody.i = CkStringBuilder::ckCreate()
If sbResponseBody.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkHttp::ckQuickGetSb(http,"https://api.app.ddog-gov.com/api/v1/synthetics/ci/batch/:batch_id",sbResponseBody)
If success = 0
Debug CkHttp::ckLastErrorText(http)
CkHttp::ckDispose(http)
CkStringBuilder::ckDispose(sbResponseBody)
ProcedureReturn
EndIf
jResp.i = CkJsonObject::ckCreate()
If jResp.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckLoadSb(jResp,sbResponseBody)
CkJsonObject::setCkEmitCompact(jResp, 0)
Debug "Response Body:"
Debug CkJsonObject::ckEmit(jResp)
respStatusCode.i = CkHttp::ckLastStatus(http)
Debug "Response Status Code = " + Str(respStatusCode)
If respStatusCode >= 400
Debug "Response Header:"
Debug CkHttp::ckLastHeader(http)
Debug "Failed."
CkHttp::ckDispose(http)
CkStringBuilder::ckDispose(sbResponseBody)
CkJsonObject::ckDispose(jResp)
ProcedureReturn
EndIf
; Sample JSON response:
; (Sample code for parsing the JSON response is shown below)
; {
; "data": {
; "metadata": {
; "ci": {
; "pipeline": {
; "url": "dolor irure amet aliqua"
; },
; "provider": {
; "name": "velit voluptate minim tempor et"
; }
; },
; "git": {
; "branch": "proident pariatur cillum ipsum",
; "commitSha": "no"
; }
; },
; "results": [
; {
; "device": "laptop_large",
; "duration": 77555392.34670219,
; "execution_rule": "blocking",
; "location": "nostrud consectetur proident elit",
; "result_id": "ad in",
; "retries": 27165346.602910966,
; "status": "passed",
; "test_name": "in Excepteur",
; "test_public_id": "aute sint",
; "test_type": "browser"
; },
; {
; "device": "laptop_large",
; "duration": -71572766.6529502,
; "execution_rule": "non_blocking",
; "location": "velit ullamco",
; "result_id": "quis irure officia Lorem enim",
; "retries": 66253781.442619294,
; "status": "passed",
; "test_name": "reprehenderit voluptate incididu",
; "test_public_id": "ipsum Duis",
; "test_type": "api"
; }
; ],
; "status": "passed"
; }
; }
; Sample code for parsing the JSON response...
; Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
device.s
duration.s
execution_rule.s
location.s
result_id.s
retries.s
status.s
test_name.s
test_public_id.s
test_type.s
v_Url.s = CkJsonObject::ckStringOf(jResp,"data.metadata.ci.pipeline.url")
Name.s = CkJsonObject::ckStringOf(jResp,"data.metadata.ci.provider.name")
Branch.s = CkJsonObject::ckStringOf(jResp,"data.metadata.git.branch")
CommitSha.s = CkJsonObject::ckStringOf(jResp,"data.metadata.git.commitSha")
Status.s = CkJsonObject::ckStringOf(jResp,"data.status")
i.i = 0
count_i.i = CkJsonObject::ckSizeOfArray(jResp,"data.results")
While i < count_i
CkJsonObject::setCkI(jResp, i)
device = CkJsonObject::ckStringOf(jResp,"data.results[i].device")
duration = CkJsonObject::ckStringOf(jResp,"data.results[i].duration")
execution_rule = CkJsonObject::ckStringOf(jResp,"data.results[i].execution_rule")
location = CkJsonObject::ckStringOf(jResp,"data.results[i].location")
result_id = CkJsonObject::ckStringOf(jResp,"data.results[i].result_id")
retries = CkJsonObject::ckStringOf(jResp,"data.results[i].retries")
status = CkJsonObject::ckStringOf(jResp,"data.results[i].status")
test_name = CkJsonObject::ckStringOf(jResp,"data.results[i].test_name")
test_public_id = CkJsonObject::ckStringOf(jResp,"data.results[i].test_public_id")
test_type = CkJsonObject::ckStringOf(jResp,"data.results[i].test_type")
i = i + 1
Wend
CkHttp::ckDispose(http)
CkStringBuilder::ckDispose(sbResponseBody)
CkJsonObject::ckDispose(jResp)
ProcedureReturn
EndProcedure
Curl Command
curl -X GET
-H "Accept: application/json"
https://api.app.ddog-gov.com/api/v1/synthetics/ci/batch/:batch_id
Postman Collection Item JSON
{
"name": "Get details of batch",
"request": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
}
],
"url": {
"raw": "{{baseUrl}}/api/v1/synthetics/ci/batch/:batch_id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"v1",
"synthetics",
"ci",
"batch",
":batch_id"
],
"variable": [
{
"key": "batch_id",
"value": "tempor Ut sed velit"
}
]
},
"description": "Get a batch's updated details."
},
"response": [
{
"name": "OK",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"description": "Added as a part of security scheme: apikey",
"key": "DD-API-KEY",
"value": "<API Key>"
}
],
"url": {
"raw": "{{baseUrl}}/api/v1/synthetics/ci/batch/:batch_id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"v1",
"synthetics",
"ci",
"batch",
":batch_id"
],
"variable": [
{
"key": "batch_id"
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"data\": {\n \"metadata\": {\n \"ci\": {\n \"pipeline\": {\n \"url\": \"dolor irure amet aliqua\"\n },\n \"provider\": {\n \"name\": \"velit voluptate minim tempor et\"\n }\n },\n \"git\": {\n \"branch\": \"proident pariatur cillum ipsum\",\n \"commitSha\": \"no\"\n }\n },\n \"results\": [\n {\n \"device\": \"laptop_large\",\n \"duration\": 77555392.34670219,\n \"execution_rule\": \"blocking\",\n \"location\": \"nostrud consectetur proident elit\",\n \"result_id\": \"ad in\",\n \"retries\": 27165346.602910966,\n \"status\": \"passed\",\n \"test_name\": \"in Excepteur\",\n \"test_public_id\": \"aute sint\",\n \"test_type\": \"browser\"\n },\n {\n \"device\": \"laptop_large\",\n \"duration\": -71572766.6529502,\n \"execution_rule\": \"non_blocking\",\n \"location\": \"velit ullamco\",\n \"result_id\": \"quis irure officia Lorem enim\",\n \"retries\": 66253781.442619294,\n \"status\": \"passed\",\n \"test_name\": \"reprehenderit voluptate incididu\",\n \"test_public_id\": \"ipsum Duis\",\n \"test_type\": \"api\"\n }\n ],\n \"status\": \"passed\"\n }\n}"
},
{
"name": "Batch does not exist.",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"description": "Added as a part of security scheme: apikey",
"key": "DD-API-KEY",
"value": "<API Key>"
}
],
"url": {
"raw": "{{baseUrl}}/api/v1/synthetics/ci/batch/:batch_id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"v1",
"synthetics",
"ci",
"batch",
":batch_id"
],
"variable": [
{
"key": "batch_id"
}
]
}
},
"status": "Not Found",
"code": 404,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n \"Bad Request\",\n \"Bad Request\"\n ]\n}"
},
{
"name": "Too many requests",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"description": "Added as a part of security scheme: apikey",
"key": "DD-API-KEY",
"value": "<API Key>"
}
],
"url": {
"raw": "{{baseUrl}}/api/v1/synthetics/ci/batch/:batch_id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"v1",
"synthetics",
"ci",
"batch",
":batch_id"
],
"variable": [
{
"key": "batch_id"
}
]
}
},
"status": "Too Many Requests",
"code": 429,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n \"Bad Request\",\n \"Bad Request\"\n ]\n}"
}
]
}