@graphcms/utils

Collection of useful GraphCMS utilities for building GraphQL powered apps.

Usage no npm install needed!

<script type="module">
  import graphcmsUtils from 'https://cdn.skypack.dev/@graphcms/utils';
</script>

README

graphcms-utils

Install

npm i @graphcms/utils

Usage

verifyWebhookSignature

const { verifyWebhookSignature } = require("@graphcms/utils");

const secret = "rCNwyiloY3oJYYkxgpBXaleIiUv5MYlx";

const body = {}; // Typically req.body
const signature = "..."; // Typically req.headers['gcms-signature']

const isValid = verifyWebhookSignature({ body, signature, secret });

verifyWebhookSignature also accepts a rawPayload in the case that the body has not yet been parsed.

const { verifyWebhookSignature } = require("@graphcms/utils");

const secret = "rCNwyiloY3oJYYkxgpBXaleIiUv5MYlx";

const rawPayload = '{"hello":"world"}';
const signature = "..."; // Typically req.headers['gcms-signature']

const isValid = verifyWebhookSignature({ rawPayload, signature, secret });

Learn more about webhooks

generateWebhookSignature

This is useful for testing signed webhooks. You can generate a GraphCMS webhook signature, and then use it to test your webhook.

const { generateWebhookSignature } = require("@graphcms/utils");

const secret = "rCNwyiloY3oJYYkxgpBXaleIiUv5MYlx";

const body = {
  hello: "world",
};

const signature = generateWebhookSignature({ body, secret });

Learn more about webhooks