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 ProductSearchByKeyword(\n\t$keywords: String\n\t$advertPageSize: Int\n\t$advertEndCursor: String\n\t$variantPageSize: Int\n\t$variantEndCursor: String\n) {\n\tadvertSearch(attributes: { keywordQuery: $keywords }) {\n\t\tadverts(first: $advertPageSize, after: $advertEndCursor) {\n\t\t\ttotalCount\n\t\t\tpageInfo {\n\t\t\t\t...PageInfoPartial\n\t\t\t}\n\t\t\tedges {\n\t\t\t\tnode {\n\t\t\t\t\ttitle\n\t\t\t\t\tvariants(first: $variantPageSize, after: $variantEndCursor) {\n\t\t\t\t\t\ttotalCount\n\t\t\t\t\t\tpageInfo {\n\t\t\t\t\t\t\t...PageInfoPartial\n\t\t\t\t\t\t}\n\t\t\t\t\t\tedges {\n\t\t\t\t\t\t\tnode {\n\t\t\t\t\t\t\t\tid\n\t\t\t\t\t\t\t\tlowestPriceCents\n\t\t\t\t\t\t\t\tcountOnHand\n\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nfragment PageInfoPartial on PageInfo {\n\thasNextPage\n\tendCursor\n}",
// "variables": "{\n\t\"advertPageSize\": 50,\n\t\"advertEndCursor\": null,\n\t\"variantPageSize\": 5,\n\t\"variantEndCursor\": null,\n\t\"keywords\": \"dog food\"\n}"
// }
Dim json As New Chilkat.JsonObject
success = json.UpdateString("query","query ProductSearchByKeyword(" + EndOfLine.Unix + " $keywords: String" + EndOfLine.Unix + " $advertPageSize: Int" + EndOfLine.Unix + " $advertEndCursor: String" + EndOfLine.Unix + " $variantPageSize: Int" + EndOfLine.Unix + " $variantEndCursor: String" + EndOfLine.Unix + ") {" + EndOfLine.Unix + " advertSearch(attributes: { keywordQuery: $keywords }) {" + EndOfLine.Unix + " adverts(first: $advertPageSize, after: $advertEndCursor) {" + EndOfLine.Unix + " totalCount" + EndOfLine.Unix + " pageInfo {" + EndOfLine.Unix + " ...PageInfoPartial" + EndOfLine.Unix + " }" + EndOfLine.Unix + " edges {" + EndOfLine.Unix + " node {" + EndOfLine.Unix + " title" + EndOfLine.Unix + " variants(first: $variantPageSize, after: $variantEndCursor) {" + EndOfLine.Unix + " totalCount" + EndOfLine.Unix + " pageInfo {" + EndOfLine.Unix + " ...PageInfoPartial" + EndOfLine.Unix + " }" + EndOfLine.Unix + " edges {" + EndOfLine.Unix + " node {" + EndOfLine.Unix + " id" + EndOfLine.Unix + " lowestPriceCents" + EndOfLine.Unix + " countOnHand" + EndOfLine.Unix + " label" + EndOfLine.Unix + " }" + EndOfLine.Unix + " }" + EndOfLine.Unix + " }" + EndOfLine.Unix + " }" + EndOfLine.Unix + " }" + EndOfLine.Unix + " }" + EndOfLine.Unix + " }" + EndOfLine.Unix + "}" + EndOfLine.Unix + EndOfLine.Unix + "fragment PageInfoPartial on PageInfo {" + EndOfLine.Unix + " hasNextPage" + EndOfLine.Unix + " endCursor" + EndOfLine.Unix + "}")
success = json.UpdateString("variables","{" + EndOfLine.Unix + " ""advertPageSize"": 50," + EndOfLine.Unix + " ""advertEndCursor"": null," + EndOfLine.Unix + " ""variantPageSize"": 5," + EndOfLine.Unix + " ""variantEndCursor"": null," + EndOfLine.Unix + " ""keywords"": ""dog food\EndOfLine.Unix + "}")
http.SetRequestHeader "Content-Type","application/json"
http.SetRequestHeader "MARKETPLACER-API-KEY","{{api_key}}"
Dim resp As Chilkat.HttpResponse
resp = http.PostJson3("https://bestfriendbazaar.com/graphql","application/json",json)
If (http.LastMethodSuccess = False) Then
System.DebugLog(http.LastErrorText)
Return
End If
System.DebugLog(Str(resp.StatusCode))
System.DebugLog(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 ProductSearchByKeyword(\n\t$keywords: String\n\t$advertPageSize: Int\n\t$advertEndCursor: String\n\t$variantPageSize: Int\n\t$variantEndCursor: String\n) {\n\tadvertSearch(attributes: { keywordQuery: $keywords }) {\n\t\tadverts(first: $advertPageSize, after: $advertEndCursor) {\n\t\t\ttotalCount\n\t\t\tpageInfo {\n\t\t\t\t...PageInfoPartial\n\t\t\t}\n\t\t\tedges {\n\t\t\t\tnode {\n\t\t\t\t\ttitle\n\t\t\t\t\tvariants(first: $variantPageSize, after: $variantEndCursor) {\n\t\t\t\t\t\ttotalCount\n\t\t\t\t\t\tpageInfo {\n\t\t\t\t\t\t\t...PageInfoPartial\n\t\t\t\t\t\t}\n\t\t\t\t\t\tedges {\n\t\t\t\t\t\t\tnode {\n\t\t\t\t\t\t\t\tid\n\t\t\t\t\t\t\t\tlowestPriceCents\n\t\t\t\t\t\t\t\tcountOnHand\n\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nfragment PageInfoPartial on PageInfo {\n\thasNextPage\n\tendCursor\n}","variables":"{\n\t\"advertPageSize\": 50,\n\t\"advertEndCursor\": null,\n\t\"variantPageSize\": 5,\n\t\"variantEndCursor\": null,\n\t\"keywords\": \"dog food\"\n}"}'
https://bestfriendbazaar.com/graphql
Postman Collection Item JSON
{
"name": "advertSearch (Search using keywords)",
"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 ProductSearchByKeyword(\n\t$keywords: String\n\t$advertPageSize: Int\n\t$advertEndCursor: String\n\t$variantPageSize: Int\n\t$variantEndCursor: String\n) {\n\tadvertSearch(attributes: { keywordQuery: $keywords }) {\n\t\tadverts(first: $advertPageSize, after: $advertEndCursor) {\n\t\t\ttotalCount\n\t\t\tpageInfo {\n\t\t\t\t...PageInfoPartial\n\t\t\t}\n\t\t\tedges {\n\t\t\t\tnode {\n\t\t\t\t\ttitle\n\t\t\t\t\tvariants(first: $variantPageSize, after: $variantEndCursor) {\n\t\t\t\t\t\ttotalCount\n\t\t\t\t\t\tpageInfo {\n\t\t\t\t\t\t\t...PageInfoPartial\n\t\t\t\t\t\t}\n\t\t\t\t\t\tedges {\n\t\t\t\t\t\t\tnode {\n\t\t\t\t\t\t\t\tid\n\t\t\t\t\t\t\t\tlowestPriceCents\n\t\t\t\t\t\t\t\tcountOnHand\n\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\nfragment PageInfoPartial on PageInfo {\n\thasNextPage\n\tendCursor\n}",
"variables": "{\n\t\"advertPageSize\": 50,\n\t\"advertEndCursor\": null,\n\t\"variantPageSize\": 5,\n\t\"variantEndCursor\": null,\n\t\"keywords\": \"dog food\"\n}"
}
},
"url": {
"raw": "{{base_url}}",
"host": [
"{{base_url}}"
],
"path": null
},
"description": null
},
"response": [
]
}