Caricamento di file tramite webhook di documenti
Creato per:
- Sviluppatore
Il caricamento di un file in un provider di archiviazione documenti è un processo in due fasi che richiede due endpoint API separati. Adobe Workfront avvia il processo di caricamento chiamando /uploadInit. Questo endpoint restituisce un ID documento che viene quindi passato a /upload durante il caricamento dei byte del documento. A seconda del sistema di archiviazione dei documenti sottostante, potrebbe essere necessario creare un documento a lunghezza zero, quindi aggiornare il contenuto del documento in un secondo momento.
Aggiunto alla versione 1.1 di questa specifica, l'ID documento e l'ID versione documento possono essere utilizzati per recuperare informazioni aggiuntive da Workfront.
Esempio: se il sistema di gestione dei documenti desidera ulteriori informazioni sul documento, il codice di implementazione del webhook potrebbe utilizzare l'ID del documento per recuperare tali informazioni utilizzando l'API RESTful di Workfront. È buona norma che queste informazioni provengano dai campi dati personalizzati del documento che contengono l'attività, il problema o il progetto.
POST, metodo
URL
POST /uploadInit
Parametri di query
Nome | Descrizione |
---|---|
parentId | ID della cartella principale, come indicato dal provider del webhook. |
nome file | Nome del documento |
documentId | ID documento Workfront (aggiunto nella versione 1.1) |
documentVersionId | ID versione documento Workfront (aggiunto nella versione 1.1) |
Risposta
I metadati del file, come definito dall’endpoint /metadata. Questo include l’ID documento utilizzato dal provider.
Esempio:
https://www.acme.com/api/uploadInit?parentId=12345&filename=new-file.png&documentId=511ea6e000023edb38d2effb2f4e6e3b&documentVersionId=511ea6e000023edb38d2e ffb2f4e6e3b
PUT, metodo
Carica i byte di un documento nel provider del webhook.
URL
PUT /upload
Parametri di query
Nome | Descrizione |
---|---|
id | ID del documento appena creato. |
Corpo richiesta
Byte di contenuto non elaborato per il documento.
Risposta
{
result: "success"
}
oppure
{
result: "fail"
}
Esempio
https://www.acme.com/api/upload?id=1234 [document bytes included in update stream]
risposta
{
result:"success"
}