Chilkat Online Tools

Xojo / Marketplacer SELLER API / advertSearch (Search by Seller Ids)

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 ProductSearchBySellerId(\n\t$sellerIds: [ID!]\n\t$advertPageSize: Int\n\t$advertEndCursor: String\n\t$variantPageSize: Int\n\t$variantEndCursor: String\n) {\n\tadvertSearch(attributes: { sellerIds: $sellerIds }) {\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\tid\n\t\t\t\t\tpriceUnit\n\t\t\t\t\ttitle\n\t\t\t\t\tseller {\n\t\t\t\t\t\tbusinessName\n\t\t\t\t\t}\n\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\tlowestPrice\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\"sellerIds\": [\n\t\t\"U2VsbGVyLTY2MDExOQ==\",\n\t\t\"U2VsbGVyLTcw\"\n\t]\n}"
// }

Dim json As New Chilkat.JsonObject
success = json.UpdateString("query","query ProductSearchBySellerId(" + EndOfLine.Unix + "	$sellerIds: [ID!]" + EndOfLine.Unix + "	$advertPageSize: Int" + EndOfLine.Unix + "	$advertEndCursor: String" + EndOfLine.Unix + "	$variantPageSize: Int" + EndOfLine.Unix + "	$variantEndCursor: String" + EndOfLine.Unix + ") {" + EndOfLine.Unix + "	advertSearch(attributes: { sellerIds: $sellerIds }) {" + 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 + "					id" + EndOfLine.Unix + "					priceUnit" + EndOfLine.Unix + "					title" + EndOfLine.Unix + "					seller {" + EndOfLine.Unix + "						businessName" + EndOfLine.Unix + "					}" + EndOfLine.Unix + 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 + "								lowestPrice" + 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 + "	""sellerIds"": [" + EndOfLine.Unix + "		""U2VsbGVyLTY2MDExOQ==""," + EndOfLine.Unix + "		""U2VsbGVyLTcw\EndOfLine.Unix + "	]" + 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 ProductSearchBySellerId(\n\t$sellerIds: [ID!]\n\t$advertPageSize: Int\n\t$advertEndCursor: String\n\t$variantPageSize: Int\n\t$variantEndCursor: String\n) {\n\tadvertSearch(attributes: { sellerIds: $sellerIds }) {\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\tid\n\t\t\t\t\tpriceUnit\n\t\t\t\t\ttitle\n\t\t\t\t\tseller {\n\t\t\t\t\t\tbusinessName\n\t\t\t\t\t}\n\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\tlowestPrice\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\"sellerIds\": [\n\t\t\"U2VsbGVyLTY2MDExOQ==\",\n\t\t\"U2VsbGVyLTcw\"\n\t]\n}"}'
https://bestfriendbazaar.com/graphql

Postman Collection Item JSON

{
  "name": "advertSearch (Search by Seller Ids)",
  "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 ProductSearchBySellerId(\n\t$sellerIds: [ID!]\n\t$advertPageSize: Int\n\t$advertEndCursor: String\n\t$variantPageSize: Int\n\t$variantEndCursor: String\n) {\n\tadvertSearch(attributes: { sellerIds: $sellerIds }) {\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\tid\n\t\t\t\t\tpriceUnit\n\t\t\t\t\ttitle\n\t\t\t\t\tseller {\n\t\t\t\t\t\tbusinessName\n\t\t\t\t\t}\n\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\tlowestPrice\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\"sellerIds\": [\n\t\t\"U2VsbGVyLTY2MDExOQ==\",\n\t\t\"U2VsbGVyLTcw\"\n\t]\n}"
      }
    },
    "url": {
      "raw": "{{base_url}}",
      "host": [
        "{{base_url}}"
      ],
      "path": null
    },
    "description": null
  },
  "response": [
  ]
}