# Gmail API . users . settings . filters

## Instance Methods

Creates a filter.

Deletes a filter.

Gets a filter.

Lists the message filters of a Gmail user.

### Method Details

`create(userId, body=None, x__xgafv=None)`

    Creates a filter.

    Args:
      userId: string, User's email address. The special value "me"
    can be used to indicate the authenticated user. (required)
      body: object, The request body.
        The object takes the form of:

    { # Resource definition for Gmail filters. Filters apply to specific messages
        # instead of an entire email thread.
      "action": { # A set of actions to perform on a message. # Action that the filter performs.
        "forward": "A String", # Email address that the message should be forwarded to.
        "removeLabelIds": [ # List of labels to remove from the message.
          "A String",
        ],
        "addLabelIds": [ # List of labels to add to the message.
          "A String",
        ],
      },
      "id": "A String", # The server assigned ID of the filter.
      "criteria": { # Message matching criteria. # Matching criteria for the filter.
        "negatedQuery": "A String", # Only return messages not matching the specified query. Supports the same
            # query format as the Gmail search box. For example,
            # `"from:someuser@example.com rfc822msgid:<somemsgid@example.com>
            # is:unread"`.
        "subject": "A String", # Case-insensitive phrase found in the message's subject. Trailing and
            # leading whitespace are be trimmed and adjacent spaces are collapsed.
        "to": "A String", # The recipient's display name or email address. Includes recipients in the
            # "to", "cc", and "bcc" header fields. You can use simply the local part of
            # the email address. For example, "example" and "example@" both match
            # "example@gmail.com". This field is case-insensitive.
        "size": 42, # The size of the entire RFC822 message in bytes, including all headers and
            # attachments.
        "query": "A String", # Only return messages matching the specified query. Supports the same
            # query format as the Gmail search box. For example,
            # `"from:someuser@example.com rfc822msgid:<somemsgid@example.com>
            # is:unread"`.
        "excludeChats": True or False, # Whether the response should exclude chats.
        "sizeComparison": "A String", # How the message size in bytes should be in relation to the size field.
        "hasAttachment": True or False, # Whether the message has any attachment.
        "from": "A String", # The sender's display name or email address.
      },
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Resource definition for Gmail filters. Filters apply to specific messages
          # instead of an entire email thread.
        "action": { # A set of actions to perform on a message. # Action that the filter performs.
          "forward": "A String", # Email address that the message should be forwarded to.
          "removeLabelIds": [ # List of labels to remove from the message.
            "A String",
          ],
          "addLabelIds": [ # List of labels to add to the message.
            "A String",
          ],
        },
        "id": "A String", # The server assigned ID of the filter.
        "criteria": { # Message matching criteria. # Matching criteria for the filter.
          "negatedQuery": "A String", # Only return messages not matching the specified query. Supports the same
              # query format as the Gmail search box. For example,
              # `"from:someuser@example.com rfc822msgid:<somemsgid@example.com>
              # is:unread"`.
          "subject": "A String", # Case-insensitive phrase found in the message's subject. Trailing and
              # leading whitespace are be trimmed and adjacent spaces are collapsed.
          "to": "A String", # The recipient's display name or email address. Includes recipients in the
              # "to", "cc", and "bcc" header fields. You can use simply the local part of
              # the email address. For example, "example" and "example@" both match
              # "example@gmail.com". This field is case-insensitive.
          "size": 42, # The size of the entire RFC822 message in bytes, including all headers and
              # attachments.
          "query": "A String", # Only return messages matching the specified query. Supports the same
              # query format as the Gmail search box. For example,
              # `"from:someuser@example.com rfc822msgid:<somemsgid@example.com>
              # is:unread"`.
          "excludeChats": True or False, # Whether the response should exclude chats.
          "sizeComparison": "A String", # How the message size in bytes should be in relation to the size field.
          "hasAttachment": True or False, # Whether the message has any attachment.
          "from": "A String", # The sender's display name or email address.
        },
      }

`delete(userId, id, x__xgafv=None)`

    Deletes a filter.

    Args:
      userId: string, User's email address. The special value "me"
    can be used to indicate the authenticated user. (required)
      id: string, The ID of the filter to be deleted. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

