Foxpro / Marketplacer SELLER API / advertSearch (Search using keywords)
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.
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Http')
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": "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}"
* }
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject')
loJson = CreateObject('Chilkat.JsonObject')
loJson.UpdateString("query","query ProductSearchByKeyword(" + CHR(10) + " $keywords: String" + CHR(10) + " $advertPageSize: Int" + CHR(10) + " $advertEndCursor: String" + CHR(10) + " $variantPageSize: Int" + CHR(10) + " $variantEndCursor: String" + CHR(10) + ") {" + CHR(10) + " advertSearch(attributes: { keywordQuery: $keywords }) {" + CHR(10) + " adverts(first: $advertPageSize, after: $advertEndCursor) {" + CHR(10) + " totalCount" + CHR(10) + " pageInfo {" + CHR(10) + " ...PageInfoPartial" + CHR(10) + " }" + CHR(10) + " edges {" + CHR(10) + " node {" + CHR(10) + " title" + CHR(10) + " variants(first: $variantPageSize, after: $variantEndCursor) {" + CHR(10) + " totalCount" + CHR(10) + " pageInfo {" + CHR(10) + " ...PageInfoPartial" + CHR(10) + " }" + CHR(10) + " edges {" + CHR(10) + " node {" + CHR(10) + " id" + CHR(10) + " lowestPriceCents" + CHR(10) + " countOnHand" + CHR(10) + " label" + CHR(10) + " }" + CHR(10) + " }" + CHR(10) + " }" + CHR(10) + " }" + CHR(10) + " }" + CHR(10) + " }" + CHR(10) + " }" + CHR(10) + "}" + CHR(10) + CHR(10) + "fragment PageInfoPartial on PageInfo {" + CHR(10) + " hasNextPage" + CHR(10) + " endCursor" + CHR(10) + "}")
loJson.UpdateString("variables",'{' + CHR(10) + ' "advertPageSize": 50,' + CHR(10) + ' "advertEndCursor": null,' + CHR(10) + ' "variantPageSize": 5,' + CHR(10) + ' "variantEndCursor": null,' + CHR(10) + ' "keywords": "dog food\CHR(10) + '}')
loHttp.SetRequestHeader("Content-Type","application/json")
loHttp.SetRequestHeader("MARKETPLACER-API-KEY","{{api_key}}")
loResp = loHttp.PostJson3("https://bestfriendbazaar.com/graphql","application/json",loJson)
IF (loHttp.LastMethodSuccess = 0) THEN
? loHttp.LastErrorText
RELEASE loHttp
RELEASE loJson
CANCEL
ENDIF
? STR(loResp.StatusCode)
? loResp.BodyStr
RELEASE loResp
RELEASE loHttp
RELEASE loJson
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": [
]
}