API Key Management
Easily manage your API keys to integrate ProcessMind with your applications securely and efficiently.
This guide will provide you wil 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.
ProcessMind supports direct file uploads to datatables using presigned URLs. This method allows you to securely upload files without exposing your API key or other sensitive information. Keep in mind that presigned URLs are time-limited and should be used promptly after retrieval. To access the direct upload URL you need to make a GET request to the endpoint. This URL can be retrieved by going to the dataset settings menu [Get upload URL] within ProcessMind. Here the time limit can be set from 1 hour, 1 week or 1 month maximum.
Method | Endpoint | Description |
---|---|---|
GET | /tenant/{tenantId}/datatable/ {datatableId}/uploads/presignedurl | Returns a temporary pre‑signed URL for uploading a file to a datatable. |
GET | /tenant/{tenantId}/datasets | Returns a list of datasets for the given tenant. |
GET | /tenant/{tenantId} | Returns details about the specified tenant. |
GET | /tenant/{tenantId}/organization | Returns information about the tenant’s organization. |
All API requests should be made to the following base URL: https://api.processmind.com
Endpoint: GET /tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl
Parameters:
Returns: A response object containing PreSignedUploadUrl, which is a temporary URL you can use to upload a file directly (usually via HTTP PUT).
Example (using the helper):
const presignedUrl = await getPresignedUploadUrl({
apiKey,
tenantId: 'tenant-123',
datatableId: 'table-456'
});
console.log(presignedUrl); // e.g. https://s3.amazonaws.com/…?X-Amz-Signature=…
Endpoint: GET /tenant/{tenantId}/datasets
Parameters:
Returns: An array of dataset objects belonging to the tenant.
Example:
const datasets = await getDatasets({
apiKey,
tenantId: 'tenant-123'
});
console.log(datasets);
Endpoint: GET /tenant/{tenantId}
Parameters:
Returns: An object with metadata about the tenant such as name, created date and plan.
Example:
const tenantInfo = await getTenant({
apiKey,
tenantId: 'tenant-123'
});
console.log(tenantInfo);
Endpoint: GET /tenant/{tenantId}/organization
Parameters:
Returns: Information about the organization associated with the tenant (e.g. company name, address, contact details).
Example:
const org = await getOrganization({
apiKey,
tenantId: 'tenant-123'
});
console.log(org);
The uploadFile function demonstrates how to upload a file using the pre‑signed URL. The general flow is:
Here is a simplified example using fetch to upload a file:
async function uploadFile({ apiKey, tenantId, datatableId, file }) {
// Step 1: Obtain a pre-signed 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
});
// Step 3: Optionally notify your API of completion
// (depends on your backend implementation)
}
info
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:
Uploads a local CSV file to a remote API using a presigned URL.
Steps:
Configuration: