Chilkat Online Tools

Foxpro / Marketplacer SELLER API / Get Refund Requests Updated Since

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')

loHttp.BasicAuth = 1
loHttp.Login = "{{username}}"
loHttp.Password = "{{password}}"

* Use this online tool to generate code from sample JSON: Generate Code to Create JSON

* The following JSON is sent in the request body.

* {
*   "query": "query GetRefundRequestsUpdatedSince\n($pageSize: Int $endCursor: String $updatedSince: ISO8601DateTime!)\n{\n  updatedRefundRequests\n\t(\n\t\tupdatedSince: $updatedSince\n\t\tfirst: $pageSize\n\t\tafter: $endCursor\n\t\n\t)\n  {\n    edges{\n      node{\n        id\n        status\n        cashAmountCents\n        createdAt\n        refundedAt\n        updatedAt\n        giftCardAmountCents\n        recoveredAmountCents\n        refundAmountCents\n        totalCents\n        initiatedBy\n        invoice{\n          id\n        }\n        lineItems{\n          id\n          amountCents\n          amountPerItemCents\n          onlyRemittance\n          quantity\n          reason \n        }\n      }  \n    }\n\t\tpageInfo{\n\t\t\thasNextPage\n\t\t\tendCursor\n\t\t}\n  }\n}",
*   "variables": "{\n  \"pageSize\": 50,\n  \"endCursor\": \"\",\n  \"updatedSince\": \"2021-08-05\"\n}"
* }

* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject')
loJson = CreateObject('Chilkat.JsonObject')
loJson.UpdateString("query","query GetRefundRequestsUpdatedSince" + CHR(10) + "($pageSize: Int $endCursor: String $updatedSince: ISO8601DateTime!)" + CHR(10) + "{" + CHR(10) + "  updatedRefundRequests" + CHR(10) + "	(" + CHR(10) + "		updatedSince: $updatedSince" + CHR(10) + "		first: $pageSize" + CHR(10) + "		after: $endCursor" + CHR(10) + "	" + CHR(10) + "	)" + CHR(10) + "  {" + CHR(10) + "    edges{" + CHR(10) + "      node{" + CHR(10) + "        id" + CHR(10) + "        status" + CHR(10) + "        cashAmountCents" + CHR(10) + "        createdAt" + CHR(10) + "        refundedAt" + CHR(10) + "        updatedAt" + CHR(10) + "        giftCardAmountCents" + CHR(10) + "        recoveredAmountCents" + CHR(10) + "        refundAmountCents" + CHR(10) + "        totalCents" + CHR(10) + "        initiatedBy" + CHR(10) + "        invoice{" + CHR(10) + "          id" + CHR(10) + "        }" + CHR(10) + "        lineItems{" + CHR(10) + "          id" + CHR(10) + "          amountCents" + CHR(10) + "          amountPerItemCents" + CHR(10) + "          onlyRemittance" + CHR(10) + "          quantity" + CHR(10) + "          reason " + CHR(10) + "        }" + CHR(10) + "      }  " + CHR(10) + "    }" + CHR(10) + "		pageInfo{" + CHR(10) + "			hasNextPage" + CHR(10) + "			endCursor" + CHR(10) + "		}" + CHR(10) + "  }" + CHR(10) + "}")
loJson.UpdateString("variables",'{' + CHR(10) + '  "pageSize": 50,' + CHR(10) + '  "endCursor": "",' + CHR(10) + '  "updatedSince": "2021-08-05\CHR(10) + '}')

loHttp.SetRequestHeader("Content-Type","application/json")
loHttp.SetRequestHeader("MARKETPLACER-API-KEY","{{api_key}}")

loResp = loHttp.PostJson3("https://bestfriendbazaar.com/graphql","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
	-u '{{username}}:{{password}}'
	-H "MARKETPLACER-API-KEY: {{api_key}}"
	-H "Content-Type: application/json"
	--data-raw '{"query":"query GetRefundRequestsUpdatedSince\n($pageSize: Int $endCursor: String $updatedSince: ISO8601DateTime!)\n{\n  updatedRefundRequests\n\t(\n\t\tupdatedSince: $updatedSince\n\t\tfirst: $pageSize\n\t\tafter: $endCursor\n\t\n\t)\n  {\n    edges{\n      node{\n        id\n        status\n        cashAmountCents\n        createdAt\n        refundedAt\n        updatedAt\n        giftCardAmountCents\n        recoveredAmountCents\n        refundAmountCents\n        totalCents\n        initiatedBy\n        invoice{\n          id\n        }\n        lineItems{\n          id\n          amountCents\n          amountPerItemCents\n          onlyRemittance\n          quantity\n          reason \n        }\n      }  \n    }\n\t\tpageInfo{\n\t\t\thasNextPage\n\t\t\tendCursor\n\t\t}\n  }\n}","variables":"{\n  \"pageSize\": 50,\n  \"endCursor\": \"\",\n  \"updatedSince\": \"2021-08-05\"\n}"}'
https://bestfriendbazaar.com/graphql

Postman Collection Item JSON

{
  "name": "Get Refund Requests Updated Since",
  "request": {
    "method": "POST",
    "header": [
      {
        "key": "MARKETPLACER-API-KEY",
        "value": "{{api_key}}",
        "type": "text"
      },
      {
        "key": "Content-Type",
        "value": "application/json",
        "type": "text"
      }
    ],
    "body": {
      "mode": "graphql",
      "graphql": {
        "query": "query GetRefundRequestsUpdatedSince\n($pageSize: Int $endCursor: String $updatedSince: ISO8601DateTime!)\n{\n  updatedRefundRequests\n\t(\n\t\tupdatedSince: $updatedSince\n\t\tfirst: $pageSize\n\t\tafter: $endCursor\n\t\n\t)\n  {\n    edges{\n      node{\n        id\n        status\n        cashAmountCents\n        createdAt\n        refundedAt\n        updatedAt\n        giftCardAmountCents\n        recoveredAmountCents\n        refundAmountCents\n        totalCents\n        initiatedBy\n        invoice{\n          id\n        }\n        lineItems{\n          id\n          amountCents\n          amountPerItemCents\n          onlyRemittance\n          quantity\n          reason \n        }\n      }  \n    }\n\t\tpageInfo{\n\t\t\thasNextPage\n\t\t\tendCursor\n\t\t}\n  }\n}",
        "variables": "{\n  \"pageSize\": 50,\n  \"endCursor\": \"\",\n  \"updatedSince\": \"2021-08-05\"\n}"
      }
    },
    "url": {
      "raw": "{{base_url}}",
      "host": [
        "{{base_url}}"
      ],
      "path": null
    },
    "description": null
  },
  "response": [
  ]
}