API Documentation
API reference for ProcessMind: endpoints, authentication, and integration guides for developers.
This guide provides examples and best practices for making API calls to ProcessMind’s services. Whether you’re looking to retrieve data, submit information, or automate workflows, understanding how to interact with our API is essential.
For complete endpoint documentation with request/response formats, see the API Reference.
For additional examples and client libraries, visit our API Documentation on GitHub.
All API requests should be made to:
https://api.processmind.com All API requests require your API key in the x-api-key header:
x-api-key: your-api-key-here The API key can be obtained from your ProcessMind account settings. See Getting your API Key for instructions.
The ProcessMind API enables you to:
Below are practical examples showing how to perform common operations with the ProcessMind API.
To upload a file to a datatable, first obtain a presigned URL:
const presignedUrl = await getPresignedUploadUrl({
apiKey,
tenantId: "tenant-123",
datatableId: "table-456"
});
console.log(presignedUrl); // https://s3.amazonaws.com/…?X-Amz-Signature=… Retrieve all datasets in your tenant:
const datasets = await getDatasets({
apiKey,
tenantId: "tenant-123"
});
console.log(datasets); Retrieve details about your tenant:
const tenantInfo = await getTenant({
apiKey,
tenantId: "tenant-123"
});
console.log(tenantInfo); Create a new process in your tenant:
const process = await createProcess({
apiKey,
tenantId: "tenant-123",
displayName: "Order to Cash"
});
console.log(process.id); // Use this ID for subsequent operations Upload a BPMN file to define your process model:
const fs = require("fs");
const bpmnXml = fs.readFileSync("./my-process.bpmn", "utf8");
await uploadBpmn({
apiKey,
tenantId: "tenant-123",
processId: "process-456",
bpmnXml
}); Connect a datatable to a process for analysis:
const mapping = await createProcessMapping({
apiKey,
tenantId: "tenant-123",
processId: "process-456",
dataTableId: "datatable-789",
displayName: "Sales Data 2024",
showByDefault: true
}); Add a user to your tenant:
const result = await addTenantUser({
apiKey,
tenantId: "tenant-123",
id: "user-456",
email: "colleague@example.com",
isAdminInTenant: false,
isActiveInTenant: true,
sendInvitationEmail: true
}); The general flow for uploading a file to ProcessMind is:
getPresignedUploadUrl call.Here is a simplified example using fetch:
async function uploadFile({ apiKey, tenantId, datatableId, file }) {
// Step 1: Obtain a presigned URL
const uploadUrl = await getPresignedUploadUrl({ apiKey, tenantId, datatableId });
// Step 2: Upload the file via PUT
await fetch(uploadUrl, {
method: "PUT",
headers: {
"Content-Type": file.type
},
body: file
});
} info
Below are complete, copy-paste ready examples in different languages.
Minimal Bash script to upload a file to ProcessMind using two curl calls, with placeholders for all values
Uploads a local CSV file to ProcessMind using a presigned URL.
Steps:
Configuration:
https://api.processmind.comUploads a local CSV file to a remote API using a presigned URL.
Steps:
Configuration:
info
If you have any questions or need assistance with using the API, feel free to reach out to our support team or join our developer community forums.
We use cookies to enhance your browsing experience, serve personalized content, and analyze our traffic. By clicking "Accept All", you consent to our use of cookies.