Previsualizar el último archivo de una lista
GET
/v1/lists/{id}/previewPara desarrolladores
Descripción
Devuelve las primeras líneas del último archivo subido a la lista, separadas en columnas, y el campo del catálogo que se propone para cada columna. Sirve para declarar las columnas con
PUT /v1/lists/{id}/fields.
Las filas se separan con el mismo separador con el que se importa el archivo, así que cada columna ocupa aquí la posición que tendrá en la importación.
Autenticación
Authorizationbearer tokenheaderobligatorio- API key con scope
list:read. Formato:Bearer <API_KEY>. X-Instance-Slugstringheaderobligatorio- Identificador de su instancia. Ver Autenticación.
Request
Path params:
idintegerobligatorio- Identificador de la lista.
Response
200 OKDevuelve un objeto con los campos que siguen.
import_idintegersiempre presente- Importación cuyo archivo dio la vista previa: la última que se subió.
encodingstringsiempre presente- Codificación detectada en las primeras líneas, con la que se decodificó la vista previa. La importación la vuelve a decidir sobre el archivo completo.
delimiterstringsiempre presente- Separador de columnas: el indicado al subir el archivo o el detectado.
rowsstring[][]siempre presente- Hasta 10 líneas del archivo, cada una separada en columnas. Las líneas vacías se omiten.
columnsobject[]siempre presente- Una por columna de la cabecera, con la propuesta para ella.
positionintegersiempre presente- Posición de la columna, contando desde 1: el
csv_poscon que se declara. headerstringsiempre presente- La cabecera de la columna, tal como viene en el archivo.
field_idinteger | nullsiempre presente- Campo activo del catálogo que coincide con la cabecera.
suggested_fieldobject | nullsiempre presente- Campo nuevo para una columna que no coincide con ninguno:
name,field_keyytype, listos paraPOST /v1/fields.
Errores
| Código | Cuándo |
|---|---|
| 404 | La lista no existe (list_not_found), o todavía no se le ha subido ningún archivo (list_preview_not_found). |
Notas
- Cómo se propone el campo de una columna. Una cabecera coincide con un campo activo
cuando es su
field_keyescrito de otra forma (Correo-Ecoincide conCORREO_E) o su nombre sin distinguir mayúsculas ni tildes (telefonocoincide conTeléfono). No hay coincidencias aproximadas. Un campo se propone para una sola columna. - Una columna sin campo y sin sugerencia (
field_idysuggested_fieldennull) se propone omitida: no tiene cabecera, repite la de otra columna, o coincide con un campo desactivado. Una columna que no se declara no se importa. - Para aplicar la propuesta: cree los campos sugeridos con
POST /v1/fieldsy declare las columnas con supositioncomocsv_pos. - La propuesta se calcula con el catálogo de cada consulta: un campo creado después aparece en la siguiente.
- La vista previa es la del último archivo subido, aunque su importación haya fallado o siga en curso.
- La primera fila de
rowses la cabecera del archivo. - Si el archivo vino comprimido, la vista previa es la de su contenido descomprimido.
Request
curl -X GET "https://$API_HOST/v1/lists/12/preview" \
-H "Authorization: Bearer $API_KEY" \
-H "X-Instance-Slug: $SLUG"
Response
{
"import_id": 17,
"encoding": "cp1252",
"delimiter": ";",
"rows": [
[
"email",
"nombre",
"comuna"
],
[
"Ana Muñoz",
"Ñuñoa"
]
],
"columns": [
{
"position": 1,
"header": "email",
"field_id": 1,
"suggested_field": null
},
{
"position": 2,
"header": "nombre",
"field_id": 3,
"suggested_field": null
},
{
"position": 3,
"header": "comuna",
"field_id": null,
"suggested_field": {
"name": "comuna",
"field_key": "COMUNA",
"type": "text"
}
}
]
}