# `route.input_not_input`

Route input is not an `Input` type.

Area 7, [HTTP](../topics/http.md); not declinable; the next step is usually the agent's.

A route accepts only an `Input`:

```jadpo
type Memo = Text {
    max_length: 200
}

type MemoId = Uuid {}

type AddMemo = Input {
    text: Memo
}

type MemoView = Output {
    text: Memo
}

action add_memo(input: AddMemo) -> MemoView {
    return MemoView {
        text: input.text
    }
}

routes Memos {
    prefix: /memos

    POST / {
        input: MemoView
        output: MemoView
        run: add_memo(input)
    }
}
```

```text
error: `MemoView` isn't an `Input`
 --> main.jadpo:25:16
   |
25 |         input: MemoView
   |                ^^^^^^^^ not an `Input`
  reason: A route accepts only an `Input` type (area 2): the only objects that may leave fields out or fill them by default, and the ones a request's fields are checked against.
  next: Declare `type <Name> = Input { ... }` and take it here (agent)
  rule: route.input_not_input
  help: https://jadpo.dev/docs/errors/route.input_not_input

check failed: 1 error, 1 file
```
