FluentaAPI
Analytics

Get efficiency

getEfficiencyPermission read

«Eficiencia» over a range of plant days: units made against the meta, per day, or per day and módulo, operario or puesto.

GET/v1/external/organizations/{organizationId}/analytics/efficiency

Groupings: day, module, operator, operation. Every puesto counts. The figure for each day, and for a módulo within it, equals Reportes › Eficiencia for that day, rounded as there; an operario’s is the «Clasificación»’s; a puesto’s is its «reporte por operación» for the day — with «El operario escoge la referencia» on, totalled by subproceso as that report does: complete units, the sum of each hour’s expected units, and every marca over that sum. Filters: one of moduleId, operatorId, operationId narrows the answer to that one, each row still its dashboard figure; with groupBy=day the rows are its own figure of each day and name it. Without a filter the answer is the whole plant’s.

Authorization

apiToken
AuthorizationBearer <token>

An API token created in Configuración › Tokens de API, or a connected app’s access token

In: header

Path Parameters

organizationId*number

Query Parameters

from*string

First plant day of the range, YYYY-MM-DD on the plant's clock, included. At most 92 days from from to to.

Match^\d{4}-\d{2}-\d{2}$
Lengthlength <= 10
to*string

Last plant day of the range, YYYY-MM-DD on the plant’s clock, included; not before from.

Match^\d{4}-\d{2}-\d{2}$
Lengthlength <= 10
groupBy?string

One row per day, or per day and módulo / operario / puesto (operation) / referencia / categoría. Each figure answers the groupings the dashboard shows it by; any other is a 400 GROUP_BY_UNSUPPORTED that lists the ones it has.

Default"day"

Value in

  • "day"
  • "module"
  • "operator"
  • "operation"
  • "reference"
  • "category"
page?number

1-based page; 100 rows per page, by day then group.

Range1 <= value <= 1000000
Default1
moduleId?integer

Only this módulo. With groupBy=day (or none), its own figure of each day, each row naming it; with module, its rows; with operation, the puestos whose day is filed under it; and, for production, with reference or category too. One filter per request; a second one, or a grouping the filter does not answer, is a 400 FILTER_UNSUPPORTED. An id of another organization is a 404 MODULE_NOT_FOUND.

Range1 <= value <= 2147483647
operatorId?integer

Only this operario: their own figure of each day (groupBy=day, or none) or their rows (groupBy=operator), as the «Clasificación» counts them. Efficiency and billing; production has no operario (400 FILTER_UNSUPPORTED). An id of another organization is a 404 OPERATOR_NOT_FOUND.

Range1 <= value <= 2147483647
operationId?integer

Only this puesto: its own figure of each day (groupBy=day, or none) or its rows (groupBy=operation), as its «reporte por operación» totals them. Efficiency and billing; production has no puesto (400 FILTER_UNSUPPORTED). An id of another organization is a 404 OPERATION_NOT_FOUND.

Range1 <= value <= 2147483647

Response Body

application/json

application/json

curl -X GET "https://api.fluenta.io/v1/external/organizations/0/analytics/efficiency?from=2026-10-01&to=2026-10-31" \  -H "Authorization: Bearer fluenta_live_XXXX"
{  "from": "string",  "to": "string",  "groupBy": "day",  "page": 0,  "pageSize": 0,  "total": 0,  "items": [    {      "day": "string",      "module": {        "id": 0,        "name": "string"      },      "operator": {        "id": 0,        "name": "string"      },      "operation": {        "id": 0,        "name": "string",        "moduleId": 0,        "moduleName": "string"      },      "units": 0,      "goal": 0,      "efficiency": 0    }  ]}