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
http.BasicAuth = True
http.Login = "{{username}}"
http.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 PromotionQuery($status: String, $pageSize: Int, $endCursor: String) {\n\tpromotions(status: $status, first: $pageSize, after: $endCursor) {\n\t\ttotalCount\n\t\tpageInfo {\n\t\t\thasNextPage\n\t\t\tendCursor\n\t\t}\n\t\tnodes {\n\t\t\tid\n\t\t\tseller {\n\t\t\t\tid\n\t\t\t\tbusinessName\n\t\t\t}\n\t\t\tname\n\t\t\tteaser\n\t\t\tdescription\n\t\t\tstartDate\n\t\t\tendDate\n\t\t\tminimumSpend\n\t\t\tmaximumSpend\n\t\t\tsuspended\n\t\t\tdiscountType\n\t\t\tdiscountAmount\n\t\t\tfreeShipping\n\t\t\tcostPercentageBorneByMarketplace\n\t\t\tloyaltyProgramLevels (first: $pageSize, after: $endCursor){\n\t\t\t\tnodes {\n\t\t\t\t\tname\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tfreeShippingDomesticOnly\n\t\t\tbrandsIncluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tname\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tbrandsExcluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tname\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tcategoriesIncluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tdisplayName\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tcategoriesExcluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tdisplayName\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tadvertsIncluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tdescription\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tadvertsExcluded (first: $pageSize, after: $endCursor) {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tdescription\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tvariantsIncluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tsku\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tvariantsExcluded (first: $pageSize, after: $endCursor) {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tsku\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tsaleItemsExcluded\n\t\t}\n\t}\n}\n\nfragment PageInfoPartial on PageInfo {\n\thasNextPage\n\tendCursor\n}\n",
' "variables": "{\n\t\"status\": \"active\",\n\t\"pageSize\": 10,\n\t\"endCursor\": \"\"\n}"
' }
Dim json As New Chilkat.JsonObject
json.UpdateString("query","query PromotionQuery($status: String, $pageSize: Int, $endCursor: String) {" & vbLf & " promotions(status: $status, first: $pageSize, after: $endCursor) {" & vbLf & " totalCount" & vbLf & " pageInfo {" & vbLf & " hasNextPage" & vbLf & " endCursor" & vbLf & " }" & vbLf & " nodes {" & vbLf & " id" & vbLf & " seller {" & vbLf & " id" & vbLf & " businessName" & vbLf & " }" & vbLf & " name" & vbLf & " teaser" & vbLf & " description" & vbLf & " startDate" & vbLf & " endDate" & vbLf & " minimumSpend" & vbLf & " maximumSpend" & vbLf & " suspended" & vbLf & " discountType" & vbLf & " discountAmount" & vbLf & " freeShipping" & vbLf & " costPercentageBorneByMarketplace" & vbLf & " loyaltyProgramLevels (first: $pageSize, after: $endCursor){" & vbLf & " nodes {" & vbLf & " name" & vbLf & " }" & vbLf & " pageInfo{" & vbLf & " ...PageInfoPartial" & vbLf & " }" & vbLf & " }" & vbLf & " freeShippingDomesticOnly" & vbLf & " brandsIncluded (first: $pageSize, after: $endCursor){" & vbLf & " edges {" & vbLf & " node {" & vbLf & " name" & vbLf & " }" & vbLf & " }" & vbLf & " pageInfo{" & vbLf & " ...PageInfoPartial" & vbLf & " }" & vbLf & " }" & vbLf & " brandsExcluded (first: $pageSize, after: $endCursor){" & vbLf & " edges {" & vbLf & " node {" & vbLf & " name" & vbLf & " }" & vbLf & " }" & vbLf & " pageInfo{" & vbLf & " ...PageInfoPartial" & vbLf & " }" & vbLf & " }" & vbLf & " categoriesIncluded (first: $pageSize, after: $endCursor){" & vbLf & " edges {" & vbLf & " node {" & vbLf & " displayName" & vbLf & " }" & vbLf & " }" & vbLf & " pageInfo{" & vbLf & " ...PageInfoPartial" & vbLf & " }" & vbLf & " }" & vbLf & " categoriesExcluded (first: $pageSize, after: $endCursor){" & vbLf & " edges {" & vbLf & " node {" & vbLf & " displayName" & vbLf & " }" & vbLf & " }" & vbLf & " }" & vbLf & " advertsIncluded (first: $pageSize, after: $endCursor){" & vbLf & " edges {" & vbLf & " node {" & vbLf & " description" & vbLf & " }" & vbLf & " }" & vbLf & " pageInfo{" & vbLf & " ...PageInfoPartial" & vbLf & " }" & vbLf & " }" & vbLf & " advertsExcluded (first: $pageSize, after: $endCursor) {" & vbLf & " edges {" & vbLf & " node {" & vbLf & " description" & vbLf & " }" & vbLf & " }" & vbLf & " pageInfo{" & vbLf & " ...PageInfoPartial" & vbLf & " }" & vbLf & " }" & vbLf & " variantsIncluded (first: $pageSize, after: $endCursor){" & vbLf & " edges {" & vbLf & " node {" & vbLf & " sku" & vbLf & " }" & vbLf & " }" & vbLf & " pageInfo{" & vbLf & " ...PageInfoPartial" & vbLf & " }" & vbLf & " }" & vbLf & " variantsExcluded (first: $pageSize, after: $endCursor) {" & vbLf & " edges {" & vbLf & " node {" & vbLf & " sku" & vbLf & " }" & vbLf & " }" & vbLf & " pageInfo{" & vbLf & " ...PageInfoPartial" & vbLf & " }" & vbLf & " }" & vbLf & " saleItemsExcluded" & vbLf & " }" & vbLf & " }" & vbLf & "}" & vbLf & vbLf & "fragment PageInfoPartial on PageInfo {" & vbLf & " hasNextPage" & vbLf & " endCursor" & vbLf & "}" & vbLf)
json.UpdateString("variables","{" & vbLf & " ""status"": ""active""," & vbLf & " ""pageSize"": 10," & vbLf & " ""endCursor"": ""\vbLf & "}")
http.SetRequestHeader("Content-Type","application/json")
http.SetRequestHeader("MARKETPLACER-API-KEY","{{api_key}}")
Dim resp As Chilkat.HttpResponse = http.PostJson3("https://bestfriendbazaar.com/graphql","application/json",json)
If (http.LastMethodSuccess = False) Then
Debug.WriteLine(http.LastErrorText)
Exit Sub
End If
Debug.WriteLine(resp.StatusCode)
Debug.WriteLine(resp.BodyStr)
Curl Command
curl -X POST
-u '{{username}}:{{password}}'
-H "MARKETPLACER-API-KEY: {{api_key}}"
-H "Content-Type: application/json"
--data-raw '{"query":"query PromotionQuery($status: String, $pageSize: Int, $endCursor: String) {\n\tpromotions(status: $status, first: $pageSize, after: $endCursor) {\n\t\ttotalCount\n\t\tpageInfo {\n\t\t\thasNextPage\n\t\t\tendCursor\n\t\t}\n\t\tnodes {\n\t\t\tid\n\t\t\tseller {\n\t\t\t\tid\n\t\t\t\tbusinessName\n\t\t\t}\n\t\t\tname\n\t\t\tteaser\n\t\t\tdescription\n\t\t\tstartDate\n\t\t\tendDate\n\t\t\tminimumSpend\n\t\t\tmaximumSpend\n\t\t\tsuspended\n\t\t\tdiscountType\n\t\t\tdiscountAmount\n\t\t\tfreeShipping\n\t\t\tcostPercentageBorneByMarketplace\n\t\t\tloyaltyProgramLevels (first: $pageSize, after: $endCursor){\n\t\t\t\tnodes {\n\t\t\t\t\tname\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tfreeShippingDomesticOnly\n\t\t\tbrandsIncluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tname\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tbrandsExcluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tname\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tcategoriesIncluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tdisplayName\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tcategoriesExcluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tdisplayName\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tadvertsIncluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tdescription\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tadvertsExcluded (first: $pageSize, after: $endCursor) {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tdescription\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tvariantsIncluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tsku\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tvariantsExcluded (first: $pageSize, after: $endCursor) {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tsku\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tsaleItemsExcluded\n\t\t}\n\t}\n}\n\nfragment PageInfoPartial on PageInfo {\n\thasNextPage\n\tendCursor\n}\n","variables":"{\n\t\"status\": \"active\",\n\t\"pageSize\": 10,\n\t\"endCursor\": \"\"\n}"}'
https://bestfriendbazaar.com/graphql
Postman Collection Item JSON
{
"name": "Promotions Query",
"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 PromotionQuery($status: String, $pageSize: Int, $endCursor: String) {\n\tpromotions(status: $status, first: $pageSize, after: $endCursor) {\n\t\ttotalCount\n\t\tpageInfo {\n\t\t\thasNextPage\n\t\t\tendCursor\n\t\t}\n\t\tnodes {\n\t\t\tid\n\t\t\tseller {\n\t\t\t\tid\n\t\t\t\tbusinessName\n\t\t\t}\n\t\t\tname\n\t\t\tteaser\n\t\t\tdescription\n\t\t\tstartDate\n\t\t\tendDate\n\t\t\tminimumSpend\n\t\t\tmaximumSpend\n\t\t\tsuspended\n\t\t\tdiscountType\n\t\t\tdiscountAmount\n\t\t\tfreeShipping\n\t\t\tcostPercentageBorneByMarketplace\n\t\t\tloyaltyProgramLevels (first: $pageSize, after: $endCursor){\n\t\t\t\tnodes {\n\t\t\t\t\tname\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tfreeShippingDomesticOnly\n\t\t\tbrandsIncluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tname\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tbrandsExcluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tname\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tcategoriesIncluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tdisplayName\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tcategoriesExcluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tdisplayName\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tadvertsIncluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tdescription\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tadvertsExcluded (first: $pageSize, after: $endCursor) {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tdescription\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tvariantsIncluded (first: $pageSize, after: $endCursor){\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tsku\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tvariantsExcluded (first: $pageSize, after: $endCursor) {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\tsku\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tpageInfo{\n\t\t\t\t\t...PageInfoPartial\n\t\t\t\t}\n\t\t\t}\n\t\t\tsaleItemsExcluded\n\t\t}\n\t}\n}\n\nfragment PageInfoPartial on PageInfo {\n\thasNextPage\n\tendCursor\n}\n",
"variables": "{\n\t\"status\": \"active\",\n\t\"pageSize\": 10,\n\t\"endCursor\": \"\"\n}"
}
},
"url": {
"raw": "{{base_url}}",
"host": [
"{{base_url}}"
],
"path": null
},
"description": null
},
"response": [
]
}