first commit
This commit is contained in:
403
docs/openapi/schemas/integrations/anthropic/messages.yaml
Normal file
403
docs/openapi/schemas/integrations/anthropic/messages.yaml
Normal file
@@ -0,0 +1,403 @@
|
||||
# Anthropic Integration Messages API Schemas
|
||||
|
||||
AnthropicMessageRequest:
|
||||
type: object
|
||||
required:
|
||||
- model
|
||||
- max_tokens
|
||||
- messages
|
||||
properties:
|
||||
model:
|
||||
type: string
|
||||
description: Model identifier (e.g., claude-3-opus-20240229)
|
||||
example: claude-3-opus-20240229
|
||||
max_tokens:
|
||||
type: integer
|
||||
description: Maximum tokens to generate
|
||||
messages:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/AnthropicMessage'
|
||||
description: List of messages in the conversation
|
||||
system:
|
||||
$ref: '#/AnthropicContent'
|
||||
description: System prompt
|
||||
cache_control:
|
||||
$ref: '../../inference/common.yaml#/CacheControl'
|
||||
description: Automatic caching directives for the whole request
|
||||
metadata:
|
||||
$ref: '#/AnthropicMetadata'
|
||||
stream:
|
||||
type: boolean
|
||||
description: Whether to stream the response
|
||||
temperature:
|
||||
type: number
|
||||
minimum: 0
|
||||
maximum: 1
|
||||
top_p:
|
||||
type: number
|
||||
top_k:
|
||||
type: integer
|
||||
stop_sequences:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
tools:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/AnthropicTool'
|
||||
tool_choice:
|
||||
$ref: '#/AnthropicToolChoice'
|
||||
mcp_servers:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/AnthropicMCPServer'
|
||||
description: MCP servers configuration (requires beta header)
|
||||
thinking:
|
||||
$ref: '#/AnthropicThinking'
|
||||
output_format:
|
||||
type: object
|
||||
description: Structured output format (requires beta header)
|
||||
# Bifrost-specific
|
||||
fallbacks:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
|
||||
AnthropicMessage:
|
||||
type: object
|
||||
required:
|
||||
- role
|
||||
- content
|
||||
properties:
|
||||
role:
|
||||
$ref: './common.yaml#/AnthropicMessageRole'
|
||||
content:
|
||||
$ref: '#/AnthropicContent'
|
||||
|
||||
AnthropicContent:
|
||||
oneOf:
|
||||
- type: string
|
||||
- type: array
|
||||
items:
|
||||
$ref: '#/AnthropicContentBlock'
|
||||
description: Content - can be a string or array of content blocks
|
||||
|
||||
AnthropicContentBlock:
|
||||
type: object
|
||||
required:
|
||||
- type
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum:
|
||||
- text
|
||||
- image
|
||||
- document
|
||||
- tool_use
|
||||
- server_tool_use
|
||||
- tool_result
|
||||
- web_search_result
|
||||
- mcp_tool_use
|
||||
- mcp_tool_result
|
||||
- thinking
|
||||
- redacted_thinking
|
||||
text:
|
||||
type: string
|
||||
description: For text content
|
||||
thinking:
|
||||
type: string
|
||||
description: For thinking content
|
||||
signature:
|
||||
type: string
|
||||
description: For signature content
|
||||
data:
|
||||
type: string
|
||||
description: For data content (encrypted data for redacted thinking)
|
||||
tool_use_id:
|
||||
type: string
|
||||
description: For tool_result content
|
||||
id:
|
||||
type: string
|
||||
description: For tool_use content
|
||||
name:
|
||||
type: string
|
||||
description: For tool_use content
|
||||
input:
|
||||
type: object
|
||||
description: For tool_use content
|
||||
server_name:
|
||||
type: string
|
||||
description: For mcp_tool_use content
|
||||
content:
|
||||
$ref: '#/AnthropicContent'
|
||||
description: For tool_result content
|
||||
source:
|
||||
$ref: '#/AnthropicSource'
|
||||
description: For image/document content
|
||||
cache_control:
|
||||
$ref: '../../inference/common.yaml#/CacheControl'
|
||||
citations:
|
||||
$ref: '#/AnthropicCitationsConfig'
|
||||
description: For document content
|
||||
context:
|
||||
type: string
|
||||
description: For document content
|
||||
title:
|
||||
type: string
|
||||
description: For document content
|
||||
|
||||
AnthropicSource:
|
||||
type: object
|
||||
required:
|
||||
- type
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum: [base64, url, text, content_block]
|
||||
media_type:
|
||||
type: string
|
||||
description: MIME type (e.g., image/jpeg, application/pdf)
|
||||
data:
|
||||
type: string
|
||||
description: Base64-encoded data (for base64 type)
|
||||
url:
|
||||
type: string
|
||||
description: URL (for url type)
|
||||
|
||||
AnthropicCitationsConfig:
|
||||
type: object
|
||||
properties:
|
||||
enabled:
|
||||
type: boolean
|
||||
|
||||
AnthropicMetadata:
|
||||
type: object
|
||||
properties:
|
||||
user_id:
|
||||
type: string
|
||||
|
||||
AnthropicThinking:
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum: [enabled, disabled]
|
||||
budget_tokens:
|
||||
type: integer
|
||||
|
||||
AnthropicTool:
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum:
|
||||
- custom
|
||||
- bash_20250124
|
||||
- computer_20250124
|
||||
- computer_20251124
|
||||
- code_execution_20250522
|
||||
- code_execution_20250825
|
||||
- code_execution_20260120
|
||||
- text_editor_20250124
|
||||
- text_editor_20250429
|
||||
- text_editor_20250728
|
||||
- web_search_20250305
|
||||
- web_search_20260209
|
||||
- web_fetch_20250910
|
||||
- web_fetch_20260209
|
||||
- web_fetch_20260309
|
||||
- memory_20250818
|
||||
- tool_search_tool_bm25
|
||||
- tool_search_tool_bm25_20251119
|
||||
- tool_search_tool_regex
|
||||
- tool_search_tool_regex_20251119
|
||||
name:
|
||||
type: string
|
||||
description: Tool name (for custom tools)
|
||||
description:
|
||||
type: string
|
||||
input_schema:
|
||||
type: object
|
||||
description: JSON Schema for tool input
|
||||
cache_control:
|
||||
$ref: '../../inference/common.yaml#/CacheControl'
|
||||
# Computer use tool settings
|
||||
display_width_px:
|
||||
type: integer
|
||||
display_height_px:
|
||||
type: integer
|
||||
display_number:
|
||||
type: integer
|
||||
enable_zoom:
|
||||
type: boolean
|
||||
# Web search settings
|
||||
max_uses:
|
||||
type: integer
|
||||
allowed_domains:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
blocked_domains:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
user_location:
|
||||
$ref: '#/AnthropicToolWebSearchUserLocation'
|
||||
|
||||
AnthropicToolWebSearchUserLocation:
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum: [approximate]
|
||||
city:
|
||||
type: string
|
||||
country:
|
||||
type: string
|
||||
timezone:
|
||||
type: string
|
||||
|
||||
AnthropicToolChoice:
|
||||
oneOf:
|
||||
- type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum: [auto, any, tool, none]
|
||||
name:
|
||||
type: string
|
||||
description: Required when type is 'tool'
|
||||
disable_parallel_tool_use:
|
||||
type: boolean
|
||||
|
||||
AnthropicMCPServer:
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
url:
|
||||
type: string
|
||||
authorization_token:
|
||||
type: string
|
||||
description: Authorization token for the MCP server
|
||||
tool_configuration:
|
||||
$ref: '#/AnthropicMCPToolConfig'
|
||||
|
||||
AnthropicMCPToolConfig:
|
||||
type: object
|
||||
properties:
|
||||
enabled:
|
||||
type: boolean
|
||||
allowed_tools:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
|
||||
# Response types
|
||||
AnthropicMessageResponse:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
default: message
|
||||
role:
|
||||
type: string
|
||||
default: assistant
|
||||
content:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/AnthropicContentBlock'
|
||||
model:
|
||||
type: string
|
||||
stop_reason:
|
||||
type: string
|
||||
enum: [end_turn, max_tokens, stop_sequence, tool_use, pause_turn, refusal, model_context_window_exceeded, null]
|
||||
stop_sequence:
|
||||
type: string
|
||||
nullable: true
|
||||
usage:
|
||||
$ref: '#/AnthropicUsage'
|
||||
|
||||
AnthropicUsage:
|
||||
type: object
|
||||
properties:
|
||||
input_tokens:
|
||||
type: integer
|
||||
output_tokens:
|
||||
type: integer
|
||||
cache_creation_input_tokens:
|
||||
type: integer
|
||||
cache_read_input_tokens:
|
||||
type: integer
|
||||
cache_creation:
|
||||
$ref: '#/AnthropicUsageCacheCreation'
|
||||
|
||||
AnthropicUsageCacheCreation:
|
||||
type: object
|
||||
properties:
|
||||
ephemeral_5m_input_tokens:
|
||||
type: integer
|
||||
ephemeral_1h_input_tokens:
|
||||
type: integer
|
||||
|
||||
# Stream event types
|
||||
AnthropicStreamEvent:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
enum:
|
||||
- message_start
|
||||
- content_block_start
|
||||
- content_block_delta
|
||||
- content_block_stop
|
||||
- message_delta
|
||||
- message_stop
|
||||
- ping
|
||||
- error
|
||||
message:
|
||||
$ref: '#/AnthropicMessageResponse'
|
||||
index:
|
||||
type: integer
|
||||
content_block:
|
||||
$ref: '#/AnthropicContentBlock'
|
||||
delta:
|
||||
$ref: '#/AnthropicStreamDelta'
|
||||
usage:
|
||||
$ref: '#/AnthropicUsage'
|
||||
error:
|
||||
$ref: '#/AnthropicStreamError'
|
||||
|
||||
AnthropicStreamDelta:
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum: [text_delta, input_json_delta, thinking_delta, signature_delta]
|
||||
text:
|
||||
type: string
|
||||
partial_json:
|
||||
type: string
|
||||
thinking:
|
||||
type: string
|
||||
signature:
|
||||
type: string
|
||||
stop_reason:
|
||||
type: string
|
||||
stop_sequence:
|
||||
type: string
|
||||
|
||||
AnthropicStreamError:
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
message:
|
||||
type: string
|
||||
Reference in New Issue
Block a user