:plugin: imap
:type: input
:default_codec: plain

///////////////////////////////////////////
START - GENERATED VARIABLES, DO NOT EDIT!
///////////////////////////////////////////
:version: %VERSION%
:release_date: %RELEASE_DATE%
:changelog_url: %CHANGELOG_URL%
:include_path: ../../../../logstash/docs/include
///////////////////////////////////////////
END - GENERATED VARIABLES, DO NOT EDIT!
///////////////////////////////////////////

[id="plugins-{type}s-{plugin}"]

=== Imap input plugin

include::{include_path}/plugin_header.asciidoc[]

==== Description

Read mails from IMAP server

Periodically scan an IMAP folder (`INBOX` by default) and move any read messages
to the trash.

[id="plugins-{type}s-{plugin}-options"]
==== Imap Input Configuration Options

This plugin supports the following configuration options plus the <<plugins-{type}s-{plugin}-common-options>> described later.

[cols="<,<,<",options="header",]
|=======================================================================
|Setting |Input type|Required
| <<plugins-{type}s-{plugin}-check_interval>> |<<number,number>>|No
| <<plugins-{type}s-{plugin}-content_type>> |<<string,string>>|No
| <<plugins-{type}s-{plugin}-delete>> |<<boolean,boolean>>|No
| <<plugins-{type}s-{plugin}-expunge>> |<<boolean,boolean>>|No
| <<plugins-{type}s-{plugin}-fetch_count>> |<<number,number>>|No
| <<plugins-{type}s-{plugin}-folder>> |<<string,string>>|No
| <<plugins-{type}s-{plugin}-host>> |<<string,string>>|Yes
| <<plugins-{type}s-{plugin}-lowercase_headers>> |<<boolean,boolean>>|No
| <<plugins-{type}s-{plugin}-password>> |<<password,password>>|Yes
| <<plugins-{type}s-{plugin}-port>> |<<number,number>>|No
| <<plugins-{type}s-{plugin}-secure>> |<<boolean,boolean>>|No
| <<plugins-{type}s-{plugin}-sincedb_path>> |<<string,string>>|No
| <<plugins-{type}s-{plugin}-strip_attachments>> |<<boolean,boolean>>|No
| <<plugins-{type}s-{plugin}-uid_tracking>> |<<boolean,boolean>>|No
| <<plugins-{type}s-{plugin}-user>> |<<string,string>>|Yes
| <<plugins-{type}s-{plugin}-verify_cert>> |<<boolean,boolean>>|No
|=======================================================================

Also see <<plugins-{type}s-{plugin}-common-options>> for a list of options supported by all
input plugins.

&nbsp;

[id="plugins-{type}s-{plugin}-check_interval"]
===== `check_interval`

  * Value type is <<number,number>>
  * Default value is `300`



[id="plugins-{type}s-{plugin}-content_type"]
===== `content_type`

  * Value type is <<string,string>>
  * Default value is `"text/plain"`

For multipart messages, use the first part that has this
content-type as the event message.

[id="plugins-{type}s-{plugin}-delete"]
===== `delete`

  * Value type is <<boolean,boolean>>
  * Default value is `false`



[id="plugins-{type}s-{plugin}-expunge"]
===== `expunge`

  * Value type is <<boolean,boolean>>
  * Default value is `false`



[id="plugins-{type}s-{plugin}-fetch_count"]
===== `fetch_count`

  * Value type is <<number,number>>
  * Default value is `50`



[id="plugins-{type}s-{plugin}-folder"]
===== `folder`

  * Value type is <<string,string>>
  * Default value is `"INBOX"`



[id="plugins-{type}s-{plugin}-host"]
===== `host`

  * This is a required setting.
  * Value type is <<string,string>>
  * There is no default value for this setting.



[id="plugins-{type}s-{plugin}-lowercase_headers"]
===== `lowercase_headers`

  * Value type is <<boolean,boolean>>
  * Default value is `true`



[id="plugins-{type}s-{plugin}-password"]
===== `password`

  * This is a required setting.
  * Value type is <<password,password>>
  * There is no default value for this setting.



[id="plugins-{type}s-{plugin}-port"]
===== `port`

  * Value type is <<number,number>>
  * There is no default value for this setting.



[id="plugins-{type}s-{plugin}-secure"]
===== `secure`

  * Value type is <<boolean,boolean>>
  * Default value is `true`



[id="plugins-{type}s-{plugin}-sincedb_path"]
===== `sincedb_path`

  * Value type is <<string,string>>
  * There is no default value for this setting.

Path of the sincedb database file (keeps track of the UID of the last processed
mail) that will be written to disk. The default will write sincedb file to
`<path.data>/plugins/inputs/imap` directory.
NOTE: it must be a file path and not a directory path.

[id="plugins-{type}s-{plugin}-strip_attachments"]
===== `strip_attachments`

  * Value type is <<boolean,boolean>>
  * Default value is `false`



[id="plugins-{type}s-{plugin}-uid_tracking"]
===== `uid_tracking`

  * Value type is <<boolean,boolean>>
  * Default value is `false`

When the IMAP input plugin connects to the mailbox for the first time and
the UID of the last processed mail is not yet known, the unread mails are
first downloaded and the UID of the last processed mail is saved. From
this point on, if `uid_tracking` is set to `true`, all new mail will be
downloaded regardless of whether they are marked as read or unread. This
allows users or other services to use the mailbox simultaneously with the
IMAP input plugin. UID of the last processed mail is always saved regardles
of the `uid_tracking` value, so you can switch its value as needed. In
transition from the previous IMAP input plugin version, first process at least
one mail with `uid_tracking` set to `false` to save the UID of the last
processed mail and then switch `uid_tracking` to `true`.

[id="plugins-{type}s-{plugin}-user"]
===== `user`

  * This is a required setting.
  * Value type is <<string,string>>
  * There is no default value for this setting.



[id="plugins-{type}s-{plugin}-verify_cert"]
===== `verify_cert`

  * Value type is <<boolean,boolean>>
  * Default value is `true`





[id="plugins-{type}s-{plugin}-common-options"]
include::{include_path}/{type}.asciidoc[]

:default_codec!:
