samples
En este recurso podemos localizar las muestras y trabajar con ellas. Podremos marcarlas como leídas cuando ya las hayamos importado a nuestro sistema para que no se nos vuelvan a listar en un futuro.
Métodos disponibles
Método | URL | Descripción |
---|---|---|
GET | /api/samples | Listado de las muestras no leídas |
GET | /api/samples/<int:id> | Detalle de una muestra |
PUT | /api/samples/<int:id> | Marcar como leída o no una muestra |
Listado de las muestras no leídas
Obtenemos el listado de nuestras muestras que no estén marcadas como leídas y por tanto deben ser nuevas que aun no hemos importado a nuestra base de datos.
Datos de la respuesta
Obtenemos una lista de objetos JSON del cual sus parámetros son:
Nombre | Tipo | Descripción |
---|---|---|
id | Long | Identificador único de la muestra |
codigo | String | Código de seguimiento de la muestra en ainia |
fecha_recepcion | Date | La fecha en que las muestras llegaron a ainia, formato iso8601 |
fecha_toma | Date | Fecha en que se tomaron las muestras para enviar a analizar, formato iso8601 |
fecha_entrega | Date | La fecha de puesta del informe a disposición del cliente, formato iso8601 |
fecha_entrega_prevista | Date | En qué fecha tenemos previsto entregar el informe, formato iso8601 |
producto | String | Descripción del producto analizado |
cod_producto | String | Código del producto proporcionado por el cliente |
acta | String | Número de acta en las inspecciones de sanidad |
revisar_lmr | Boolean | Algún resultado sufre una desviación, se aconseja revisar los límites legales |
leida | Boolean | Indica si la muestra está marcada como leída o no |
url_resultados | String | URL donde obtener los resultados de esta muestra |
url_informe_analitico | String | URL para descargar el informe analítico donde se engloba esta muestra |
Ejemplo mediante consola
Tras autenticarnos y con el token en la variable de entorno ACCESS
$ curl -H "Authorization: Bearer $ACCESS" https://api-ainialab.ainia.es/api/samples
[
{
"revisar_lmr": false,
"fecha_recepcion": "2017-10-11T11:52:00",
"producto": "Chocolate",
"codigo": "17-L001234-01",
"fecha_toma": null,
"url_resultados": "https://api-ainialab.ainia.es/api/samples/154767/results",
"fecha_entrega": "2017-10-15T12:36:17.903000",
"leida": false,
"url_informe_analitico": "https://api-ainialab.ainia.es/api/samples/154767/reports",
"acta": null,
"cod_producto": null,
"id": 154767,
"fecha_entrega_prevista": "2017-10-16T00:00:00"
},
{
"revisar_lmr": true,
"fecha_recepcion": "2017-10-12T11:53:00",
"producto": "Harina",
"codigo": "17-L001235-01",
"fecha_toma": null,
"url_resultados": "https://api-ainialab.ainia.es/api/samples/154768/results",
"fecha_entrega": "2017-10-17T12:36:01.012000",
"leida": false,
"url_informe_analitico": "https://api-ainialab.ainia.es/api/samples/154768/reports",
"acta": null,
"cod_producto": null,
"id": 154768,
"fecha_entrega_prevista": "2017-10-17T00:00:00"
}
]
Ejemplo con Python
import requests
user = 'prueba'
apikey = 'test'
# Autenticación
r = requests.post('https://api-ainialab.ainia.es/auth',
json={"username":user, "apikey":apikey})
json_response = r.json()
token = json_response["jwt"]
# Listamos muestras
cabeceras = {'Authorization': 'Bearer {}'.format(token)}
r = requests.get('https://api-ainialab.ainia.es/api/samples',
headers=cabeceras)
json_response = r.json()
for muestra in json_response:
print('{codigo} - {producto}'.format(codigo=muestra['codigo'], producto=muestra['producto']))
Detalle de una muestra
Para obtener todos los campos asociados a una muestra
Datos de la respuesta
Los mismos campos que en listado y además:
Nombre | Tipo | Descripción |
---|---|---|
fecha_caducidad | Date | La fecha de caducidad del producto, formato iso8601 |
marca | String | Marca del producto comercializado |
proveedor | String | Nombre del proveedor del producto |
cod_proveedor | String | Código identificativo del proveedor |
tipo_envase | String | Formato en el que viene envasada la muestra |
cantidad | String | Cantidad de muestra recibida |
lote | String | Número de lote del producto |
lugar_compra | String | Lugar donde se hizo la compra o recogió el producto |
temperatura | String | Temperatura de muestro |
Ejemplo mediante consola
Tras autenticarnos y con el token en la variable de entorno ACCESS
$ curl -H "Authorization: Bearer $ACCESS" https://api-ainialab.ainia.es/api/samples/154768
{
"cod_producto": null,
"fecha_recepcion": "2017-10-12T11:53:00",
"lugar_compra": null,
"temperatura": null,
"codigo": "17-L001235-01",
"tipo_envase": null,
"url_resultados": "https://api-ainialab.ainia.es/api/samples/154768/results",
"leida": false,
"revisar_lmr": true,
"lote": null,
"cantidad": null,
"fecha_caducidad": null,
"proveedor": null,
"cod_proveedor": null,
"fecha_toma": null,
"producto": "Harina",
"marca": null,
"fecha_entrega": "2017-10-17T12:36:01.012000",
"id": 154768,
"acta": null,
"fecha_entrega_prevista": "2017-10-17T00:00:00",
"url_informe_analitico": "https://api-ainialab.ainia.es/api/samples/154768/reports"
}
Ejemplo con Python
import requests
user = 'prueba'
apikey = 'test'
# Autenticación
r = requests.post('https://api-ainialab.ainia.es/auth',
json={"username":user, "apikey":apikey})
json_response = r.json()
token = json_response["jwt"]
# Obtener detalle
idmuestra = '154768'
cabeceras = {'Authorization': 'Bearer {}'.format(token)}
r = requests.get('https://api-ainialab.ainia.es/api/samples/{}'.format(idmuestra),
headers=cabeceras)
muestra = r.json()
print('{codigo} - {producto} - {proveedor}'.format(codigo=muestra['codigo'],
producto=muestra['producto'],
proveedor=muestra['proveedor']))
Marcar como leída o no una muestra
Una vez obtenida la información de la muestra y almacenada en nuestra base de datos, procederemos a marcarla como leída para que no sea listada la próxima vez que accedamos a recuperar los análisis.
Parámetros de la petición
Nombre | Tipo | Descripción |
---|---|---|
leida | Boolean | Indicaremos "true" o "false" para marcarla como leída o no respectivamente |
Datos de la respuesta
Obtendremos el detalle de la muestra, tras la actualización del campo leída
Ejemplo mediante consola
$ curl -H "Content-Type: application/json" -X PUT -H "Authorization: Bearer $ACCESS" https://api-ainialab.ainia.es/api/samples/154768 -d '{"leida":"true"}'
{
"cod_producto": null,
"fecha_recepcion": "2017-10-12T11:53:00",
"lugar_compra": null,
"temperatura": null,
"codigo": "17-L001235-01",
"tipo_envase": null,
"url_resultados": "https://api-ainialab.ainia.es/api/samples/154768/results",
"leida": true,
"revisar_lmr": true,
"lote": null,
"cantidad": null,
"fecha_caducidad": null,
"proveedor": null,
"cod_proveedor": null,
"fecha_toma": null,
"producto": "Harina",
"marca": null,
"fecha_entrega": "2017-10-17T12:36:01.012000",
"id": 154768,
"acta": null,
"fecha_entrega_prevista": "2017-10-17T00:00:00",
"url_informe_analitico": "https://api-ainialab.ainia.es/api/samples/154768/reports"
}
Ejemplo con Python
import requests
user = 'prueba'
apikey = 'test'
# Autenticación
r = requests.post('https://api-ainialab.ainia.es/auth',
json={"username":user, "apikey":apikey})
json_response = r.json()
token = json_response["jwt"]
# Obtener detalle
idmuestra = '154768'
cabeceras = {'Authorization': 'Bearer {}'.format(token)}
r = requests.get('https://api-ainialab.ainia.es/api/samples/{}'.format(idmuestra),
headers=cabeceras,
data={'leida':'true'})
muestra = r.json()
print('{codigo} - {producto} - {leida}'.format(codigo=muestra['codigo'],
producto=muestra['producto'],
leida=muestra['leida']))