# `prompt.placeholder_type`

A prompt's field is of a type a prompt can't send.

Area 21, [AI](../topics/ai.md); not declinable; the next step is usually the agent's.

A prompt sends text: a secret, bytes, a file, a value that may be `none`
or a second conversation can't be one of its fields, and a conversation
is sent as the turns, never written in the text.


```jadpo
/// Describes the photo a customer sent of their order.
type DescribePhoto = Prompt {
    photo: Bytes
    reader_locale: Locale
}
```

```text
error: `DescribePhoto.photo` is `Bytes`, which a prompt can't send
 --> domains/support/prompts/describe_photo.jadpo:3:5
  |
3 |     photo: Bytes
  |     ^^^^^ not text
  reason: A prompt is text. Images, audio and files are sent by a provider package's own operations, not in a prompt.
  next: Remove `photo`, or send what it holds as text (agent)
  rule: prompt.placeholder_type
  help: https://jadpo.dev/docs/errors/prompt.placeholder_type

check failed: 1 error, 2 files
```
