Chilkat Online Tools

Xojo / Postman API / All Environments

Back to Collection Items

// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

Dim http As New Chilkat.Http
Dim success As Boolean

http.SetRequestHeader "X-API-Key","{{postman_api_key}}"

Dim sbResponseBody As New Chilkat.StringBuilder
success = http.QuickGetSb("https://api.getpostman.com/environments",sbResponseBody)
If (success = False) Then
    System.DebugLog(http.LastErrorText)
    Return
End If

Dim jResp As New Chilkat.JsonObject
success = jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = False

System.DebugLog("Response Body:")
System.DebugLog(jResp.Emit())

Dim respStatusCode As Int32
respStatusCode = http.LastStatus
System.DebugLog("Response Status Code = " + Str(respStatusCode))
If (respStatusCode >= 400) Then
    System.DebugLog("Response Header:")
    System.DebugLog(http.LastHeader)
    System.DebugLog("Failed.")
    Return
End If

// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)

// {
//   "environments": [
//     {
//       "id": "5daabc50-8451-43f6-922d-96b403b4f28e",
//       "name": "Users API (prod)",
//       "createdAt": "2020-09-23T14:31:18.000Z",
//       "updatedAt": "2020-12-04T14:13:40.000Z",
//       "owner": "10016724",
//       "uid": "10016724-5daabc50-8451-43f6-922d-96b403b4f28e",
//       "isPublic": false
//     },
//     {
//       "id": "7d786cc8-142b-4d62-b5a5-872afc37ad16",
//       "name": "Environment Scanner",
//       "createdAt": "2020-02-04T19:34:23.000Z",
//       "updatedAt": "2020-08-12T13:34:06.000Z",
//       "owner": "10016724",
//       "uid": "10016724-7d786cc8-142b-4d62-b5a5-872afc37ad16",
//       "isPublic": false
//     }
//   ]
// }

// Sample code for parsing the JSON response...
// Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code

Dim id As String
Dim name As String
Dim createdAt As String
Dim updatedAt As String
Dim owner As String
Dim uid As String
Dim isPublic As Boolean

Dim i As Int32
i = 0
Dim count_i As Int32
count_i = jResp.SizeOfArray("environments")
While i < count_i
    jResp.I = i
    id = jResp.StringOf("environments[i].id")
    name = jResp.StringOf("environments[i].name")
    createdAt = jResp.StringOf("environments[i].createdAt")
    updatedAt = jResp.StringOf("environments[i].updatedAt")
    owner = jResp.StringOf("environments[i].owner")
    uid = jResp.StringOf("environments[i].uid")
    isPublic = jResp.BoolOf("environments[i].isPublic")
    i = i + 1
Wend

Curl Command

curl -X GET
	-H "X-API-Key: {{postman_api_key}}"
https://api.getpostman.com/environments

Postman Collection Item JSON

{
  "name": "All Environments",
  "event": [
    {
      "listen": "test",
      "script": {
        "type": "text/javascript",
        "exec": [
          "var responseJSON;",
          "",
          "// parse response body as JSON",
          "try { responseJSON = JSON.parse(responseBody); } catch (e) { }",
          "tests['received a valid response JSON'] = !!responseJSON;",
          "!responseJSON && (responseJSON = {});",
          "",
          "tests['status code is 200'] = (responseCode.code === 200);",
          "tests['response does not have errors'] = (!responseJSON.error);",
          "",
          "tests['response has an array of environments'] = Array.isArray(responseJSON.environments);"
        ]
      }
    }
  ],
  "request": {
    "method": "GET",
    "header": [
    ],
    "url": {
      "raw": "https://api.getpostman.com/environments",
      "protocol": "https",
      "host": [
        "api",
        "getpostman",
        "com"
      ],
      "path": [
        "environments"
      ]
    },
    "description": "The `/environments` endpoint returns a list of all [environments](https://www.getpostman.com/docs/environments) that belong to you..\n\nThe response contains an array of environments' information containing the `name`, `id`, `owner` and `uid` of each environment.\n\n> Requires <a href=\"#authentication\">API Key</a> as `X-Api-Key` request header or `apikey` URL query parameter."
  },
  "response": [
    {
      "name": "Valid Response",
      "originalRequest": {
        "method": "GET",
        "header": [
        ],
        "url": {
          "raw": "https://api.getpostman.com/environments",
          "protocol": "https",
          "host": [
            "api",
            "getpostman",
            "com"
          ],
          "path": [
            "environments"
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json",
          "description": {
            "content": "",
            "type": "text/plain"
          }
        }
      ],
      "cookie": [
      ],
      "body": "{\n    \"environments\": [\n       {\n            \"id\": \"5daabc50-8451-43f6-922d-96b403b4f28e\",\n            \"name\": \"Users API (prod)\",\n            \"createdAt\": \"2020-09-23T14:31:18.000Z\",\n            \"updatedAt\": \"2020-12-04T14:13:40.000Z\",\n            \"owner\": \"10016724\",\n            \"uid\": \"10016724-5daabc50-8451-43f6-922d-96b403b4f28e\",\n            \"isPublic\": false\n        },\n        {\n            \"id\": \"7d786cc8-142b-4d62-b5a5-872afc37ad16\",\n            \"name\": \"Environment Scanner\",\n            \"createdAt\": \"2020-02-04T19:34:23.000Z\",\n            \"updatedAt\": \"2020-08-12T13:34:06.000Z\",\n            \"owner\": \"10016724\",\n            \"uid\": \"10016724-7d786cc8-142b-4d62-b5a5-872afc37ad16\",\n            \"isPublic\": false\n        }\n    ]\n}"
    }
  ]
}