Chilkat Online Tools

lianja / Marketplacer SELLER API / Refund Request Create (Advanced)

Back to Collection Items

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

loHttp = createobject("CkHttp")

loHttp.BasicAuth = .T.
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": "mutation RefundRequestCreate ($input: RefundRequestCreateMutationInput!){\n\trefundRequestCreate(\n\t\tinput: $input\n\t) {\n\t\trefundRequest {\n\t\t\tid\n\t\t\tstatus\n\t\t}\n\t\terrors {\n\t\t\tfield\n\t\t\tmessages\n\t\t}\n\t}\n}\n",
//   "variables": "{\n  \"input\": {\n    \"invoiceId\": \"SW52b2ljZS0xMzQ2NA==\",\n    \"lineItems\": [\n      {\n        \"lineItemId\": \"TGluZUl0ZW0tMzgyNQ==\",\n        \"reason\": \"Buyer changed their mind\",\n        \"quantity\": 1,\n        \"status\": \"PENDING_APPROVAL\"\n      }\n    ],\n    \"notes\": [\n      {\n        \"note\": \"Change of mind within T&Cs\"\n      }\n    ]\n  }\n}"
// }

loJson = createobject("CkJsonObject")
loJson.UpdateString("query","mutation RefundRequestCreate ($input: RefundRequestCreateMutationInput!){" + Chr(10) + "	refundRequestCreate(" + Chr(10) + "		input: $input" + Chr(10) + "	) {" + Chr(10) + "		refundRequest {" + Chr(10) + "			id" + Chr(10) + "			status" + Chr(10) + "		}" + Chr(10) + "		errors {" + Chr(10) + "			field" + Chr(10) + "			messages" + Chr(10) + "		}" + Chr(10) + "	}" + Chr(10) + "}" + Chr(10))
loJson.UpdateString("variables",'{' + Chr(10) + '  "input": {' + Chr(10) + '    "invoiceId": "SW52b2ljZS0xMzQ2NA==",' + Chr(10) + '    "lineItems": [' + Chr(10) + '      {' + Chr(10) + '        "lineItemId": "TGluZUl0ZW0tMzgyNQ==",' + Chr(10) + '        "reason": "Buyer changed their mind",' + Chr(10) + '        "quantity": 1,' + Chr(10) + '        "status": "PENDING_APPROVAL\Chr(10) + '      }' + Chr(10) + '    ],' + Chr(10) + '    "notes": [' + Chr(10) + '      {' + Chr(10) + '        "note": "Change of mind within T&Cs\Chr(10) + '      }' + Chr(10) + '    ]' + Chr(10) + '  }' + Chr(10) + '}')

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

loResp = createobject("CkHttpResponse")
llSuccess = loHttp.HttpJson("POST","https://bestfriendbazaar.com/graphql",loJson,"application/json",loResp)
if (llSuccess = .F.) then
    ? loHttp.LastErrorText
    release loHttp
    release loJson
    release loResp
    return
endif

? str(loResp.StatusCode)
? loResp.BodyStr


release loHttp
release loJson
release loResp

Curl Command

curl -X POST
	-u '{{username}}:{{password}}'
	-H "MARKETPLACER-API-KEY: {{api_key}}"
	-H "Content-Type: application/json"
	--data-raw '{"query":"mutation RefundRequestCreate ($input: RefundRequestCreateMutationInput!){\n\trefundRequestCreate(\n\t\tinput: $input\n\t) {\n\t\trefundRequest {\n\t\t\tid\n\t\t\tstatus\n\t\t}\n\t\terrors {\n\t\t\tfield\n\t\t\tmessages\n\t\t}\n\t}\n}\n","variables":"{\n  \"input\": {\n    \"invoiceId\": \"SW52b2ljZS0xMzQ2NA==\",\n    \"lineItems\": [\n      {\n        \"lineItemId\": \"TGluZUl0ZW0tMzgyNQ==\",\n        \"reason\": \"Buyer changed their mind\",\n        \"quantity\": 1,\n        \"status\": \"PENDING_APPROVAL\"\n      }\n    ],\n    \"notes\": [\n      {\n        \"note\": \"Change of mind within T&Cs\"\n      }\n    ]\n  }\n}"}'
https://bestfriendbazaar.com/graphql

Postman Collection Item JSON

{
  "name": "Refund Request Create (Advanced)",
  "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": "mutation RefundRequestCreate ($input: RefundRequestCreateMutationInput!){\n\trefundRequestCreate(\n\t\tinput: $input\n\t) {\n\t\trefundRequest {\n\t\t\tid\n\t\t\tstatus\n\t\t}\n\t\terrors {\n\t\t\tfield\n\t\t\tmessages\n\t\t}\n\t}\n}\n",
        "variables": "{\n  \"input\": {\n    \"invoiceId\": \"SW52b2ljZS0xMzQ2NA==\",\n    \"lineItems\": [\n      {\n        \"lineItemId\": \"TGluZUl0ZW0tMzgyNQ==\",\n        \"reason\": \"Buyer changed their mind\",\n        \"quantity\": 1,\n        \"status\": \"PENDING_APPROVAL\"\n      }\n    ],\n    \"notes\": [\n      {\n        \"note\": \"Change of mind within T&Cs\"\n      }\n    ]\n  }\n}"
      }
    },
    "url": {
      "raw": "{{base_url}}",
      "host": [
        "{{base_url}}"
      ],
      "path": null
    },
    "description": null
  },
  "response": [
  ]
}