Chilkat Online Tools

Foxpro / Marketplacer SELLER API / Advert Create (by Seller)

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.

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": "mutation AdvertCreate($input: AdvertUpsertMutationInput!) {\n\tadvertUpsert(input: $input) {\n\t\tstatus\n\t\tadvert {\n\t\t\tid\n\t\t\tlegacyId\n\t\t}\n\t\terrors {\n\t\t\tfield\n\t\t\tmessages\n\t\t}\n\t}\n}",
*   "variables": "{\n  \"input\": {\n    \"attributes\": {\n      \"brandId\": \"QnJhbmQtNA==\",\n      \"taxonId\": \"VGF4b24tMjk2OQ==\",\n      \"title\": \"Product Title\",\n      \"description\": \"Product Description\",\n      \"price\": \"199.99\",\n      \"attemptAutoPublish\": true,\n      \"images\": [\n        {\n          \"sourceUrl\": \"https://picsum.photos/640/480/?image=166\"\n        }\n      ],\n      \"advertOptionValues\": [\n        {\n          \"optionValueId\": \"T3B0aW9uVmFsdWUtNzI3\"\n        },\n        {\n          \"optionValueId\": \"T3B0aW9uVmFsdWUtNzI4\"\n        },\n        {\n          \"optionValueId\": \"T3B0aW9uVmFsdWUtNzM0\"\n        },\n        {\n          \"optionTypeId\": \"T3B0aW9uVHlwZS0yNTA=\",\n          \"textValue\": \"Snapdragon 8\"\n        }\n      ],\n      \"variants\": [\n        {\n          \"countOnHand\": 1000,\n          \"variantOptionValues\": [\n            {\n              \"optionValueId\": \"T3B0aW9uVmFsdWUtNzMx\"\n            },\n            {\n              \"optionValueId\": \"T3B0aW9uVmFsdWUtNzIz\"\n            },\n            {\n              \"optionTypeId\": \"T3B0aW9uVHlwZS0yNTI=\",\n              \"textValue\": \"Ocean Blue\"\n            }\n          ]\n        }\n      ]\n    }\n  }\n}"
* }

