Re: Access denied on querystring

Access denied on querystring

asgeirfri
Visitor
1 0 1

I am trying to filter a collection by product tags, but I am getting 'Access denied'.

 

It's strange because I can filter products:

 

query Smu {
 products(query:"title:Samsung Gear S3" first: 10) {
   edges {
     node {
       title
       tags
       collections(first: 10) {
         edges {
           node {
             handle
             title
           }
         }
       }
     }
   }
 }
}

As I mentioned, the above query works and I get all products named Samsung Gear S3

 

 

But when I try to filter the same in Collection: 

 

query Bar {
 collection(id: "gid://shopify/Collection/88417960009") {
   products(query:"title:Samsung Gear S3" first: 10) {
     edges {
       node {
         title
         productType
       }
     }
   }
 }
}

It returns

 

{
 "data": {
   "collection": null
 },
 "errors": [
   {
     "message": "access denied",
     "locations": [
       {
         "line": 18,
         "column": 5
       }
     ],
     "path": [
       "collection",
       "products"
     ]
   }
 ],
 "extensions": {
   "cost": {
     "requestedQueryCost": 13,
     "actualQueryCost": 1,
     "throttleStatus": {
       "maximumAvailable": 1000,
       "currentlyAvailable": 999,
       "restoreRate": 50
     }
   }
 }
}

 

 

Why could this be happening?

 

Best regards

 

 

Replies 2 (2)

KarlOffenberger
Shopify Partner
1873 184 901

Hmm, couldn't reproduce that exact error you are getting.

 

I am getting this one instead

 

 

"errors": [
    {
      "message": "Cannot filter by query if the collection is a custom collection.",
      ...
    }
]

 

 

Which is fair enough. Just an API constraint.

 

One way to sort of workaround this is to simply query products with a query filter on title as you have and use the inCollection field then have the response filtered on your side.

 

 

{
  products(query:"title:Samsung Gear S3" first: 10) {
    edges {
      node {
        title
        productType
        inCollection(id: "gid://shopify/Collection/<COLLECTION_ID>")
      }
    }
  }
}

 

Hope this helps!

 

Kris_Doyle
Shopify Partner
140 1 43

Hi All,

 

I'm running into this as well but my understanding from @Alex is that it's not supported at the moment. Perhaps in the future.

 

@Alex any updates on support for this? If it's not coming for a while, it should probably be mentioned in the docs that this is only available at the top level and not when you're nested in a collection. Just sayin' 😉

 

Unfortunately, switching the GraphQL has gained me A LOT in some areas and lost in others.