Usage
API Access
Headers
Authorization: Bearer <api_key>
Endpoint
https://app.eduflow.com/api/graphql
General requests to the API endpoint will return JSON.
The response will be wrapped in "data" and match the shape of the original query.
curl(1) example:
EDUFLOW_API_KEY=<api_key> \
curl \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer ${EDUFLOW_API_KEY}" \
-X POST \
-d '{"query": "{institution {name}}"}' \
https://app.eduflow.com/api/graphqlwget(1) example:
EDUFLOW_API_KEY=<api_key> \
wget -qO- \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer ${EDUFLOW_API_KEY}" \
-X POST \
--post-data '{"query": "{institution {name}}"}' \
https://app.eduflow.com/api/graphql#!/bin/env node
if (!process.env.EDUFLOW_API_KEY) {
console.error(`Enter your EDUFLOW_API_KEY:
env EDUFLOW_API_KEY=<api_key> node index.js`);
return;
}
const http =
process.env.EDUFLOW_API_PROTOCOL === "http"
? require("http")
: require("https");
const query = JSON.stringify({
query: `{
institution {
name
}
}`,
});
const options = {
hostname: process.env.EDUFLOW_API_HOSTNAME || "app.eduflow.com",
path: "/api/graphql",
port: process.env.EDUFLOW_API_PORT || 443,
method: "POST",
headers: {
"Content-Type": "application/json",
"Content-Length": query.length,
Authorization: "Bearer " + process.env.EDUFLOW_API_KEY,
"User-Agent": "Node",
},
};
const req = http.request(options, (res) => {
let data = "";
res.on("data", (d) => {
data += d;
});
res.on("end", () => {
console.log(JSON.parse(data).data);
});
});
req.on("error", (error) => {
console.error(error);
});
req.write(query);
req.end();Response:
{"data":{"institution":{"name":"Test institution"}}}Session-based / GraphiQL
Institution administrators that are logged into Eduflow can access the API endpoint and query through the graphql interface.
When logged in, go directly to https://app.eduflow.com/api/graphql


If you access via browser, the GraphQL endpoint will show GraphiQL
To open GraphiQL's sidebar, mouseover an object in the query and click an object inside a tooltip, or clicking "Doc":

GraphiQL works with both session-based (logged into app.eduflow.com) and by passing authorization headers.
Last updated
Was this helpful?