Credenciales
Activa el canal en Studio → Agentes → Canales → API para productos. Cada integración utiliza este par:
AGENT_IDIdentificador público y estable del agente.
API_KEYSecreto
inc_live_…, visible una sola vez.INCEPTIVA_AGENT_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
INCEPTIVA_API_KEY=inc_live_xxxxxxxxxxxxxxxxx
Inicio rápido con TypeScript
import { Inceptiva } from "@inceptiva/sdk";
const client = new Inceptiva({
agentId: process.env.INCEPTIVA_AGENT_ID!,
apiKey: process.env.INCEPTIVA_API_KEY!,
});
const result = await client.invoke({
message: "Analiza esta oportunidad comercial",
});
console.log(result.response);
console.log(result.conversationId);
API HTTP
POST /v1/agents/{AGENT_ID}/responses
curl -X POST "https://api.inceptiva.com/v1/agents/$AGENT_ID/responses" \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"message":"Hola, ¿cómo puedes ayudarme?"}'Continuidad conversacional
Reutiliza el conversationId para mantener contexto.
const first = await client.invoke({ message: "Analiza este lead" });
const next = await client.invoke({
message: "Prepara el siguiente paso",
conversationId: first.conversationId,
});Metadata
Adjunta contexto técnico para identificar el origen de cada llamada.
await client.invoke({
message: "Resume la conversación",
metadata: { source: "crm", recordId: "lead_456" },
});Gestión de errores
import { InceptivaApiError } from "@inceptiva/sdk";
try {
await client.invoke({ message: "Hola" });
} catch (error) {
if (error instanceof InceptivaApiError) {
console.error(error.status, error.detail);
}
}- 401: credenciales incorrectas o canal inactivo.
- 403: IP no autorizada.
- 422: límite comercial agotado o petición inválida.
- 429: límite por minuto superado.
Seguridad
La API_KEY es exclusivamente de servidor a servidor. No la incluyas en React, navegadores, aplicaciones móviles ni repositorios.
- Utiliza variables de entorno.
- Limita las IP o redes CIDR autorizadas.
- Rota inmediatamente una clave expuesta.
- Usa credenciales distintas por agente y entorno.