For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
ModelsChatRankingsDocs
DocsAPI ReferenceClient SDKsAgent SDKCookbookChangelog
DocsAPI ReferenceClient SDKsAgent SDKCookbookChangelog
    • Overview
    • Usage for Agents
  • TypeScript SDK
    • Overview
  • Python SDK
    • Overview
  • Go SDK
      • Analytics
      • APIKeys
      • Byok
      • Chat
      • Credits
      • Embeddings
      • Endpoints
      • Generations
      • Guardrails
        • Models
        • OpenAIResponsesToolChoiceUnion
      • OAuth
      • Observability
      • Organization
      • Presets
      • Providers
      • Rerank
      • Beta.Responses
      • Transcriptions
      • Speech
      • VideoGeneration
      • Workspaces
  • DevTools
    • Overview
    • Migrating to @openrouter/agent
LogoLogo
ModelsChatRankingsDocs
On this page
  • Supported Types
  • OpenAIResponsesToolChoiceAuto
  • OpenAIResponsesToolChoiceNone
  • OpenAIResponsesToolChoiceRequired
  • OpenAIResponsesToolChoiceFunction
  • OpenAIResponsesToolChoice
  • ToolChoiceAllowed
  • OpenAIResponsesToolChoiceApplyPatch
  • OpenAIResponsesToolChoiceShell
  • Union Discrimination
Go SDKAPI ReferenceModels

OpenAIResponsesToolChoiceUnion - Go SDK

OpenAIResponsesToolChoiceUnion type definition
Was this page helpful?
Previous

OAuth - Go SDK

OAuth method reference
Next
Built with

The Go SDK and docs are currently in beta. Report issues on GitHub.

Supported Types

OpenAIResponsesToolChoiceAuto

1openAIResponsesToolChoiceUnion := components.CreateOpenAIResponsesToolChoiceUnionOpenAIResponsesToolChoiceAuto(components.OpenAIResponsesToolChoiceAuto{/* values here */})

OpenAIResponsesToolChoiceNone

1openAIResponsesToolChoiceUnion := components.CreateOpenAIResponsesToolChoiceUnionOpenAIResponsesToolChoiceNone(components.OpenAIResponsesToolChoiceNone{/* values here */})

OpenAIResponsesToolChoiceRequired

1openAIResponsesToolChoiceUnion := components.CreateOpenAIResponsesToolChoiceUnionOpenAIResponsesToolChoiceRequired(components.OpenAIResponsesToolChoiceRequired{/* values here */})

OpenAIResponsesToolChoiceFunction

1openAIResponsesToolChoiceUnion := components.CreateOpenAIResponsesToolChoiceUnionOpenAIResponsesToolChoiceFunction(components.OpenAIResponsesToolChoiceFunction{/* values here */})

OpenAIResponsesToolChoice

1openAIResponsesToolChoiceUnion := components.CreateOpenAIResponsesToolChoiceUnionOpenAIResponsesToolChoice(components.OpenAIResponsesToolChoice{/* values here */})

ToolChoiceAllowed

1openAIResponsesToolChoiceUnion := components.CreateOpenAIResponsesToolChoiceUnionToolChoiceAllowed(components.ToolChoiceAllowed{/* values here */})

OpenAIResponsesToolChoiceApplyPatch

1openAIResponsesToolChoiceUnion := components.CreateOpenAIResponsesToolChoiceUnionOpenAIResponsesToolChoiceApplyPatch(components.OpenAIResponsesToolChoiceApplyPatch{/* values here */})

OpenAIResponsesToolChoiceShell

1openAIResponsesToolChoiceUnion := components.CreateOpenAIResponsesToolChoiceUnionOpenAIResponsesToolChoiceShell(components.OpenAIResponsesToolChoiceShell{/* values here */})

Union Discrimination

Use the Type field to determine which variant is active, then access the corresponding field:

1switch openAIResponsesToolChoiceUnion.Type {
2 case components.OpenAIResponsesToolChoiceUnionTypeOpenAIResponsesToolChoiceAuto:
3 // openAIResponsesToolChoiceUnion.OpenAIResponsesToolChoiceAuto is populated
4 case components.OpenAIResponsesToolChoiceUnionTypeOpenAIResponsesToolChoiceNone:
5 // openAIResponsesToolChoiceUnion.OpenAIResponsesToolChoiceNone is populated
6 case components.OpenAIResponsesToolChoiceUnionTypeOpenAIResponsesToolChoiceRequired:
7 // openAIResponsesToolChoiceUnion.OpenAIResponsesToolChoiceRequired is populated
8 case components.OpenAIResponsesToolChoiceUnionTypeOpenAIResponsesToolChoiceFunction:
9 // openAIResponsesToolChoiceUnion.OpenAIResponsesToolChoiceFunction is populated
10 case components.OpenAIResponsesToolChoiceUnionTypeOpenAIResponsesToolChoice:
11 // openAIResponsesToolChoiceUnion.OpenAIResponsesToolChoice is populated
12 case components.OpenAIResponsesToolChoiceUnionTypeToolChoiceAllowed:
13 // openAIResponsesToolChoiceUnion.ToolChoiceAllowed is populated
14 case components.OpenAIResponsesToolChoiceUnionTypeOpenAIResponsesToolChoiceApplyPatch:
15 // openAIResponsesToolChoiceUnion.OpenAIResponsesToolChoiceApplyPatch is populated
16 case components.OpenAIResponsesToolChoiceUnionTypeOpenAIResponsesToolChoiceShell:
17 // openAIResponsesToolChoiceUnion.OpenAIResponsesToolChoiceShell is populated
18}