---
metadata:
  - name: generator
    content: Diplodoc Platform v5.54.5
alternate:
  - https://divkit.tech/docs/en/concepts/divs/2/div-action-submit.md
  - https://divkit.tech/docs/ru/concepts/divs/2/div-action-submit.md
  - href: en/concepts/divs/2/div-action-submit.md
    type: text/markdown
    title: Markdown version
  - href: ../../../llms.txt
    type: text/markdown
    title: llms.txt
---
> **Documentation Index:** Fetch the complete configuration index at https://divkit.tech/docs/en/llms.txt

# div-action-submit
Sends variables from the container by link. Data sending configuration can be defined by the host app. By default, variables are sent as JSON in the request body using the POST method.

## Parameters
| Parameters | Description |
| --- | --- |
| `container_id` | <p>**string**</p><p>Required parameter.</p><p>ID of the container with the variables to be sent.</p><p>Available platforms: Android, iOS, web.</p> |
| `request` | <p>**object**</p><p>Required parameter.</p><p>HTTP request parameters for configuring the sending of data.</p><p>The value has the type `request`.</p><p>Available platforms: Android, iOS, web.</p> |
| `type` | <p>**string**</p><p>Required parameter.</p><p>The value must always be `submit`.</p><p>Available platforms: Android, iOS, web.</p> |
| `on_fail_actions` | <p>**array**</p><p>Actions when sending data is unsuccessful.</p><p>Available platforms: Android, iOS, web.</p> |
| `on_success_actions` | <p>**array**</p><p>Actions when sending data is successful.</p><p>Available platforms: Android, iOS, web.</p> |

### request
| Parameters | Description |
| --- | --- |
| `url` | <p>**string**</p><p>Required parameter.</p><p>Link for sending data from the container.</p><p>The value must be a valid URL.</p> |
| `headers` | <p>**array**</p><p>HTTP request headers. Please note that DivKit does not clean duplicate headers, which can lead to errors in request processing. Keep this in mind when assembling actions with complex JSON-builders.</p> |
| `method` | <p>**string**</p><p>HTTP request method.</p><p>Possible values: `get`, `post`, `put`, `patch`, `delete`, `head`, `options`.</p><p>Default value: `post`.</p> |

### header
| Parameters | Description |
| --- | --- |
| `name` | <p>**string**</p><p>Required parameter.</p> |
| `value` | <p>**string**</p><p>Required parameter.</p> |

<details>
<summary>JSON</summary>

```json
{
  type*: "submit",
  container_id*: "string",
  on_fail_actions: [
    {
      download_callbacks: {
        on_fail_actions: [ div-action, ... ],
        on_success_actions: [ div-action, ... ]
      },
      is_enabled: "bool_int",
      log_id: "string",
      log_url: "string",
      menu_items: [
        {
          action: div-action,
          actions: [ div-action, ... ],
          text*: "string"
        },
        ...
      ],
      payload: "object",
      referer: "string",
      scope_id: "string",
      target: "string",
      typed: div-action-typed,
      url: "string"
    },
    ...
  ],
  on_success_actions: [
    {
      download_callbacks: {
        on_fail_actions: [ div-action, ... ],
        on_success_actions: [ div-action, ... ]
      },
      is_enabled: "bool_int",
      log_id: "string",
      log_url: "string",
      menu_items: [
        {
          action: div-action,
          actions: [ div-action, ... ],
          text*: "string"
        },
        ...
      ],
      payload: "object",
      referer: "string",
      scope_id: "string",
      target: "string",
      typed: div-action-typed,
      url: "string"
    },
    ...
  ],
  request*: {
    headers: [
      {
        name*: "string",
        value*: "string"
      },
      ...
    ],
    method: "string",
    url*: "string"
  }
}
```
</details>
