Enviar y Recibir Mensajes
Guía completa para enviar consultas y recibir respuestas de la API
by Arkangel AI Team•1 min read
Aprende a enviar consultas médicas a la API de Arkangel AI y procesar las respuestas.
Endpoint Principal
POST https://api.arkangelai.com/v1/chat
Enviar un Mensaje
Solicitud Básica
curl -X POST https://api.arkangelai.com/v1/chat \
-H "Authorization: Bearer tu_clave_api" \
-H "Content-Type: application/json" \
-d '{
"message": "¿Cuáles son los síntomas de la diabetes tipo 2?"
}'
Parámetros de la Solicitud
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
message |
string | Sí | El mensaje o consulta a enviar |
conversation_id |
string | No | ID para continuar una conversación existente |
context |
object | No | Contexto adicional para la consulta |
language |
string | No | Idioma de respuesta (es, en, fr, pt) |
Ejemplo con Contexto
const response = await fetch('https://api.arkangelai.com/v1/chat', {
method: 'POST',
headers: {
'Authorization': 'Bearer tu_clave_api',
'Content-Type': 'application/json'
},
body: JSON.stringify({
message: '¿Qué tratamientos existen?',
conversation_id: 'conv_abc123',
context: {
patient_age: 45,
condition: 'diabetes'
},
language: 'es'
})
});
Formato de Respuesta
{
"id": "msg_xyz789",
"conversation_id": "conv_abc123",
"message": "Los síntomas comunes de la diabetes tipo 2 incluyen...",
"sources": [
{
"title": "Guía de Diabetes ADA 2024",
"url": "https://example.com/source",
"relevance": 0.95
}
],
"created_at": "2026-01-19T10:30:00Z",
"tokens_used": 150
}
Campos de la Respuesta
| Campo | Tipo | Descripción |
|---|---|---|
id |
string | Identificador único del mensaje |
conversation_id |
string | ID de la conversación |
message |
string | Respuesta generada por la IA |
sources |
array | Fuentes médicas citadas |
created_at |
string | Fecha y hora de creación (ISO 8601) |
tokens_used |
number | Tokens consumidos en esta solicitud |
Conversaciones
Puedes mantener el contexto entre mensajes usando conversation_id:
// Primer mensaje
const response1 = await sendMessage({
message: '¿Qué es la hipertensión?'
});
// Mensaje de seguimiento
const response2 = await sendMessage({
message: '¿Cuáles son los factores de riesgo?',
conversation_id: response1.conversation_id
});
Streaming de Respuestas
Para respuestas en tiempo real, usa el endpoint de streaming:
const response = await fetch('https://api.arkangelai.com/v1/chat/stream', {
method: 'POST',
headers: {
'Authorization': 'Bearer tu_clave_api',
'Content-Type': 'application/json'
},
body: JSON.stringify({
message: 'Explica el proceso de digestión'
})
});
const reader = response.body.getReader();
const decoder = new TextDecoder();
while (true) {
const { done, value } = await reader.read();
if (done) break;
const chunk = decoder.decode(value);
console.log(chunk);
}
Manejo de Errores
try {
const response = await sendMessage({ message: 'Mi consulta' });
if (!response.ok) {
const error = await response.json();
console.error('Error:', error.message);
}
} catch (error) {
console.error('Error de red:', error);
}
Próximos Pasos
- Cargar Archivos - Adjunta documentos a tus consultas
- Revisar Chats - Gestiona tus conversaciones