Skip to content

Variable: ResolveRouteInputSchema

const ResolveRouteInputSchema: ZodObject<{ clientProtocol: ZodEnum<{ anthropic-messages: "anthropic-messages"; openai-chat: "openai-chat"; openai-embeddings: "openai-embeddings"; openai-responses: "openai-responses"; }>; features: ZodObject<{ background: ZodBoolean; customTools: ZodBoolean; parallelTools: ZodBoolean; previousResponse: ZodBoolean; reasoning: ZodBoolean; storage: ZodBoolean; structuredOutput: ZodBoolean; tools: ZodBoolean; unsupportedOpenResponsesTools: ZodBoolean; webSearch: ZodBoolean; }, $strip>; originator: ZodOptional<ZodString>; requestedModel: ZodString; target: ZodObject<{ aliases: ZodArray<ZodString>; capabilities: ZodObject<{ aiGatewayCodex: ZodBoolean; anthropic: ZodBoolean; chat: ZodBoolean; customTools: ZodBoolean; embeddings: ZodBoolean; openResponses: ZodBoolean; parallelTools: ZodBoolean; reasoning: ZodBoolean; responses: ZodBoolean; streaming: ZodBoolean; structuredOutput: ZodBoolean; tools: ZodBoolean; webSearch: ZodBoolean; }, $strip>; displayName: ZodString; endpoint: ZodOptional<ZodObject<{ class: ZodOptional<ZodEnum<{ chat-balanced: "chat-balanced"; chat-fast: "chat-fast"; chat-thinking: "chat-thinking"; embedding: "embedding"; }>>; description: ZodOptional<ZodString>; dimension: ZodOptional<ZodNumber>; displayName: ZodOptional<ZodString>; family: ZodOptional<ZodString>; modelServiceName: ZodOptional<ZodString>; name: ZodString; profile: ZodOptional<ZodObject<{ cost: ZodOptional<…>; quality: ZodOptional<…>; speed: ZodOptional<…>; }, $strip>>; reasoningEfforts: ZodOptional<ZodArray<ZodEnum<{ high: …; low: …; max: …; medium: …; minimal: …; none: …; xhigh: …; }>>>; serviceNames: ZodOptional<ZodRecord<ZodString, ZodString>>; state: ZodOptional<ZodString>; status: ZodOptional<ZodObject<{ deprecated: ZodDefault<…>; }, $strip>>; supportsTools: ZodOptional<ZodBoolean>; task: ZodOptional<ZodString>; }, $strip>>; family: ZodOptional<ZodString>; id: ZodString; modelServiceName: ZodOptional<ZodString>; reasoningEfforts: ZodArray<ZodEnum<{ high: "high"; low: "low"; max: "max"; medium: "medium"; minimal: "minimal"; none: "none"; xhigh: "xhigh"; }>>; }, $strip>; }, $strip>

Inputs required to select one deterministic gateway route.

  • clientProtocol: Protocol the caller used.
  • requestedModel: Model id or alias requested by the caller.
  • originator (optional): Optional Originator header, such as codex.
  • features: Request features that constrain routing.
  • features.background: True when the client requested a background run.
  • features.customTools: True when the request includes custom tools.
  • features.parallelTools: True when the request asks for parallel tool calls.
  • features.previousResponse: True when the request continues a stored response.
  • features.reasoning: True when the request sets reasoning effort.
  • features.storage: True when the request asks the provider to persist the response.
  • features.structuredOutput: True when the request requires structured output.
  • features.tools: True when the request includes tools.
  • features.unsupportedOpenResponsesTools: True when tools cannot ride the Open Responses fast path.
  • features.webSearch: True when the request includes web search.
  • target: Discovered model selected for this request.
  • target.id: Canonical model id advertised by the gateway.
  • target.aliases: Additional names that resolve to this model.
  • target.displayName: Human-readable label shown to clients.
  • target.family (optional): Detected model family used for grouping.
  • target.modelServiceName (optional): Canonical model-service name for metadata lookup.
  • target.endpoint (optional): Normalized serving endpoint backing this target, when discovered.
  • target.endpoint.name: Serving endpoint invoke id.
  • target.endpoint.displayName (optional): Human-readable label when the workspace provides one.
  • target.endpoint.family (optional): Detected model family used for grouping and sort order.
  • target.endpoint.task (optional): Databricks serving task reported for the endpoint.
  • target.endpoint.state (optional): Serving endpoint lifecycle state.
  • target.endpoint.description (optional): Workspace-provided endpoint description.
  • target.endpoint.supportsTools (optional): True when the endpoint accepts tool calls.
  • target.endpoint.profile (optional): Relative quality, speed, and cost scores.
  • target.endpoint.profile.quality (optional): Relative quality score for ranking.
  • target.endpoint.profile.speed (optional): Relative speed score for ranking.
  • target.endpoint.profile.cost (optional): Relative cost score for ranking.
  • target.endpoint.class (optional): Intent-oriented class assigned to this endpoint.
  • target.endpoint.serviceNames (optional): Provider-specific service name aliases keyed by protocol.
  • target.endpoint.modelServiceName (optional): Canonical model-service name used for metadata lookup.
  • target.endpoint.reasoningEfforts (optional): Reasoning effort values this endpoint accepts.
  • target.endpoint.status (optional): Retirement status for this endpoint.
  • target.endpoint.status.deprecated (optional): True when the model should no longer be selected by default.
  • target.endpoint.dimension (optional): Embedding vector size when the endpoint is an embedding model.
  • target.capabilities: Protocol and feature capabilities for this target.
  • target.capabilities.responses: True when the model can serve the Databricks Responses API.
  • target.capabilities.openResponses: True when the model can serve OpenAI Responses.
  • target.capabilities.chat: True when the model can serve Chat Completions.
  • target.capabilities.anthropic: True when the model can serve Anthropic Messages.
  • target.capabilities.embeddings: True when the model can serve embeddings.
  • target.capabilities.aiGatewayCodex: True when the model is reachable through AI Gateway Codex.
  • target.capabilities.tools: True when the model accepts tools.
  • target.capabilities.reasoning: True when the model accepts reasoning effort.
  • target.capabilities.streaming: True when the model can stream tokens.
  • target.capabilities.parallelTools: True when the model can run multiple tools in one turn.
  • target.capabilities.customTools: True when the model accepts custom tool definitions.
  • target.capabilities.structuredOutput: True when the model can return structured output.
  • target.capabilities.webSearch: True when the model can use web search.
  • target.reasoningEfforts: Reasoning effort values this target accepts.