`get(userId, id, x__xgafv=None)`

    Gets a filter.

    Args:
      userId: string, User's email address. The special value "me"
    can be used to indicate the authenticated user. (required)
      id: string, The ID of the filter to be fetched. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Resource definition for Gmail filters. Filters apply to specific messages
          # instead of an entire email thread.
        "action": { # A set of actions to perform on a message. # Action that the filter performs.
          "forward": "A String", # Email address that the message should be forwarded to.
          "removeLabelIds": [ # List of labels to remove from the message.
            "A String",
          ],
          "addLabelIds": [ # List of labels to add to the message.
            "A String",
          ],
        },
        "id": "A String", # The server assigned ID of the filter.
        "criteria": { # Message matching criteria. # Matching criteria for the filter.
          "negatedQuery": "A String", # Only return messages not matching the specified query. Supports the same
              # query format as the Gmail search box. For example,
              # `"from:someuser@example.com rfc822msgid:<somemsgid@example.com>
              # is:unread"`.
          "subject": "A String", # Case-insensitive phrase found in the message's subject. Trailing and
              # leading whitespace are be trimmed and adjacent spaces are collapsed.
          "to": "A String", # The recipient's display name or email address. Includes recipients in the
              # "to", "cc", and "bcc" header fields. You can use simply the local part of
              # the email address. For example, "example" and "example@" both match
              # "example@gmail.com". This field is case-insensitive.
          "size": 42, # The size of the entire RFC822 message in bytes, including all headers and
              # attachments.
          "query": "A String", # Only return messages matching the specified query. Supports the same
              # query format as the Gmail search box. For example,
              # `"from:someuser@example.com rfc822msgid:<somemsgid@example.com>
              # is:unread"`.
          "excludeChats": True or False, # Whether the response should exclude chats.
          "sizeComparison": "A String", # How the message size in bytes should be in relation to the size field.
          "hasAttachment": True or False, # Whether the message has any attachment.
          "from": "A String", # The sender's display name or email address.
        },
      }

`list(userId, x__xgafv=None)`

    Lists the message filters of a Gmail user.

    Args:
      userId: string, User's email address. The special value "me"
    can be used to indicate the authenticated user. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response for the ListFilters method.
        "filter": [ # List of a user's filters.
          { # Resource definition for Gmail filters. Filters apply to specific messages
              # instead of an entire email thread.
            "action": { # A set of actions to perform on a message. # Action that the filter performs.
              "forward": "A String", # Email address that the message should be forwarded to.
              "removeLabelIds": [ # List of labels to remove from the message.
                "A String",
              ],
              "addLabelIds": [ # List of labels to add to the message.
                "A String",
              ],
            },
            "id": "A String", # The server assigned ID of the filter.
            "criteria": { # Message matching criteria. # Matching criteria for the filter.
              "negatedQuery": "A String", # Only return messages not matching the specified query. Supports the same
                  # query format as the Gmail search box. For example,
                  # `"from:someuser@example.com rfc822msgid:<somemsgid@example.com>
                  # is:unread"`.
              "subject": "A String", # Case-insensitive phrase found in the message's subject. Trailing and
                  # leading whitespace are be trimmed and adjacent spaces are collapsed.
              "to": "A String", # The recipient's display name or email address. Includes recipients in the
                  # "to", "cc", and "bcc" header fields. You can use simply the local part of
                  # the email address. For example, "example" and "example@" both match
                  # "example@gmail.com". This field is case-insensitive.
              "size": 42, # The size of the entire RFC822 message in bytes, including all headers and
                  # attachments.
              "query": "A String", # Only return messages matching the specified query. Supports the same
                  # query format as the Gmail search box. For example,
                  # `"from:someuser@example.com rfc822msgid:<somemsgid@example.com>
                  # is:unread"`.
              "excludeChats": True or False, # Whether the response should exclude chats.
              "sizeComparison": "A String", # How the message size in bytes should be in relation to the size field.
              "hasAttachment": True or False, # Whether the message has any attachment.
              "from": "A String", # The sender's display name or email address.
            },
          },
        ],
      }