Back to Collection Items
#include <CkHttp.h>
#include <CkJsonObject.h>
#include <CkHttpResponse.h>
void ChilkatSample(void)
{
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkHttp http;
bool success;
http.put_BasicAuth(true);
http.put_Login("{{username}}");
http.put_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}"
// }
CkJsonObject json;
json.UpdateString("query","mutation AdvertCreate($input: AdvertUpsertMutationInput!) {\n advertUpsert(input: $input) {\n status\n advert {\n id\n legacyId\n }\n errors {\n field\n messages\n }\n }\n}");
json.UpdateString("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}");
http.SetRequestHeader("Content-Type","application/json");
http.SetRequestHeader("MARKETPLACER-API-KEY","{{api_key}}");
CkHttpResponse *resp = http.PostJson3("https://bestfriendbazaar.com/graphql","application/json",json);
if (http.get_LastMethodSuccess() == false) {
std::cout << http.lastErrorText() << "\r\n";
return;
}
std::cout << resp->get_StatusCode() << "\r\n";
std::cout << resp->bodyStr() << "\r\n";
delete resp;
}
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": [
]
}