I'm running two APIs:
query for this is below:
query($after: String, $LimitPerPage : Int) {
categories: search(
where: {
AND: [
{
name: "_templates"
value: "CB19F29D-C01B-4950-A67A-7C00756328AB"
operator: EQ
}
{
name: "_path"
value: "D744F0C5-FA3A-47BE-AC95-C453BAFB7564"
operator: CONTAINS
}
{
name: "_language"
value: "en"
operator: EQ
}
]
},
first : $LimitPerPage,
after : $after,
) {
results {
fields {
name
jsonValue
}
}
total
pageInfo {
hasNext
endCursor
}
}
}
Variables are below:
{
"after" : "",
"LimitPerPage" : 1000
}
and response I'm getting:
{
"data": {
"categories": {
"results": [
{
"fields": [
{
"name": "Download Link",
"jsonValue": {
"value": ""
}
},
{
"name": "Download Link CTA",
"jsonValue": {
"value": ""
}
},
{
"name": "Download Title CTA",
"jsonValue": {
"value": ""
}
},
{
"name": "Schema",
"jsonValue": {
"value": ""
}
},
{
"name": "Metadata Keywords",
"jsonValue": {
"value": ""
}
},
{
"name": "Metadata Description",
"jsonValue": {
"value": ""
}
},
{
"name": "Metadata Title",
"jsonValue": {
"value": ""
}
},
{
"name": "Page Title",
"jsonValue": {
"value": ""
}
},
{
"name": "Published Date Section",
"jsonValue": {
"value": ""
}
},
{
"name": "Page Alias",
"jsonValue": {
"value": ""
}
},
{
"name": "Description",
"jsonValue": {
"value": ""
}
},
{
"name": "Category",
"jsonValue": [
{
"id": "d820b902-b9b7-4d27-9a15-3eec213fc5bd",
"url": "/Data/Categories/Medical Surgical Nursing",
"name": "Medical Surgical Nursing",
"displayName": "Medical Surgical Nursing",
"fields": {}
},
{
"id": "dd67c0b2-f20f-4026-90f7-70ee8f28972a",
"url": "/Data/Categories/Gastroenterology Nursing",
"name": "Gastroenterology Nursing",
"displayName": "Gastroenterology Nursing",
"fields": {}
},
{
"id": "44d461cc-a8c0-42f3-9ec6-2a819302aa6f",
"url": "/Data/Categories/Home Health Nursing",
"name": "Home Health Nursing",
"displayName": "Home Health Nursing",
"fields": {}
},
{
"id": "837d8ffe-e5c6-425c-b7fa-4706933fafa4",
"url": "/Data/Categories/Primary Care",
"name": "Primary Care",
"displayName": "Primary Care",
"fields": {}
}
]
}
]
},
{
"fields": [
{
"name": "Download Link",
"jsonValue": {
"value": ""
}
},
{
"name": "Download Link CTA",
"jsonValue": {
"value": ""
}
},
{
"name": "Download Title CTA",
"jsonValue": {
"value": ""
}
},
{
"name": "Schema",
"jsonValue": {
"value": ""
}
},
{
"name": "Metadata Keywords",
"jsonValue": {
"value": ""
}
},
{
"name": "Metadata Description",
"jsonValue": {
"value": ""
}
},
{
"name": "Metadata Title",
"jsonValue": {
"value": ""
}
},
{
"name": "Page Title",
"jsonValue": {
"value": ""
}
},
{
"name": "Published Date Section",
"jsonValue": {
"value": ""
}
},
{
"name": "Page Alias",
"jsonValue": {
"value": ""
}
},
{
"name": "Description",
"jsonValue": {
"value": ""
}
},
{
"name": "Category",
"jsonValue": [
{
"id": "80382f82-92d8-4df0-9ec3-174e1533aac0",
"url": "/Data/Categories/Critical Care Nursing",
"name": "Critical Care Nursing",
"displayName": "Critical Care Nursing",
"fields": {}
},
{
"id": "d820b902-b9b7-4d27-9a15-3eec213fc5bd",
"url": "/Data/Categories/Medical Surgical Nursing",
"name": "Medical Surgical Nursing",
"displayName": "Medical Surgical Nursing",
"fields": {}
},
{
"id": "a593aa5d-1038-42af-bb8d-fb3b5bb61891",
"url": "/Data/Categories/Nephrology Urology",
"name": "Nephrology Urology",
"displayName": "Nephrology Urology",
"fields": {}
},
{
"id": "837d8ffe-e5c6-425c-b7fa-4706933fafa4",
"url": "/Data/Categories/Primary Care",
"name": "Primary Care",
"displayName": "Primary Care",
"fields": {}
}
]
}
]
}
],
"total": 2,
"pageInfo": {
"hasNext": false,
"endCursor": "Mg=="
}
}
}
}
so when i want to run my second query
my query for this is below:
query($Category: String, $after: String, $LimitPerPage : Int) {
categories: search(
where: {
AND: [
{
name: "_templates"
value: "CB19F29D-C01B-4950-A67A-7C00756328AB"
operator: EQ
}
{
name: "_path"
value: "D744F0C5-FA3A-47BE-AC95-C453BAFB7564"
operator: CONTAINS
}
{
name: "_language"
value: "en"
operator: EQ
}
{
name: "Category"
value: $Category
operator: EQ
}
]
},
first : $LimitPerPage,
after : $after,
) {
results {
fields {
name
value
}
}
total
pageInfo {
hasNext
endCursor
}
}
}
and my variables are:
{
"Category": "d820b902-b9b7-4d27-9a15-3eec213fc5bd",
"after": "",
"LimitPerPage" : 10000
}
so for this I'm not getting empty results list, can anyone tell what I'm doing wrong?
The Category field is a multi-valued field and the index treat it as a collection, not as a single string. Therefore, the EQ operator will never match the given string data exactly. So, use the CONTAINS operator instead for a multilist field.