Trabajos
Los trabajos en Vendomia representan las diferentes tareas a realizar por tu equipo, dentro de un proyecto. Un trabajo puede ser realizado por uno o más trabajadores, y posee una fecha de inicio y otra de fin. Los trabajos se componen de una lista de productos, que incluyen tanto el material a utilizar, como las horas de mano de obra invertidas en completarlo.
Uso general

El proceso de autenticación funciona mediante un token de acceso, que se corresponde con unos de los usuarios de tu cuenta.

El nivel de acceso del que dispones con la API dependerá del usuario con el que accedas a ella. Los permisos otorgados según el grupo del usuario a través de la aplicación serán los mismos durante el uso de la API.

Para autenticarse con la API, es necesario enviar el token a través de una cabecera Authorization en cada una de tus solicitudes:

Authorization: Bearer <API_KEY>

Solicitud de ejemplo (PHP)
$data = array(
    "key" => "value",
);

$headers = array(
    "Authorization: Bearer <API_KEY>",
    "Content-Type: application/json",
);

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "<API_URL>");
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "GET/POST/PUT/DELETE");
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($curl);
curl_close($curl);
GET Listado de Trabajos
Devuelve un listado de elementos.
work_id
number
ID
work_number
text
Número
work_name
text
Nombre
work_contact
remoteselect
Contacto
work_project
remoteselect
Proyecto
work_type
text
Tipo
work_status
select
Estado Base
0
Borrador
1
Pendiente
2
En Curso
3
Finalizado
4
Pausado
5
Cancelado
6
Revisión
limit
integer
limit
Indica el número máximo de resultados a devolver. Máximo de 24 resultados.
offset
integer
offset
Indica el número de resultados a omitir, a fin de paginar los resultados. Por ejemplo, indicar 100 para comenzar a partir del resultado 101.
GET https://vendomia.app/api/works
Payload de ejemplo
{
    "work_id": "123",
    "work_number": "123",
    "work_name": "Mi Trabajo",
    "work_contact": "123",
    "work_project": "123",
    "work_type": "123",
    "work_status": "123",
    "limit": "24",
    "offset": "0",
}
Respuesta de ejemplo
{
    "status": 200,
    "message": "OK.",
    "body": {
        "objects": {
            "12345": {
                "work_id": "123",
                "work_number": "123",
                "work_name": "Mi Trabajo",
                "work_contact": "123",
                "work_project": "123",
                "work_type": "123",
                "work_status": "123",
            }
        }
    }
}
GET Recuperar Trabajo
Devuelve un único elemento a través de su identificador primario.
GET https://vendomia.app/api/works/{id}
Respuesta de ejemplo
{
    "status": 200,
    "message": "OK.",
    "body": {
        "object": {
            "work_id": "123",
            "work_number": "123",
            "work_name": "Mi Trabajo",
            "work_contact": "123",
            "work_project": "123",
            "work_type": "123",
            "work_status": "123",
        }
    }
}
POST Crear Trabajo
Crea un nuevo elemento.
work_name
text
Nombre
work_description
text
Descripción
work_materials
text
Materiales
work_contact
remoteselect
Contacto
work_project
remoteselect
Proyecto
work_date
date
Fecha de fin
work_date_start
date
Fecha de Inicio
work_type
text
Tipo
POST https://vendomia.app/api/works
Payload de ejemplo
{
    "work_name": "Mi Trabajo",
    "work_description": "Instalación de maquinaria...",
    "work_materials": "Cableado, máquina...",
    "work_contact": "123",
    "work_project": "123",
    "work_date": "2026-01-23",
    "work_date_start": "2026-01-20",
    "work_type": "123",
}
Respuesta de ejemplo
{
    "status": 200,
    "message": "OK.",
    "body": {
        "object": {
            "work_id": "123",
            "work_number": "123",
            "work_name": "Mi Trabajo",
            "work_contact": "123",
            "work_project": "123",
            "work_type": "123",
            "work_status": "123",
        }
    }
}
PUT Modificar Trabajo
Modifica un elemento existente según su identificador primario.
work_name
text
Nombre
work_description
text
Descripción
work_materials
text
Materiales
work_results
text
Resultado
work_contact
remoteselect
Contacto
work_project
remoteselect
Proyecto
work_date
date
Fecha de fin
work_date_start
date
Fecha de Inicio
work_type
text
Tipo
set_members
remoteselect
Asignar Miembros
Indica un array de IDs para sustituir todos los miembros actuales por los indicados.
add_members
remoteselect
Añadir Miembros
Indica un array de IDs para añadir miembros a este elemento. Los miembros existentes no serán afectados.
remove_members
remoteselect
Quitar Miembros
Indica un array de IDs para quitar miembros de este elemento de forma selectiva.
PUT https://vendomia.app/api/works/{id}
Payload de ejemplo
{
    "work_name": "Mi Trabajo",
    "work_description": "Instalación de maquinaria...",
    "work_materials": "Cableado, máquina...",
    "work_results": "Se ha instalado...",
    "work_contact": "123",
    "work_project": "123",
    "work_date": "2026-01-23",
    "work_date_start": "2026-01-20",
    "work_type": "123",
    "set_members": "[123,456]",
    "add_members": "[123,456]",
    "remove_members": "[123,456]",
}
Respuesta de ejemplo
{
    "status": 200,
    "message": "OK.",
    "body": {
        "object": {
            "work_id": "123",
            "work_number": "123",
            "work_name": "Mi Trabajo",
            "work_contact": "123",
            "work_project": "123",
            "work_type": "123",
            "work_status": "123",
        }
    }
}
DELETE Borrar Trabajo
Borra un elemento existente.
DELETE https://vendomia.app/api/works/{id}
Respuesta de ejemplo
{
    "status": 200,
    "message": "OK.",
    "body": {}
}