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

# VariableValue

# VariableValue

Discriminated union representing the value supplied for a [PromptVariable](https://www.adaline.ai/docs/reference/sdk/v2/python/types/PromptVariable.md). The `modality` field on the inner instance determines the concrete type.

## Import

```python theme={null}
from adaline_api.models.variable_value import VariableValue
```

## Variants

| `modality` | Type | Description |
| - | - | - |
| `"text"` | `TextContent` | Plain text value |
| `"image"` | `ImageContent` | Image (URL or base64) |
| `"pdf"` | `PdfContent` | PDF document |
| `"api"` | `ApiContent` | External API data source |
| `"prompt"` | `PromptContent` | Nested prompt reference |

***

## Example

```python theme={null}
from adaline_api.models.variable_value import VariableValue
from adaline_api.models.text_content import TextContent
from adaline_api.models.image_content import ImageContent
from adaline_api.models.url_image_content_value import UrlImageContentValue

text_var = VariableValue(
    actual_instance=TextContent(modality="text", value="John Doe")
)

image_var = VariableValue(
    actual_instance=ImageContent(
        modality="image",
        detail="auto",
        value=UrlImageContentValue(type="url", url="https://example.com/logo.png")
    )
)
```

### Type narrowing

```python theme={null}
from adaline_api.models.text_content import TextContent
from adaline_api.models.image_content import ImageContent
from adaline_api.models.pdf_content import PdfContent

def process_variable(v: VariableValue) -> None:
    inst = v.actual_instance
    if isinstance(inst, TextContent):
        print(f"Text: {inst.value}")
    elif isinstance(inst, ImageContent):
        print(f"Image: {inst.value.type}")
    elif isinstance(inst, PdfContent):
        print(f"PDF: {inst.file.name}")
```

***

## Related

* [PromptVariable](https://www.adaline.ai/docs/reference/sdk/v2/python/types/PromptVariable.md) — variable definition that this value satisfies
* [TextContent](https://www.adaline.ai/docs/reference/sdk/v2/python/types/TextContent.md) — text variant
* [ImageContent](https://www.adaline.ai/docs/reference/sdk/v2/python/types/ImageContent.md) — image variant
* [PdfContent](https://www.adaline.ai/docs/reference/sdk/v2/python/types/PdfContent.md) — PDF variant


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.