La descarga de un archivo se realiza en varios pasos: crear un documento, subir el archivo y, a continuación, vincularlos.
Paso 1: Obtener el ID del servicio web del caso #
Para crear un documento, necesitas el identificador del servicio web de la carpeta de destino. Utiliza una operación query :
Ejemplo de curl:
curl "https://apps.kafinea.com/YourKafinea/webservice.php?operation=query&sessionName=YOUR_SESSION_ID&query=SELECT%20id%20FROM%20DocumentFolders%20WHERE%20foldername%20LIKE%20'Default'%20LIMIT%201%20;"
Solicitud:
SELECT id FROM DocumentFolders WHERE foldername LIKE 'Default' LIMIT 1 ;
Paso 2: Crear una entidad «Documento» #
Crea una entidad de tipo Documents a través de la operación create.
PUBLICAR
https://apps.kafinea.com/{instance}/webservice.php
| Parámetro | Tipo | Requisitos | Descripción |
|---|---|---|---|
operation |
cadena | sí | Debe ser create |
sessionName |
cadena | sí | Identificador de sesión |
element |
JSON | sí | Objeto JSON del documento (véanse los campos a continuación) |
elementType |
cadena | sí | Debe ser Documents |
Campos del objeto element :
| Campo | Tipo | Requisitos | Descripción |
|---|---|---|---|
notes_title |
cadena | sí | Nombre del documento |
folderid |
cadena | sí | ID del servicio web del expediente (paso 1) |
filename |
cadena | sí | Nombre del archivo |
filetype |
cadena | sí | Tipo MIME (p. ej.: application/pdf) |
filesize |
int | sí | Tamaño del archivo en bytes |
filestatus |
int | sí | 1 para activo |
filelocationtype |
cadena | sí | I para almacenamiento interno |
assigned_user_id |
cadena | sí | ID del servicio web del usuario asignado |
Ejemplo de curl:
curl -X POST https://apps.kafinea.com/YourKafinea/webservice.php \
-d "operation=create" \
-d "sessionName=YOUR_SESSION_ID" \
-d 'element={"notes_title":"Mon document","folderid":"65x1","filename":"rapport.pdf","filetype":"application/pdf","filesize":12345,"filestatus":1,"filelocationtype":"I","assigned_user_id":"19x1"}' \
-d "elementType=Documents"
Paso 3: Subir el archivo (FileUpload) #
Esta operación sube el archivo y lo vincula al documento creado. También se puede utilizar por sí sola para añadir imágenes a los productos (sustituya attachmentType por Image y parentId (mediante el ID del servicio web del producto).
PUBLICAR
https://apps.kafinea.com/{instance}/webservice.php
| Parámetro | Tipo | Requisitos | Descripción |
|---|---|---|---|
operation |
cadena | sí | Debe ser FileUpload |
sessionName |
cadena | sí | Identificador de sesión |
parentId |
cadena | sí | ID del servicio web del documento (paso 2) |
attachmentType |
cadena | sí | Attachment para un archivo, Image para una imagen |
fileName |
cadena | sí | Nombre del archivo |
fileContents |
cadena | sí | Contenido del archivo codificado en base64 |
Ejemplo de curl:
curl -X POST https://apps.kafinea.com/YourKafinea/webservice.php \
-d "operation=FileUpload" \
-d "sessionName=YOUR_SESSION_ID" \
-d "parentId=15x7890" \
-d "attachmentType=Attachment" \
-d "fileName=rapport.pdf" \
-d "fileContents=$(base64 -w0 rapport.pdf)"
Recuperar un archivo (files_retrieve) #
Recupera un archivo añadido previamente a Kafinea. Necesitas el WebserviceID del archivo (que no debe confundirse con el de la entidad «Documento»).
GET
https://apps.kafinea.com/{instance}/webservice.php
| Parámetro | Tipo | Requisitos | Descripción |
|---|---|---|---|
operation |
cadena | sí | Debe ser files_retrieve |
sessionName |
cadena | sí | Identificador de sesión |
id |
cadena | sí | ID del servicio web del archivo |
Ejemplo de curl:
curl "https://apps.kafinea.com/YourKafinea/webservice.php?operation=files_retrieve&sessionName=YOUR_SESSION_ID&id=28x5678"