Installs a previously uploaded photo as a profile photo.
userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
userProfilePhoto#ecd75d8c photo_id:long photo_small:FileLocation photo_big:FileLocation dc_id:int = UserProfilePhoto;
---functions---
photos.updateProfilePhoto#f0bb5152 id:InputPhoto = UserProfilePhoto;
Parameters
| Name | Type | Description | 
| flags | # | Flags, see TL conditional fields | 
| fallback | flags.0?true | If set, the chosen profile photo will be shown to users that can't display your main profile photo due to your privacy settings. | 
| bot | flags.1?InputUser | Can contain info of a bot we own, to change the profile photo of that bot, instead of the current user. | 
| id | InputPhoto | Input photo | 
Result
photos.Photo
Both users and bots can use this method
Possible errors
| Code | Type | Description | 
| 400 | ALBUM_PHOTOS_TOO_MANY | You have uploaded too many profile photos, delete some before retrying. | 
| 400 | BOT_FALLBACK_UNSUPPORTED | The fallback flag can't be set for bots. | 
| 400 | FILE_PARTS_INVALID | The number of file parts is invalid. | 
| 400 | IMAGE_PROCESS_FAILED | Failure while processing image. | 
| 400 | LOCATION_INVALID | The provided location is invalid. | 
| 400 | PHOTO_CROP_SIZE_SMALL | Photo is too small. | 
| 400 | PHOTO_EXT_INVALID | The extension of the photo is invalid. | 
| 400 | PHOTO_ID_INVALID | Photo ID invalid. |