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
        • StopServerToolsWhenCondition
      • 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
  • StopServerToolsWhenFinishReasonIs
  • StopServerToolsWhenHasToolCall
  • StopServerToolsWhenMaxCost
  • StopServerToolsWhenMaxTokensUsed
  • StopServerToolsWhenStepCountIs
  • Union Discrimination
Go SDKAPI ReferenceModels

StopServerToolsWhenCondition - Go SDK

StopServerToolsWhenCondition 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.

A single condition that, when met, halts the server-tool agent loop.

Supported Types

StopServerToolsWhenFinishReasonIs

1stopServerToolsWhenCondition := components.CreateStopServerToolsWhenConditionFinishReasonIs(components.StopServerToolsWhenFinishReasonIs{/* values here */})

StopServerToolsWhenHasToolCall

1stopServerToolsWhenCondition := components.CreateStopServerToolsWhenConditionHasToolCall(components.StopServerToolsWhenHasToolCall{/* values here */})

StopServerToolsWhenMaxCost

1stopServerToolsWhenCondition := components.CreateStopServerToolsWhenConditionMaxCost(components.StopServerToolsWhenMaxCost{/* values here */})

StopServerToolsWhenMaxTokensUsed

1stopServerToolsWhenCondition := components.CreateStopServerToolsWhenConditionMaxTokensUsed(components.StopServerToolsWhenMaxTokensUsed{/* values here */})

StopServerToolsWhenStepCountIs

1stopServerToolsWhenCondition := components.CreateStopServerToolsWhenConditionStepCountIs(components.StopServerToolsWhenStepCountIs{/* values here */})

Union Discrimination

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

1switch stopServerToolsWhenCondition.Type {
2 case components.StopServerToolsWhenConditionTypeFinishReasonIs:
3 // stopServerToolsWhenCondition.StopServerToolsWhenFinishReasonIs is populated
4 case components.StopServerToolsWhenConditionTypeHasToolCall:
5 // stopServerToolsWhenCondition.StopServerToolsWhenHasToolCall is populated
6 case components.StopServerToolsWhenConditionTypeMaxCost:
7 // stopServerToolsWhenCondition.StopServerToolsWhenMaxCost is populated
8 case components.StopServerToolsWhenConditionTypeMaxTokensUsed:
9 // stopServerToolsWhenCondition.StopServerToolsWhenMaxTokensUsed is populated
10 case components.StopServerToolsWhenConditionTypeStepCountIs:
11 // stopServerToolsWhenCondition.StopServerToolsWhenStepCountIs is populated
12}