Sur cette page

Vue d’ensemble de l’API

Comment utiliser l’API ProcessMind

Ce guide offre des exemples et bonnes pratiques pour appeler les services ProcessMind. Que vous souhaitiez récupérer des data, soumettre des infos ou automatiser vos workflows, il est essentiel de bien comprendre l’utilisation de notre API.

Pour la documentation complète sur les endpoints et les formats des requêtes/réponses, consultez la Référence API.

Pour d’autres exemples et librairies client, retrouvez notre Documentation API sur GitHub.

URL de base de l’API

Toutes les requêtes API doivent être envoyées à :

https://api.processmind.com

Authentification

Toutes les requêtes API nécessitent votre clé API dans le header x-api-key :

x-api-key: votre-cle-api

La clé API est disponible dans les paramètres de votre compte ProcessMind. Voir Obtenir votre clé API pour les instructions.

Concepts clés

  • apiKey – Votre token d’authentification pour toutes les requêtes API.
  • tenantId – Identifie votre workspace/contexte d’organisation. Dans les paramètres de votre compte.
  • datatableId – Identifie un datatable précis pour vos data. Visible dans le menu de configuration du dataset [Get Data Table ID] dans ProcessMind.

Ce que vous pouvez faire

L’API ProcessMind vous permet de :

  • Gérer les tenants – Consulter les infos, mettre à jour les paramètres, voir les statistiques
  • Gérer les utilisateurs – Ajouter, modifier ou supprimer des utilisateurs sur tenants et organisations
  • Gérer les processes – Créer des process, uploader des modèles BPMN, organiser par dossier
  • Connecter des data – Mapper des datatables à des process pour analyse
  • Uploader des data – Importer des fichiers CSV/XLSX directement dans des datatables
  • Gérer les datasets – Lister, inspecter et supprimer datasets et datatables

Exemples courants

Voici des exemples pratiques pour effectuer les opérations les plus utilisées avec l’API ProcessMind.

Obtenir une URL presignée d’upload

Pour uploader un fichier dans un datatable, obtenez d’abord une URL presignée :

const presignedUrl = await getPresignedUploadUrl({
	apiKey,
	tenantId: "tenant-123",
	datatableId: "table-456"
});
console.log(presignedUrl); // https://s3.amazonaws.com/…?X-Amz-Signature=…

Lister les datasets

Récupérez tous les datasets de votre tenant :

const datasets = await getDatasets({
	apiKey,
	tenantId: "tenant-123"
});
console.log(datasets);

Récupérer les informations du tenant

Récupérez les infos de votre tenant :

const tenantInfo = await getTenant({
	apiKey,
	tenantId: "tenant-123"
});
console.log(tenantInfo);

Créer un process

Créez un nouveau process dans votre tenant :

const process = await createProcess({
	apiKey,
	tenantId: "tenant-123",
	displayName: "Order to Cash"
});
console.log(process.id); // Utilisez cet ID pour la suite

Importer un modèle BPMN

Uploadez un fichier BPMN pour définir votre modèle de process :

const fs = require("fs");
const bpmnXml = fs.readFileSync("./my-process.bpmn", "utf8");

await uploadBpmn({
	apiKey,
	tenantId: "tenant-123",
	processId: "process-456",
	bpmnXml
});

Mapping de data à un process

Reliez un datatable à un process pour l’analyse :

const mapping = await createProcessMapping({
	apiKey,
	tenantId: "tenant-123",
	processId: "process-456",
	dataTableId: "datatable-789",
	displayName: "Sales Data 2024",
	showByDefault: true
});

Ajouter un utilisateur à un tenant

Ajoutez un utilisateur à votre tenant :

const result = await addTenantUser({
	apiKey,
	tenantId: "tenant-123",
	id: "user-456",
	email: "colleague@example.com",
	isAdminInTenant: false,
	isActiveInTenant: true,
	sendInvitationEmail: true
});

Upload de fichiers

Le flux classique pour uploader un fichier dans ProcessMind :

  1. Obtenez une URL presignée avec l’appel getPresignedUploadUrl.
  2. Faites une requête PUT sur cette URL avec le contenu du fichier.
  3. Cette URL autorise l’upload direct sur le cloud – aucune autre authentification requise.

Exemple simple avec fetch :

async function uploadFile({ apiKey, tenantId, datatableId, file }) {
	// Étape 1 : récupérez l’URL presignée
	const uploadUrl = await getPresignedUploadUrl({ apiKey, tenantId, datatableId });
	
	// Étape 2 : upload du fichier en PUT
	await fetch(uploadUrl, {
		method: "PUT",
		headers: {
			"Content-Type": file.type
		},
		body: file
	});
}

info

  • Les URLs presignées expirent rapidement (souvent en quelques minutes). Utilisez-les tout de suite.
  • Si l’upload échoue (connexion instable, par exemple), demandez une nouvelle URL avant de réessayer.
  • Ne partagez jamais votre apiKey et ne l’affichez pas côté client (front‑end public).

Exemples complets

Vous trouverez ci-dessous des exemples complets, prêts à copier-coller dans différents langages.

Exemple Bash : Upload d’un fichier

Script Bash minimal pour uploader un fichier sur ProcessMind via deux commandes curl, avec variables à adapter.

Télécharger l’exemple BASH

Exemple Node.js : upload d’un CSV local

Envoie un fichier CSV local vers ProcessMind via une URL pré-signée.

Étapes :

  1. Récupérer l’URL via l’API.
  2. Lire le fichier local.
  3. Uploader le fichier par PUT sur l’URL donnée.

Configuration :

  • Indiquez API key, tenantId, datatableId et filePath à uploadFileToProcessMind().
  • URL de base API : https://api.processmind.com
Télécharger l’exemple NodeJS

Exemple Python : upload d’un CSV local

Dépose un CSV local sur l’API via une URL pré-signée.

Étapes :

  1. Récupérer l’URL via l’API.
  2. Lire le fichier local.
  3. Uploader via PUT à l’URL fournie.

Configuration :

  • Modifiez api_key, tenant_id, datatable_id et file_path selon besoin.
Télécharger l’exemple Python

Prochaines étapes

info

Pour toute question ou aide sur l’API, contactez notre support ou participez à la communauté de développeurs.