Anthropic Messages
Bloques de texto y herramientas que usan el subconjunto documentado del protocolo Messages.
Actualizado el 31 de octubre de 2026 · Contrato 0.2.0
Contrato de solicitud
Proporciona la cabecera anthropic-version actual y max_tokens. Usa texto user/assistant y texto system en el nivel superior. El adaptador también acepta texto con role system dentro de los límites. Este protocolo ofrece modelos de NotHoly, no pesos de Claude.
Herramientas y orden de los resultados
Los bloques tool_use de assistant se emparejan con bloques tool_result de user. Los resultados preceden al nuevo texto del usuario. No se admite texto de assistant después de bloques de uso de herramientas para evitar reordenar el contenido de forma silenciosa. El cliente ejecuta las funciones.
Streaming nativo incremental
El stream envía message_start, eventos content_block_start/delta/stop indexados, message_delta y message_stop cuando la finalización es correcta. El texto y el progreso validado de los argumentos de herramientas llegan durante la generación. Un fallo emite un evento de error nativo, sin un falso evento terminal de éxito. Los acumuladores de los SDK oficiales reconstruyen el resultado.
Funciones no compatibles
Se rechazan imágenes, documentos, controles de caché, controles de thinking, herramientas de servidor, secuencias de parada, muestreo y opciones explícitas de control de paralelismo. El contenido de thinking expuesto por el proveedor, cuando es compatible, usa una firma vacía y x-notholy-thinking-signature: unavailable; no se inventa ninguna firma de integridad de Claude. Solo estos bloques de assistant sin firma pueden enviarse de vuelta. El uso de entrada normal excluye los tokens de lectura de caché.
Ejemplo de solicitud
Usa tu clave de cliente y un modelo publicado. Copiar un ejemplo no envía una solicitud.
curl https://api.notholy.com/v1/messages \
-H "Authorization: Bearer $NOTHOLY_API_KEY" \
-H "anthropic-version: 2026-10-21" \
-H "Content-Type: application/json" \
-d '{
"model": "notholy-pulse",
"messages": [
{
"role": "user",
"content": "Explain least privilege."
}
],
"max_tokens": 256
}'Fixture de contrato HTTP. Las comprobaciones con fixtures son distintas de la disponibilidad de modelos en vivo.
Campos de solicitud
Generado a partir del contrato versionado. Las reglas de refinamiento anteriores siguen aplicándose.
systemstring | array<object>Mostrar variantes aceptadas
Variante 1stringHasta 1.048.576 caracteres.
Variante 2array<object>Hasta 128 elementos.
Mostrar campos del elemento
type"text"obligatoriotextstringobligatorioHasta 1.048.576 caracteres.
modelstringobligatorioHasta 100 caracteres.
max_tokensintegerobligatorioMínimo de 1. Máximo de 512.000.
messagesarray<object>obligatorioHasta 128 elementos. Al menos 1 elemento.
Mostrar campos del elemento
role"user" | "assistant" | "system"obligatoriocontentstring | array<object | object | object | object>obligatorioMostrar variantes aceptadas
Variante 1stringHasta 1.048.576 caracteres.
Variante 2array<object | object | object | object>Hasta 128 elementos. Al menos 1 elemento.
streambooleantoolsarray<object>Hasta 8 elementos.
Mostrar campos del elemento
namestringobligatoriodescriptionstringHasta 1000 caracteres.
input_schemaobjectobligatorioMostrar campos del objeto
type"object"obligatoriopropertiesobjectrequiredarray<string>additionalPropertiesbooleantool_choiceobject | objectMostrar variantes aceptadas
Variante 1objectSe rechazan los campos desconocidos.
Mostrar campos del objeto
type"auto" | "any" | "none"obligatorioVariante 2objectSe rechazan los campos desconocidos.
Mostrar campos del objeto
type"tool"obligatorionamestringobligatorioEsquema de respuesta
idstringobligatoriotype"message"obligatoriorole"assistant"obligatoriocontentarray<object | object | object>obligatoriomodelstringobligatoriostop_reason"end_turn" | "tool_use" | "max_tokens" | nullobligatoriostop_sequencenullobligatoriousageobjectobligatorioSe rechazan los campos desconocidos.
Mostrar campos del objeto
input_tokensintegerobligatorioMínimo de 0. Máximo de 9.007.199.254.740.991.
output_tokensintegerobligatorioMínimo de 0. Máximo de 9.007.199.254.740.991.
cache_creation_input_tokensintegerobligatorioMínimo de 0. Máximo de 9.007.199.254.740.991.
cache_read_input_tokensintegerobligatorioMínimo de 0. Máximo de 9.007.199.254.740.991.