> ## Documentation Index
> Fetch the complete documentation index at: https://openrouter.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# FileResponse

A stored file. The shape is negotiated per request — see the endpoint description.

## Supported Types

### AnthropicFile

```go theme={null}
fileResponse := components.CreateFileResponseAnthropic(components.AnthropicFile{/* values here */})
```

### OpenAIFile

```go theme={null}
fileResponse := components.CreateFileResponseOpenai(components.OpenAIFile{/* values here */})
```

### OpenRouterFile

```go theme={null}
fileResponse := components.CreateFileResponseOpenrouter(components.OpenRouterFile{/* values here */})
```

## Union Discrimination

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

```go theme={null}
switch fileResponse.Type {
	case components.FileResponseTypeAnthropic:
		// fileResponse.AnthropicFile is populated
	case components.FileResponseTypeOpenai:
		// fileResponse.OpenAIFile is populated
	case components.FileResponseTypeOpenrouter:
		// fileResponse.OpenRouterFile is populated
	default:
		// Unknown type - use fileResponse.GetUnknownRaw() for raw JSON
}
```
