> ## Documentation Index
> Fetch the complete documentation index at: https://openrouter-d02e98a0-mintlify-5b6e02fd.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# MessagesMessageParamContentUnion1 - Go SDK

> MessagesMessageParamContentUnion1 type definition

<Warning>
  The Go SDK and docs are currently in beta.
  Report issues on [GitHub](https://github.com/OpenRouterTeam/go-sdk/issues).
</Warning>

## Supported Types

### AnthropicTextBlockParam

```go lines theme={null}
messagesMessageParamContentUnion1 := components.CreateMessagesMessageParamContentUnion1Text(components.AnthropicTextBlockParam{/* values here */})
```

### AnthropicImageBlockParam

```go lines theme={null}
messagesMessageParamContentUnion1 := components.CreateMessagesMessageParamContentUnion1Image(components.AnthropicImageBlockParam{/* values here */})
```

### ContentToolReference

```go lines theme={null}
messagesMessageParamContentUnion1 := components.CreateMessagesMessageParamContentUnion1ToolReference(components.ContentToolReference{/* values here */})
```

### AnthropicSearchResultBlockParam

```go lines theme={null}
messagesMessageParamContentUnion1 := components.CreateMessagesMessageParamContentUnion1SearchResult(components.AnthropicSearchResultBlockParam{/* values here */})
```

### AnthropicDocumentBlockParam

```go lines theme={null}
messagesMessageParamContentUnion1 := components.CreateMessagesMessageParamContentUnion1Document(components.AnthropicDocumentBlockParam{/* values here */})
```

## Union Discrimination

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

```go lines theme={null}
switch messagesMessageParamContentUnion1.Type {
	case components.MessagesMessageParamContentUnion1TypeText:
		// messagesMessageParamContentUnion1.AnthropicTextBlockParam is populated
	case components.MessagesMessageParamContentUnion1TypeImage:
		// messagesMessageParamContentUnion1.AnthropicImageBlockParam is populated
	case components.MessagesMessageParamContentUnion1TypeToolReference:
		// messagesMessageParamContentUnion1.ContentToolReference is populated
	case components.MessagesMessageParamContentUnion1TypeSearchResult:
		// messagesMessageParamContentUnion1.AnthropicSearchResultBlockParam is populated
	case components.MessagesMessageParamContentUnion1TypeDocument:
		// messagesMessageParamContentUnion1.AnthropicDocumentBlockParam is populated
}
```
