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

# OutputMessageItemStatusUnion - Go SDK

> OutputMessageItemStatusUnion 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

### OutputMessageItemStatusCompleted

```go lines theme={null}
outputMessageItemStatusUnion := components.CreateOutputMessageItemStatusUnionOutputMessageItemStatusCompleted(components.OutputMessageItemStatusCompleted{/* values here */})
```

### OutputMessageItemStatusIncomplete

```go lines theme={null}
outputMessageItemStatusUnion := components.CreateOutputMessageItemStatusUnionOutputMessageItemStatusIncomplete(components.OutputMessageItemStatusIncomplete{/* values here */})
```

### OutputMessageItemStatusInProgress

```go lines theme={null}
outputMessageItemStatusUnion := components.CreateOutputMessageItemStatusUnionOutputMessageItemStatusInProgress(components.OutputMessageItemStatusInProgress{/* values here */})
```

## Union Discrimination

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

```go lines theme={null}
switch outputMessageItemStatusUnion.Type {
	case components.OutputMessageItemStatusUnionTypeOutputMessageItemStatusCompleted:
		// outputMessageItemStatusUnion.OutputMessageItemStatusCompleted is populated
	case components.OutputMessageItemStatusUnionTypeOutputMessageItemStatusIncomplete:
		// outputMessageItemStatusUnion.OutputMessageItemStatusIncomplete is populated
	case components.OutputMessageItemStatusUnionTypeOutputMessageItemStatusInProgress:
		// outputMessageItemStatusUnion.OutputMessageItemStatusInProgress is populated
}
```
