Reporte de Formularios Avanzados
Envíos de formularios digitales con parámetros dinámicos — requiere un form_id específico.
GET
/apidev/v1/reports/gt/advanced-formsPermisoAPICLI_RPTGT_FORMAVANZADO
Límite de solicitudes10 req/min
Caché300s
Rango máximo31 días
Resumen
Devuelve los envíos de formularios digitales de un formulario específico (form_id es requerido) dentro de un rango de fechas, con los valores de los campos dinámicos capturados en cada envío junto con el cliente, la cuenta y la tarea relacionados. Usá columns para seleccionar qué campos devolver, group_by para agregar por cliente, cuenta, tarea o fecha, y los indicadores de detalle y totales para controlar las filas de resumen.
Solicitud
Encabezados de la solicitud
Every request to a protected endpoint requires these headers:
| Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer token obtained from the Login endpoint. Format: Bearer <token> |
X-API-Key | Yes | Company integration key provided during onboarding. Format: gtk_xxx... |
tenant | Yes | Your assigned tenant domain (default: geotareas.com) — always send your assigned tenant |
Content-Type | Conditional | application/json — required for POST and PUT requests |
Parámetros de consulta
| Parámetro | Tipo | Requerido | Por defecto | Descripción |
|---|---|---|---|---|
startdate | string | Sí | — | Fecha-hora de inicio en ISO 8601 (ej. 2026-03-01T00:00:00). |
enddate | string | Sí | — | Fecha-hora de fin en ISO 8601. Rango máximo 31 días desde startdate. |
form_id | string | Sí | — | El formulario a consultar. |
devices | string | No | — | IDs de dispositivos separados por comas. Máximo 500. |
drivers | string | No | — | IDs de conductores separados por comas. Máximo 500. |
service_types | string | No | — | IDs de tipos de servicio separados por comas. Máximo 100. |
causes | string | No | — | IDs de causas separados por comas. Máximo 100. |
providers | string | No | — | IDs de proveedores separados por comas. Máximo 100. |
provider_types | string | No | — | IDs de tipos de proveedor separados por comas. Máximo 50. |
client_id | string | No | — | Filtrar por ID de cliente. |
account_id | string | No | — | Filtrar por ID de cuenta. |
columns | string | No | — | Nombres de columnas a incluir, separados por comas. Máximo 500 caracteres. |
group_by | enum | No | — | Modo de agrupación: client, account, task, date. |
detail_group_by | enum | No | — | Agrupación de detalle: number, date. |
include_details | boolean | No | — | Incluir filas de detalle. |
include_totals | boolean | No | — | Incluir fila de totales. |
limit | integer | No | 25 | Cantidad de registros por página (1–100). |
offset | integer | No | 0 | Cantidad de registros a omitir para la paginación. |
Ejemplos de código
- cURL
- JavaScript
- Python
curl -s -H "Authorization: Bearer $TOKEN" \
-H "X-API-Key: $APIKEY" \
-H "tenant: $TENANT" \
"https://$TENANT/apidev/v1/reports/gt/advanced-forms?startdate=2026-03-01T00:00:00&enddate=2026-03-15T23:59:59&form_id=104820579700&limit=25"
const res = await fetch(
`https://${TENANT}/apidev/v1/reports/gt/advanced-forms?startdate=2026-03-01T00:00:00&enddate=2026-03-15T23:59:59&form_id=104820579700&limit=25`,
{
headers: {
'Authorization': `Bearer ${TOKEN}`,
'X-API-Key': APIKEY,
'tenant': TENANT,
},
}
);
const data = await res.json();
import requests
response = requests.get(
f"https://{TENANT}/apidev/v1/reports/gt/advanced-forms",
headers={"Authorization": f"Bearer {TOKEN}", "X-API-Key": APIKEY, "tenant": TENANT},
params={"startdate": "2026-03-01T00:00:00", "enddate": "2026-03-15T23:59:59", "form_id": "104820579700", "limit": 25},
)
data = response.json()
Respuesta
Campos de la respuesta
| Campo | Tipo | Descripción |
|---|---|---|
form_id | string | Identificador del formulario. |
account_id | string | null | Identificador de la cuenta. |
account_name | string | Nombre de la cuenta. |
client_id | string | null | Identificador del cliente. |
client_name | string | Nombre del cliente. |
task_number | string | null | Número de tarea. |
task_date | string | null | Fecha de la tarea. |
parameters | array | Valores de los campos dinámicos del formulario. |
Campos del arreglo Parameters
| Campo | Tipo | Descripción |
|---|---|---|
tab_id | string | null | Identificador de la pestaña. |
param_id | string | null | Identificador del parámetro. |
param_name | string | Nombre del parámetro. |
value_string | string | null | Valor de texto. |
value_number | number | null | Valor numérico. |
Ejemplo de respuesta
{
"success": true,
"data": [
{
"form_id": "104820579700",
"account_id": "104820579800",
"account_name": "Client Corp",
"client_id": "104820579900",
"client_name": "Client Corp S.A.",
"task_number": "104820580001",
"task_date": "2026-03-05",
"parameters": [
{
"tab_id": "1",
"param_id": "10",
"param_name": "Condition",
"value_string": "Good",
"value_number": null
},
{
"tab_id": "1",
"param_id": "11",
"param_name": "Score",
"value_string": null,
"value_number": 85
}
]
}
],
"meta": {
"total": 1,
"limit": 25,
"offset": 0
}
}
Errores
| Código | HTTP | Descripción |
|---|---|---|
VALIDATION_ERROR | 400 | Parámetros inválidos: faltan fechas, falta form_id, rango > 31 días. |
UNAUTHORIZED | 401 | tenant / Authorization / X-API-Key faltante, inválido o expirado |
FORBIDDEN | 403 | El usuario no tiene el permiso requerido. |
RATE_LIMITED | 429 | Se superaron las 10 req/min. |
INTERNAL_ERROR | 500 | Error inesperado del servidor. |