Addresses
getAddresses
Obtiene una lista de direcciones dependiendo del filtro aplicado
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postAddresses
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteAddresses
Elimina direcciones por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 409 | La dirección, o alguno de sus sistemas o activos, está en uso (OTs, incidencias, mantenimientos, obras o presupuestos); no se borra nada. El mensaje indica qué lo bloquea |
| 501 | Service unavailable. |
Assets
getAssets
Obtiene una lista de activos dependiendo del filtro aplicado
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postAssets
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteAssets
Elimina activos por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 409 | El activo está en uso (OTs, incidencias, mantenimientos o presupuestos); no se borra nada. El mensaje indica qué lo bloquea |
| 501 | Service unavailable. |
Budgets
postBudgetLine
Create or update budget lines. Send a list of line objects.
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 501 | Service unavailable. |
deleteBudgetLine
Soft-delete a budget line.
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 501 | Service unavailable. |
postBudgetOffer
Create or update budget offers. Send a list of offer objects.
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 501 | Service unavailable. |
deleteBudgetOffer
Soft-delete a budget offer. Rejects accepted offers.
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 501 | Service unavailable. |
getBudgets
Returns a paginated list of budgets with blocks, lines, totals, and status history
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postBudgets
Create or update budgets. Send a list of budget objects. Partial update when a record exists.
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 501 | Service unavailable. |
deleteBudgets
Soft-delete a budget with cascading delete of its offers and lines. Rejects budgets with generated work orders.
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 501 | Service unavailable. |
postBudgetState
Change the status of budgets, blocks, or offers. Send a list of state change objects.
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 501 | Service unavailable. |
Clients
getClients
Obtiene una lista de clientes dependiendo del filtro aplicado
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postClients
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteClients
Elimina clientes por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 409 | Cliente o sus usuarios están en uso por otros registros (OTs, incidencias, mantenimientos, obras o presupuestos); no se borra nada. El mensaje indica qué lo bloquea |
| 501 | Service unavailable. |
Report expenses and bonuses
getExpensesAndBonuses
Obtiene datos del informe de gastos y pluses. Cada linea incluye comments (observaciones de la linea de horas, descripcion en los gastos; sustituye a coments, que ya no se devuelve) y validations (una por grupo validador; [] si el modulo de validaciones esta inactivo o la linea no tiene). Cada validacion lleva group, result (PENDING, ACCEPTED o REJECTED), answered_at y validator (id, full_name y erp_id; null mientras nadie haya respondido).
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postExpensesAndBonuses
Actualiza la fecha de exportación de las lineas
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
Expenses and bonuses
deleteExpensesAndBonuses
Elimina gastos y bonificaciones por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
Facilities
getFacilities
Obtiene una lista de sistemas dependiendo del filtro aplicado
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postFacilities
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteFacilities
Elimina sistemas por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 409 | El sistema, sus subsistemas o sus activos están en uso (OTs, incidencias, mantenimientos o presupuestos); no se borra nada. El mensaje indica qué lo bloquea |
| 501 | Service unavailable. |
Incident states
getIncidentStates
Obtiene una lista de estados de incidencia según los filtros aplicados
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postIncidentStates
Crea o actualiza estados de incidencia. Si se pasan id y erp_id, id selecciona el registro y erp_id se actualiza.
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteIncidentStates
Elimina estados de incidencia por ID interno o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 501 | Service unavailable. |
Incident types
getIncidentTypes
Obtiene una lista de tipos de incidencia según los filtros aplicados
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postIncidentTypes
Crea o actualiza tipos de incidencia. Si se pasan id y erp_id, id selecciona el registro y erp_id se actualiza.
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteIncidentTypes
Elimina tipos de incidencia por ID interno o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 501 | Service unavailable. |
Incidents
getIncidents
Obtiene una lista de incidencias según los filtros aplicados
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postIncidents
Crea o actualiza incidencias. Si se pasan id y erp_id, id selecciona el registro y erp_id se actualiza.
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteIncidents
Elimina incidencias por ID interno o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 400 | Bad request. |
| 404 | No records found. |
| 501 | Service unavailable. |
Items
getItems
Obtiene una lista de artículos dependiendo del filtro aplicado
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postItems
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteItems
Elimina artículos por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
Projects
getProjects
Obtiene una lista de projectos dependiendo del filtro aplicado
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postProjects
Actualiza los proyectos en la base de datos. Si el proyecto no existe, lo crea. Si existe, lo actualiza
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteProjects
Elimina proyectos por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
Stock
getStock
Obtiene una lista de stock por almacén/artículo. Requiere módulo de lotes activo.
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postStock
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteStock
Elimina registros de stock por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
Subcontracts
getSubcontracts
Obtiene una lista de subcontratas dependiendo del filtro aplicado
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postSubcontracts
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteSubcontracts
Elimina subcontratas por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
Users
getUsers
Obtiene una lista de usuarios dependiendo del filtro aplicado
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postUsers
Actualiza los usuarios en la base de datos. Si el usuario no existe, lo crea. Si existe, lo actualiza
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteUsers
Elimina usuarios por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
Whare houses
getWhareHouses
Obtiene una lista de almacenes dependiendo del filtro aplicado
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postWhareHouses
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteWhareHouses
Elimina almacenes por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
Work order state
deleteWorkOrderState
Elimina estados de orden de trabajo por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
Work orders
getWorkOrders
Obtiene una lista de OT's dependiendo del filtro aplicado
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postWorkOrders
Crea o actualiza OTs en la base de datos. <br><br><b>Hay 3 operaciones especiales</b> que, si se informan, deben venir acompañadas de un identificador de OT y <b>no pueden combinarse con otros campos</b>: <br>· <b>status_flag</b>: cambia el estado de la OT al indicado. Identificador: id, erp_id o remote_id. <br>· <b>assets</b>: reemplaza los activos asociados a la OT. Array de id_remoto de activo. Identificador: remote_id (= id interno de la OT). <br>· <b>materials</b>: reemplaza las líneas de material de la OT. Array de objetos con remote_id, quantity, planned_units (solo si la OT es de tipo suministro), observations, unit_price. Identificador: remote_id (= id interno de la OT).
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
deleteWorkOrders
Elimina órdenes de trabajo por ID o identificador ERP
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
Validation billable
getValidationBillable
Returns the list of billable work order lines for the given filter. Returns the same columns as the Validations > Exports Excel. The response (data) is a list of rows: work orders not yet valued produce one main row (main = true), and valued ones produce one summary row (first = true) plus one row per line. Fields of each row: date, reference, project, task, client_name, task_type, qty, unit_price, travel, kms, materials, description (invoice text, prefixed with "NUM OT {wo_id}."), total_amount and wo_id. The travel, kms and materials fields exist in the Excel and are always null; qty, unit_price and total_amount are null in the main row and in the summary row. The query does not mark work orders as exported: after importing them, the consumer marks them with POST validationBillable (mark: true, same as the Exports Excel) and then filters with exported: false to avoid receiving them again. The response is paginated by row, 50 per page: use the page query parameter (starts at 0) and keep requesting pages until data comes back empty. The response also carries page (the requested page), page_size (50) and total (number of rows that match the filter): the number of pages is ceil(total / page_size). Empty values are null, never an empty string.
Authorizations
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postValidationBillable
Marks (mark: true) or unmarks (mark: false) the given billable work orders as exported, same as the Validations > Exports Excel. Use it after importing the rows from GET validationBillable; afterwards, GET with exported: false returns only the pending ones.
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
Work order states
getWorkOrderStates
Obtiene una lista de estados de OT dependiendo del filtro aplicado
Authorizations
Query parameters
Body filters
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 501 | Service unavailable. |
postWorkOrderStates
Actualiza los estados de OT de la base de datos. También asignar un estado predetermiando a un estado de OT.
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 404 | No records found. |
| 503 | Service unavailable. |
Internal stack
postInternalStack
Authorizations
Body payload
Content-Type: application/json
Errors
| Status | Meaning |
|---|---|
| 200 | Successful operation. |
| 303 | Forbidden |
| 404 | No records found. |
| 503 | Service unavailable. |