Skip to content
Mintlify
Mintlify
assistant

Crear mensaje de assistant

POST/v2/assistant/{domain}/message

El endpoint de mensaje de assistant v2 es compatible con AI SDK v5 o superior. Si usas AI SDK v4, utiliza en su lugar el endpoint de mensaje de assistant v1.

El hook useChat del AI SDK de Vercel es la forma recomendada de integrar la assistant API en tu aplicación.

Instalar AI SDK

npm i ai@^6 @ai-sdk/react

Usar el hook

import { useState } from "react";
import { useChat } from "@ai-sdk/react";
import { DefaultChatTransport } from "ai";

function MyComponent({ domain }) {
  const [input, setInput] = useState("");

  const { messages, sendMessage } = useChat({
    transport: new DefaultChatTransport({
      api: `https://api.mintlify.com/discovery/v2/assistant/${domain}/message`,
      headers: {
        Authorization: `Bearer ${process.env.PUBLIC_MINTLIFY_ASSISTANT_KEY}`,
      },
      body: {
        fp: "anonymous",
        retrievalPageSize: 5,
        context: [
          {
            type: "code",
            value: 'const example = "code snippet";',
            elementId: "code-block-1",
          },
        ],
      },
    }),
  });

  return (
    <div>
      {messages.map((message) => (
        <div key={message.id}>
          {message.role === "user" ? "User: " : "Assistant: "}
          {message.parts
            .filter((part) => part.type === "text")
            .map((part) => part.text)
            .join("")}
        </div>
      ))}
      <form
        onSubmit={(e) => {
          e.preventDefault();
          if (input.trim()) {
            sendMessage({ text: input });
            setInput("");
          }
        }}
      >
        <input value={input} onChange={(e) => setInput(e.target.value)} />
        <button type="submit">Send</button>
      </form>
    </div>
  );
}

Configuración obligatoria:

  • transport - Usa DefaultChatTransport para configurar la conexión con la API.
  • body.fp - Identificador de huella digital (usa 'anonymous' o un identificador único de usuario).
  • body.retrievalPageSize - Número de resultados de búsqueda que se usarán (recomendado: 5).

Configuración opcional:

  • body.context - Array de información contextual que se le proporciona al assistant. Cada objeto de contexto contiene:
    • type - Puede ser 'code' o 'textSelection'.
    • value - El fragmento de código o el contenido de texto seleccionado.
    • path (opcional) - Ruta al archivo o a la página de origen.
    • elementId (opcional) - Identificador del elemento de la interfaz de usuario que contiene el contexto.
  • body.currentPath - La ruta de la página que el usuario está viendo en ese momento. Cuando se proporciona, el assistant utiliza este contexto para ofrecer respuestas más relevantes. Longitud máxima: 200 caracteres.

Consulta useChat y Transport en la documentación del AI SDK para más detalles.

La API del assistant tiene los siguientes límites:

  • 10.000 solicitudes por organización de Mintlify por hora
  • 10.000 solicitudes por IP por día
Was this page helpful?Suggest editsRaise issue