Is useful for handling specific types of messages (For example separate text and stickers handlers). This is always automatically adds to the filters list for message handlers.

Can be imported:

  • from aiogram.dispatcher.filters.content_types import ContentTypesFilter
  • from aiogram.dispatcher.filters import ContentTypesFilter
  • from aiogram.filters import ContentTypesFilter

Or used from filters factory by passing corresponding arguments to handler registration line

Please be patient!

If no one content type filter is specified the ["text"] value is automatically will be used.


Argument Type Description
content_types Optional[Union[Sequence[str], str]] List of allowed content types


  1. Single content type: ContentTypesFilter(content_types=["sticker"]) or ContentTypesFilter(content_types="sticker")
  2. Multiple content types: ContentTypesFilter(content_types=["sticker", "photo"])
  3. Recommended: With usage of ContentType helper: ContentTypesFilter(content_types=[ContentType.PHOTO])
  4. Any content type: ContentTypesFilter(content_types=[ContentType.ANY])

Allowed handlers

Allowed update types for this filter:

  • message
  • edited_message
  • channel_post
  • edited_channel_post