Chilkat Online Tools

Xojo / GP-API Collection / TRA_6.0 Get Transactions

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

Dim queryParams As New Chilkat.JsonObject
success = queryParams.UpdateString("order","DESC")
success = queryParams.UpdateInt("page_size",1000)
success = queryParams.UpdateString("from_time_created","2020-05-28")

http.SetRequestHeader "Content-Type","application/json"
http.SetRequestHeader "X-GP-Version","{{version}}"
// Adds the "Authorization: Bearer {{token}}" header.
http.AuthToken = "{{token}}"
http.SetRequestHeader "idempotency-key","12345"
http.SetRequestHeader "Accept","application/json"

Dim resp As Chilkat.HttpResponse
resp = http.QuickRequestParams("GET","https://{{url}}/ucp/transactions",queryParams)
If (http.LastMethodSuccess = False) Then
    System.DebugLog(http.LastErrorText)
    Return
End If

System.DebugLog(Str(resp.StatusCode))
System.DebugLog(resp.BodyStr)

Curl Command

curl -G -d "order=DESC"
	-d "page_size=1000"
	-d "from_time_created=2020-05-28"
	-H "Content-Type: application/json"
	-H "Authorization: Bearer {{token}}"
	-H "Accept: application/json"
	-H "X-GP-Version: {{version}}"
	-H "idempotency-key: 12345"
https://{{url}}/ucp/transactions

Postman Collection Item JSON

{
  "name": "TRA_6.0 Get Transactions",
  "event": [
    {
      "listen": "test",
      "script": {
        "exec": [
          "\r",
          "var totalPageAmount=parseInt(pm.environment.get(\"total_count\")) || 0;\r",
          "var totalRecordCount=parseInt(pm.environment.get(\"total_amount\")) || 0;\r",
          "\r",
          "\r",
          "var jsonData = JSON.parse(responseBody);\r",
          "\r",
          "\r",
          "for(var i = 0; i < jsonData.transactions.length; i++) {\r",
          "    var obj = jsonData.transactions[i];\r",
          "    totalPageAmount += parseInt(obj.merchant_amount);\r",
          "    totalRecordCount++;\r",
          "}\r",
          "\r",
          "postman.setEnvironmentVariable(\"total_count\", totalRecordCount);\r",
          "postman.setEnvironmentVariable(\"total_amount\", totalPageAmount);\r",
          "\r",
          "console.log(totalPageAmount);\r",
          "console.log(totalRecordCount);\r",
          "\r",
          "tests[\"Response time is acceptable\"] = _.inRange(responseTime, 100, 1500); \r",
          "\r",
          "\r",
          "pm.test(\"Successful POST request\", function () {\r",
          "    pm.expect(pm.response.code).to.be.oneOf([200,201,202]);\r",
          "});\r",
          "\r",
          "pm.test(\"Status code name has string\", function () {\r",
          "    pm.response.to.have.status(\"OK\");\r",
          "});"
        ],
        "type": "text/javascript"
      }
    }
  ],
  "request": {
    "method": "GET",
    "header": [
      {
        "key": "Content-Type",
        "value": "application/json",
        "type": "text",
        "disabled": true
      },
      {
        "key": "Authorization",
        "value": "Bearer {{token}}",
        "type": "text"
      },
      {
        "key": "Accept",
        "value": "application/json",
        "type": "text"
      },
      {
        "key": "X-GP-Version",
        "value": "{{version}}",
        "type": "text"
      },
      {
        "key": "idempotency-key",
        "value": "12345",
        "type": "text",
        "disabled": true
      }
    ],
    "url": {
      "raw": "https://{{url}}/ucp/transactions?order=DESC&page_size=1000&from_time_created=2020-05-28",
      "protocol": "https",
      "host": [
        "{{url}}"
      ],
      "path": [
        "ucp",
        "transactions"
      ],
      "query": [
        {
          "key": "order",
          "value": "DESC"
        },
        {
          "key": "page_size",
          "value": "1000"
        },
        {
          "key": "from_time_created",
          "value": "2020-05-28"
        },
        {
          "key": "batch_id",
          "value": "{{batch_id}}",
          "disabled": true
        },
        {
          "key": "id",
          "value": "",
          "disabled": true
        }
      ]
    },
    "description": "This request is for getting a realtime report of transactions. It is recomended to wait approx 5 secs after completing a transaction to run a realtime report. \r\n- Page size indicates how many transactions are on one page of the report. 1000 is the max amount of records on one page.\r\n- The Page variable is what page of the report the response is going to return. If you have less than 1000 transactions for the time period of the report, the report will only contain one page. \r\n- Edit the from_time_created variable in the Params tab to change the date of how far back in time the report goes to. \r\n\r\nFor more info on getting list of realtime transactions, visit: https://developer.globalpay.com/api/transactions#/Transactions/get_transactions"
  },
  "response": [
  ]
}