set_profile_photo()

Client.set_profile_photo()

Set a new profile photo or video (H.264/MPEG-4 AVC video, max 5 seconds).

The photo and video arguments are mutually exclusive. Pass either one as named argument (see examples below).

Note

This method only works for Users. Bots profile photos must be set using BotFather.

Usable by Users Bots
Parameters:
  • photo (str | BinaryIO, optional) – Profile photo to set. Pass a file path as string to upload a new photo that exists on your local machine or pass a binary file-like object with its attribute “.name” set for in-memory uploads.

  • video (str | BinaryIO, optional) – Profile video to set. Pass a file path as string to upload a new video that exists on your local machine or pass a binary file-like object with its attribute “.name” set for in-memory uploads.

Returns:

bool – True on success.

Example

# Set a new profile photo
await app.set_profile_photo(photo="new_photo.jpg")

# Set a new profile video
await app.set_profile_photo(video="new_video.mp4")