GraphQL Explorer
fulfillmenttools GraphiQL

The official fulfillmenttools playground, powered by GraphiQL, is hosted at https://{YOUR-TENANT-NAME}.graphql.fulfillmenttools.com/graphql. It enables interactive exploration of queries and documentation. Authentication tokens must be added in the Headers tab at the bottom of the page.
Altair

For in-depth query development on the fulfillmenttools GraphQL Application Programming Interface (API), Altair is a recommended tool, available as a browser plugin and a standalone application. A pre-request script is also available to automatically refresh authentication tokens, similar to the fulfillmenttools Postman collection.
To begin using Altair, enter the tenant's GraphQL URL in the URL bar. Note that using Altair for schema introspection will not include schema directives and lifecycle information from generated GraphQL schemas.
Pre-request script for Altair
This guide explains how to set up a pre-request script in Altair.
Create a new environment for the tenant.

Creating a new environment in Altair Define the following environment variables:
{ "user": "YOUR-USER-EMAIL", "password": "YOUR-PASSWORD", "host": "https://YOUR-TENANT-NAME.graphql.fulfillmenttools.com/graphql", "apiKey": "YOUR-API-KEY" }Navigate to the Pre-request tab, add the following script, and ensure it is enabled.

const lastTokenCall = await altair.storage.get("lastTokenCall"); const now = new Date(); if (!lastTokenCall || now - (new Date(lastTokenCall)) > 1800000) { altair.log("Refreshing token..."); var user = altair.helpers.getEnvironment('user'); var apiKey = altair.helpers.getEnvironment("apiKey"); var escapedPwd = altair.helpers.getEnvironment('password'); escapedPwd = escapedPwd.replace(/\\/g, '\\\\'); escapedPwd = escapedPwd.replace(/\'/g, '\\\''); escapedPwd = escapedPwd.replace(/\"/g, '\\\"'); escapedPwd = escapedPwd.replace(/\`/g, '\\\`'); await altair.storage.set("lastTokenCall", new Date()); const authUrl = 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key=' + apiKey const authResult = await fetch(authUrl, { "method": "POST", "body": JSON.stringify({ "email": user, "password": escapedPwd, "returnSecureToken": true }) }).catch((e) => altair.log(e)) const data = await authResult.json() altair.helpers.setEnvironment("authToken", data.idToken, true); altair.helpers.setEnvironment("refreshToken", data.refreshToken, true); }Adjust the Authentication header to use the automatically generated token.


The script automatically refreshes the authentication token if it is older than 30 minutes.
Last updated