Getting Shopify webhook to work with sanity but the function in the Netlify environment catches an error.
2 replies
Last updated: Nov 18, 2020
E
Hello! I'm trying to get a Shopify webhook to work with sanity, using a Netlify environment and a Gatsby frontend. This is from a Github repo from lucasvocos. So far everything is connected and everything deploys fine but when I use Shopify to either send a test request or update a product, the function in the Netlify environment catches an error. I'm pretty sure Netlify has all the permissions and variables it needs. Function and error posted below.
https://github.com/lucasvocos/gatsby-sanity-shopify/blob/main/web/functions/shopify.js
I believe the error comes from line #56 in the function: How can I debug this?
ERROR:
https://github.com/lucasvocos/gatsby-sanity-shopify/blob/main/web/functions/shopify.js
I believe the error comes from line #56 in the function: How can I debug this?
client .transaction() .createIfNotExists(product) .patch(data.id.toString(), patch => patch.set(product)) .commit()
Sanity error 4: ClientError: The mutation(s) failed: mutation failed on document "788032119674292900": Insufficient permissions; permission "create" required at onResponse (/var/task/src/node_modules/@sanity/client/lib/http/request.js:27:13) at /var/task/src/node_modules/get-it/lib-node/util/middlewareReducer.js:10:22 at Array.reduce (<anonymous>) at applyMiddleware (/var/task/src/node_modules/get-it/lib-node/util/middlewareReducer.js:9:29) at onResponse (/var/task/src/node_modules/get-it/lib-node/index.js:81:22) at /var/task/src/node_modules/get-it/lib-node/index.js:48:55 at callback (/var/task/src/node_modules/get-it/lib-node/request/node-request.js:57:46) at /var/task/src/node_modules/get-it/lib-node/request/node-request.js:141:14 at DestroyableTransform.<anonymous> (/var/task/src/node_modules/simple-concat/index.js:7:13) at Object.onceWrapper (events.js:420:28) { response: { body: { error: [Object] }, url: '***************************************', method: 'POST', headers: { 'content-type': 'application/json; charset=utf-8', 'content-length': '349', 'x-sanity-shard': '*********************', 'x-served-by': '*************', date: '********************', vary: 'Origin', xkey: 'project-************, project-******************', via: '1.1 google', 'alt-svc': 'clear', connection: 'close' }, statusCode: 403, statusMessage: 'Forbidden' }
Nov 17, 2020, 11:57 PM
E
The error looks to be coming from the promise after the client.commit() on line #61
Nov 18, 2020, 1:23 AM
E
I solved it. Whoooops.
Nov 18, 2020, 2:55 AM
Sanity– build remarkable experiences at scale
Sanity is a modern headless CMS that treats content as data to power your digital business. Free to get started, and pay-as-you-go on all plans.