Luna Health API / Referencia de la API / Obtener pruebas de laboratorio de un usuario Obtener pruebas de laboratorio de un usuario GET /lab-tests
Recupera una lista paginada de pruebas de laboratorio para un paciente específico con filtrado de fecha opcional. Incluye metadatos de prueba, información del proveedor y detalles de estado. Los resultados se pueden filtrar por rango de fechas y ordenar por varios criterios.
Ejemplos de código Node.js const fetch = require('node-fetch');
async function llamarApi() {
const claveApi = 'YOUR_API_KEY';
const patientId = 'su-patientId';
const page = 'su-page';
const limit = 'su-limit';
const start_date = 'su-start_date';
const end_date = 'su-end_date';
const queryString = new URLSearchParams({
patientId: patientId,
page: page,
limit: limit,
start_date: start_date,
end_date: end_date
}).toString();
const url = `https://account.lunahealth.app/api/lab-tests` + (queryString ? `?${queryString}` : '');
try {
const response = await fetch(url, {
method: 'GET',
headers: {
'Authorization': `Bearer ${claveApi}`,
'Content-Type': 'application/json'
}
});
if (!response.ok) {
throw new Error(`API error: ${response.status}`);
}
const data = await response.json();
console.log(data);
return data;
} catch (error) {
console.error('Error al llamar a la API:', error);
throw error;
}
}
llamarApi();Python import requests
def llamarApi():
claveApi = 'YOUR_API_KEY'
url = 'https://account.lunahealth.app/api/lab-tests'
headers = {
'Authorization': f'Bearer {claveApi}',
'Content-Type': 'application/json'
}
params = {
'patientId': 'su-patientId',
'page': 'su-page',
'limit': 'su-limit',
'start_date': 'su-start_date',
'end_date': 'su-end_date'
}
try:
response = requests.get(
url,
headers=headers,
params=params
)
response.raise_for_status()
data = response.json()
print(data)
return data
except requests.exceptions.RequestException as e:
print(f'Error al llamar a la API: {e}')
raise
llamarApi()Parámetros Nombre Ubicación Tipo Requerido Descripción patientIdquery string Sí ID del paciente para filtrar los resultados pagequery number No Número de página (indexado en 0) limitquery number No Número de elementos por página start_datequery string No Fecha de inicio opcional para filtrar (formato ISO) end_datequery string No Fecha de fin opcional para filtrar (formato ISO)
Respuestas Estado Descripción 200Respuesta exitosa 400Datos de entrada no válidos 401Autorización no proporcionada 403Acceso insuficiente 404No encontrado 500Error interno del servidor
200 — Respuesta exitosaCampos de la respuesta Nombre Tipo Requerido Descripción itemsarray<object> Sí — metaobject Sí —
Ejemplo de respuesta {
"items": [
{
"id": "string",
"name": "string",
"status": "string",
"uploaded_at": "string",
"file_count": 0,
"biomarker_count": 0,
"created_at": "string"
}
],
"meta": {
"totalCount": 0,
"currentPage": 0,
"totalPages": 0
}
}400 — Datos de entrada no válidosCampos de la respuesta Nombre Tipo Requerido Descripción messagestring Sí The error message codestring Sí The error code issuesarray<object> No An array of issues that were responsible for the error
Ejemplo de respuesta {
"code": "BAD_REQUEST",
"message": "Invalid input data",
"issues": []
}401 — Autorización no proporcionadaCampos de la respuesta Nombre Tipo Requerido Descripción messagestring Sí The error message codestring Sí The error code issuesarray<object> No An array of issues that were responsible for the error
Ejemplo de respuesta {
"code": "UNAUTHORIZED",
"message": "Authorization not provided",
"issues": []
}403 — Acceso insuficienteCampos de la respuesta Nombre Tipo Requerido Descripción messagestring Sí The error message codestring Sí The error code issuesarray<object> No An array of issues that were responsible for the error
Ejemplo de respuesta {
"code": "FORBIDDEN",
"message": "Insufficient access",
"issues": []
}404 — No encontradoCampos de la respuesta Nombre Tipo Requerido Descripción messagestring Sí The error message codestring Sí The error code issuesarray<object> No An array of issues that were responsible for the error
Ejemplo de respuesta {
"code": "NOT_FOUND",
"message": "Not found",
"issues": []
}500 — Error interno del servidorCampos de la respuesta Nombre Tipo Requerido Descripción messagestring Sí The error message codestring Sí The error code issuesarray<object> No An array of issues that were responsible for the error
Ejemplo de respuesta {
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}Abrir en la referencia interactiva →