loJson = CreateObject('Chilkat.JsonObject')
loJson.UpdateString("query","mutation AdvertCreate($input: AdvertUpsertMutationInput!) {" + CHR(10) + "	advertUpsert(input: $input) {" + CHR(10) + "		status" + CHR(10) + "		advert {" + CHR(10) + "			id" + CHR(10) + "			legacyId" + CHR(10) + "		}" + CHR(10) + "		errors {" + CHR(10) + "			field" + CHR(10) + "			messages" + CHR(10) + "		}" + CHR(10) + "	}" + CHR(10) + "}")
loJson.UpdateString("variables",'{' + CHR(10) + '  "input": {' + CHR(10) + '    "attributes": {' + CHR(10) + '      "brandId": "QnJhbmQtNA==",' + CHR(10) + '      "taxonId": "VGF4b24tMjk2OQ==",' + CHR(10) + '      "title": "Product Title",' + CHR(10) + '      "description": "Product Description",' + CHR(10) + '      "price": "199.99",' + CHR(10) + '      "attemptAutoPublish": true,' + CHR(10) + '      "images": [' + CHR(10) + '        {' + CHR(10) + '          "sourceUrl": "https://picsum.photos/640/480/?image=166\CHR(10) + '        }' + CHR(10) + '      ],' + CHR(10) + '      "advertOptionValues": [' + CHR(10) + '        {' + CHR(10) + '          "optionValueId": "T3B0aW9uVmFsdWUtNzI3\CHR(10) + '        },' + CHR(10) + '        {' + CHR(10) + '          "optionValueId": "T3B0aW9uVmFsdWUtNzI4\CHR(10) + '        },' + CHR(10) + '        {' + CHR(10) + '          "optionValueId": "T3B0aW9uVmFsdWUtNzM0\CHR(10) + '        },' + CHR(10) + '        {' + CHR(10) + '          "optionTypeId": "T3B0aW9uVHlwZS0yNTA=",' + CHR(10) + '          "textValue": "Snapdragon 8\CHR(10) + '        }' + CHR(10) + '      ],' + CHR(10) + '      "variants": [' + CHR(10) + '        {' + CHR(10) + '          "countOnHand": 1000,' + CHR(10) + '          "variantOptionValues": [' + CHR(10) + '            {' + CHR(10) + '              "optionValueId": "T3B0aW9uVmFsdWUtNzMx\CHR(10) + '            },' + CHR(10) + '            {' + CHR(10) + '              "optionValueId": "T3B0aW9uVmFsdWUtNzIz\CHR(10) + '            },' + CHR(10) + '            {' + CHR(10) + '              "optionTypeId": "T3B0aW9uVHlwZS0yNTI=",' + CHR(10) + '              "textValue": "Ocean Blue\CHR(10) + '            }' + CHR(10) + '          ]' + CHR(10) + '        }' + CHR(10) + '      ]' + CHR(10) + '    }' + CHR(10) + '  }' + CHR(10) + '}')

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

loResp = CreateObject('Chilkat.HttpResponse')
lnSuccess = loHttp.HttpJson("POST","https://bestfriendbazaar.com/graphql",loJson,"application/json",loResp)
IF (lnSuccess = 0) THEN
    ? loHttp.LastErrorText
    RELEASE loHttp
    RELEASE loJson
    RELEASE loResp
    CANCEL
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 AdvertCreate($input: AdvertUpsertMutationInput!) {\n\tadvertUpsert(input: $input) {\n\t\tstatus\n\t\tadvert {\n\t\t\tid\n\t\t\tlegacyId\n\t\t}\n\t\terrors {\n\t\t\tfield\n\t\t\tmessages\n\t\t}\n\t}\n}","variables":"{\n  \"input\": {\n    \"attributes\": {\n      \"brandId\": \"QnJhbmQtNA==\",\n      \"taxonId\": \"VGF4b24tMjk2OQ==\",\n      \"title\": \"Product Title\",\n      \"description\": \"Product Description\",\n      \"price\": \"199.99\",\n      \"attemptAutoPublish\": true,\n      \"images\": [\n        {\n          \"sourceUrl\": \"https://picsum.photos/640/480/?image=166\"\n        }\n      ],\n      \"advertOptionValues\": [\n        {\n          \"optionValueId\": \"T3B0aW9uVmFsdWUtNzI3\"\n        },\n        {\n          \"optionValueId\": \"T3B0aW9uVmFsdWUtNzI4\"\n        },\n        {\n          \"optionValueId\": \"T3B0aW9uVmFsdWUtNzM0\"\n        },\n        {\n          \"optionTypeId\": \"T3B0aW9uVHlwZS0yNTA=\",\n          \"textValue\": \"Snapdragon 8\"\n        }\n      ],\n      \"variants\": [\n        {\n          \"countOnHand\": 1000,\n          \"variantOptionValues\": [\n            {\n              \"optionValueId\": \"T3B0aW9uVmFsdWUtNzMx\"\n            },\n            {\n              \"optionValueId\": \"T3B0aW9uVmFsdWUtNzIz\"\n            },\n            {\n              \"optionTypeId\": \"T3B0aW9uVHlwZS0yNTI=\",\n              \"textValue\": \"Ocean Blue\"\n            }\n          ]\n        }\n      ]\n    }\n  }\n}"}'
https://bestfriendbazaar.com/graphql

Postman Collection Item JSON

{
  "name": "Advert Create (by Seller)",
  "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 AdvertCreate($input: AdvertUpsertMutationInput!) {\n\tadvertUpsert(input: $input) {\n\t\tstatus\n\t\tadvert {\n\t\t\tid\n\t\t\tlegacyId\n\t\t}\n\t\terrors {\n\t\t\tfield\n\t\t\tmessages\n\t\t}\n\t}\n}",
        "variables": "{\n  \"input\": {\n    \"attributes\": {\n      \"brandId\": \"QnJhbmQtNA==\",\n      \"taxonId\": \"VGF4b24tMjk2OQ==\",\n      \"title\": \"Product Title\",\n      \"description\": \"Product Description\",\n      \"price\": \"199.99\",\n      \"attemptAutoPublish\": true,\n      \"images\": [\n        {\n          \"sourceUrl\": \"https://picsum.photos/640/480/?image=166\"\n        }\n      ],\n      \"advertOptionValues\": [\n        {\n          \"optionValueId\": \"T3B0aW9uVmFsdWUtNzI3\"\n        },\n        {\n          \"optionValueId\": \"T3B0aW9uVmFsdWUtNzI4\"\n        },\n        {\n          \"optionValueId\": \"T3B0aW9uVmFsdWUtNzM0\"\n        },\n        {\n          \"optionTypeId\": \"T3B0aW9uVHlwZS0yNTA=\",\n          \"textValue\": \"Snapdragon 8\"\n        }\n      ],\n      \"variants\": [\n        {\n          \"countOnHand\": 1000,\n          \"variantOptionValues\": [\n            {\n              \"optionValueId\": \"T3B0aW9uVmFsdWUtNzMx\"\n            },\n            {\n              \"optionValueId\": \"T3B0aW9uVmFsdWUtNzIz\"\n            },\n            {\n              \"optionTypeId\": \"T3B0aW9uVHlwZS0yNTI=\",\n              \"textValue\": \"Ocean Blue\"\n            }\n          ]\n        }\n      ]\n    }\n  }\n}"
      }
    },
    "url": {
      "raw": "{{base_url}}",
      "host": [
        "{{base_url}}"
      ],
      "path": null
    },
    "description": null
  },
  "response": [
  ]
}