> For the complete documentation index, see [llms.txt](https://docs.api.intratool.de/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.api.intratool.de/api-reference/forms/form-message-fields.md).

# FormMessageFields

## Introduction

`FormMessageFields` store the submitted value of each [FormField](/api-reference/forms/form-fields.md) in a [FormMessage](/api-reference/forms/form-messages.md).

For a related FormField type that stores rich text, the applicable `value` and `request_value` fields use the shared [Rich Text](/introduction/rich-text.md) HTML format.

## Model Definition

**Alias**

`formMessageField`

**Capabilities**

* [Translations](/introduction/resource-capabilities/translations.md) - Localizes `value` and `request_value`; examples use `en-US`.

**Relations**

| Key           | Relation                                             | Type       | Relation Field(s) |
| ------------- | ---------------------------------------------------- | ---------- | ----------------- |
| `formMessage` | [FormMessage](/api-reference/forms/form-messages.md) | Belongs to | `form_message_id` |
| `formField`   | [FormField](/api-reference/forms/form-fields.md)     | Belongs to | `form_field_id`   |

## List by Message

List `FormMessageFields` for one `FormMessage`.

**Definition**

<mark style="color:green;">`GET`</mark> `/api/forms/messages/{formMessage}/fields`

**Route Parameters**

| Parameter     | Type      | Description      |
| ------------- | --------- | ---------------- |
| `formMessage` | `integer` | Form message ID. |

**Request Keys**

| Key         | Type      | Default           | Description                          |
| ----------- | --------- | ----------------- | ------------------------------------ |
| `selects`   | `string`  | All fields        | Comma-separated fields to return.    |
| `relations` | `string`  | Default relations | Pipe-separated relations to include. |
| `limit`     | `integer` | No limit          | Maximum number of fields.            |

**Example Request**

{% tabs %}
{% tab title="PHP" %}

```php
$client = new GuzzleHttp\Client(['base_uri' => 'https://{tenant}.intratool.de']);
$response = $client->request('GET', '/api/forms/messages/140/fields', [
    'headers' => ['Authorization' => "Bearer {accessToken}"]
]);
```

{% endtab %}
{% endtabs %}

**Example Response**

```json
[
  {
    "id": 501,
    "form_message_id": 140,
    "form_field_id": 301,
    "lang_id": "en-US",
    "value": "Ada Lovelace",
    "request_value": "Ada Lovelace"
  },
  {
    "id": 502,
    "form_message_id": 140,
    "form_field_id": 302,
    "lang_id": "en-US",
    "value": "Ada Lovelace",
    "request_value": "7"
  }
]
```

## Show by Message and Field

Show one `FormMessageField` by message and field.

**Definition**

<mark style="color:green;">`GET`</mark> `/api/forms/messages/{formMessage}/fields/{formField}`

**Route Parameters**

| Parameter     | Type      | Description      |
| ------------- | --------- | ---------------- |
| `formMessage` | `integer` | Form message ID. |
| `formField`   | `integer` | Form field ID.   |

**Request Keys**

| Key         | Type     | Default           | Description                          |
| ----------- | -------- | ----------------- | ------------------------------------ |
| `selects`   | `string` | All fields        | Comma-separated fields to return.    |
| `relations` | `string` | Default relations | Pipe-separated relations to include. |

**Example Request**

{% tabs %}
{% tab title="PHP" %}

```php
$client = new GuzzleHttp\Client(['base_uri' => 'https://{tenant}.intratool.de']);
$response = $client->request('GET', '/api/forms/messages/140/fields/302', [
    'headers' => ['Authorization' => "Bearer {accessToken}"]
]);
```

{% endtab %}
{% endtabs %}

**Example Response**

```json
{
  "id": 502,
  "form_message_id": 140,
  "form_field_id": 302,
  "lang_id": "en-US",
  "value": "Ada Lovelace",
  "request_value": "7"
}
```
