Elenco Documenti
In Questa Pagina

API calls

Effettuare chiamate API a ProcessMind

Questa guida offre esempi e best practice per usare le API di ProcessMind. Che tu debba recuperare dati, inviare info o automatizzare workflow, sapere come interagire con la nostra API è essenziale.

Variabili di autenticazione

  • apiKey Per tutte le richieste API, devi inserire la tua API key negli header della richiesta per l’autenticazione. Puoi ottenere la API key nelle impostazioni del tuo account ProcessMind.
  • tenantId Alcuni endpoint API richiedono un Tenant ID per specificare il contesto della richiesta. Questo ID è unico per la tua organizzazione e si trova nelle impostazioni dell’account.
  • datatableId Quando lavori con dataset, devi fornire il Datatable ID per identificare la datatable con cui interagisci. Questo ID è disponibile nel menu impostazioni del dataset [Get Data Table ID] in ProcessMind.

Caricamento diretto dei file

ProcessMind permette il caricamento diretto di file nelle datatable tramite presigned URL. Questo metodo ti consente di caricare file in modo sicuro senza esporre la tua API key o altre informazioni sensibili. Ricorda che i presigned URL hanno una durata limitata e vanno utilizzati subito dopo il recupero. Per ottenere l’URL di caricamento diretto è necessario fare una richiesta GET all’endpoint. Puoi ottenere questo URL nel menu impostazioni dataset [Get upload URL] in ProcessMind. Qui puoi impostare una durata massima tra 1 ora, 1 settimana o 1 mese.

Panoramica endpoint

MethodEndpointDescrizione
GET/tenant/{tenantId}/datatable/ {datatableId}/uploads/presignedurlRestituisce una URL temporanea pre-signed per caricare un file su una datatable.
GET/tenant/{tenantId}/datasetsRestituisce l’elenco dei dataset per il tenant dato.
GET/tenant/{tenantId}Restituisce i dettagli del tenant indicato.
GET/tenant/{tenantId}/organizationRestituisce informazioni sull’organizzazione del tenant.

Base URL

Tutte le richieste API vanno inviate al seguente base URL: https://api.processmind.com

Ottenere un Pre‑signed Upload URL

Endpoint: GET /tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl Parametri:

  • tenantId – ID del tenant (string).
  • datatableId – ID della datatable su cui vuoi caricare (string).
  • apiKey – La tua API key (string).

Risposta: Un oggetto response che contiene PreSignedUploadUrl, un URL temporaneo da usare per caricare un file direttamente (di solito tramite HTTP PUT).

Esempio (con helper):

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

Lista dei Dataset

Endpoint: GET /tenant/{tenantId}/datasets Parametri:

  • tenantId – ID del tenant.
  • apiKey – La tua API key.

Risposta: Un array di oggetti dataset del tenant.

Esempio:

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

Recupero dettagli Tenant

Endpoint: GET /tenant/{tenantId} Parametri:

  • tenantId – ID del tenant.
  • apiKey – La tua API key.

Risposta: Oggetto con dati sul tenant come nome, data creazione e piano.

Esempio:

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

Recupero dettagli Organization

Endpoint: GET /tenant/{tenantId}/organization Parametri:

  • tenantId – ID del tenant.
  • apiKey – La tua API key.

Risposta: Informazioni sulla organization collegata al tenant (es. nome azienda, indirizzo, contatti).

Esempio:

const org = await getOrganization({
  apiKey,
  tenantId: 'tenant-123'
});
console.log(org);

Caricamento di un file

La funzione uploadFile mostra come caricare un file usando la pre-signed URL. Il flusso generale:

  1. Ottieni la pre-signed URL tramite la funzione getPresignedUploadUrl.
  2. Fai una richiesta PUT a quella URL con il contenuto del file. La pre-signed URL consente il caricamento diretto sullo storage provider, senza altre credenziali.
  3. (Facoltativo) Notifica alla tua API che il caricamento è stato completato, se richiesto dal backend.

Esempio semplificato con fetch per caricare un 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

  • Le pre-signed URL scadono dopo poco tempo (spesso pochi minuti). Usa la URL subito dopo averla ottenuta.
  • Se il caricamento fallisce (es. problemi di rete), richiedi una nuova pre-signed URL prima di riprovare.
  • Conserva sempre la tua apiKey in modo sicuro e non esporla lato client (es. in un front-end pubblico).

Esempio BASH

Script Bash minimale per caricare un file su ProcessMind tramite due chiamate curl, con placeholder per tutti i valori

Download Esempio BASH

Esempio NodeJS

Carica un file CSV locale su ProcessMind tramite una URL presigned.

Step:

  1. Recupera una URL di upload presigned tramite API.
  2. Legge il file locale dal disco.
  3. Carica il file alla URL presigned con HTTP PUT.

Configurazione:

  • Inserisci API key, tenantId, datatableId e filePath quando chiami uploadFileToProcessMind().
  • La base URL API è https://api.processmind.com
Download Esempio NodeJS

Esempio Python

Carica un file CSV locale su una API remota usando una URL presigned.

Step:

  1. Recupera una URL di upload presigned tramite API.
  2. Legge il file locale dal disco.
  3. Carica il file alla URL presigned tramite HTTP PUT.

Configurazione:

  • Aggiorna api_key, tenant_id, datatable_id, file_path secondo necessità.
Download Esempio Python