Managing email filters with SES API

In addition to sending emails, you can also receive email with Amazon Simple Email Service (SES). An IP address filter enables you to optionally specify whether to accept or reject mail that originates from an IP address or range of IP addresses. For more information, see Managing IP Address Filters for Amazon SES Email Receiving.

The following examples show how to:

Prerequisite tasks

To set up and run this example, you must first complete these tasks:

  • Configure your AWS credentials, as described in Quickstart.

Create an email filter

To allow or block emails from a specific IP address, use the CreateReceiptFilter operation. Provide the IP address or range of addresses and a unique name to identify this filter.

Example

import boto3

# Create SES client
ses = boto3.client('ses')

# Create receipt filter
response = ses.create_receipt_filter(
  Filter = {
    'NAME'     : 'NAME',
    'IpFilter' : {
      'Cidr'   : 'IP_ADDRESS_OR_RANGE',
      'Policy' : 'Allow'
    }
  }
)

print(response)

List all email filters

To list the IP address filters associated with your AWS account in the current AWS Region, use the ListReceiptFilters operation.

Example

import boto3

# Create SES client
ses = boto3.client('ses')

response = ses.list_receipt_filters()

print(response)

Delete an email filter

To remove an existing filter for a specific IP address use the DeleteReceiptFilter operation. Provide the unique filter name to identify the receipt filter to delete.

If you need to change the range of addresses that are filtered, you can delete a receipt filter and create a new one.

Example

import boto3

# Create SES client
ses = boto3.client('ses')

response = ses.delete_receipt_filter(
  FilterName = 'NAME'
)

print(response)