setBusinessAccountProfilePhoto

Raw MD
Changes the profile photo of a managed business account

Changes the profile photo of a managed business account. Requires the can_edit_profile_photo business bot right. Returns True on success.

Parameters

ParameterTypeRequiredDescription
business_connection_idStringYesUnique identifier of the business connection
photoInputProfilePhotoYesThe new profile photo to set
is_publicBooleanOptionalPass True to set the public photo, which will be visible even if the main photo is hidden by the business account's privacy settings. An account can have only one public photo.

Example

PHP — Call setBusinessAccountProfilePhoto on Botlify Cloud
<?php
// ── Botlify Cloud .env — auto-injected, never hardcode secrets ──
$BOT_TOKEN     = getenv('BOT_TOKEN');     // Telegram bot token from @BotFather
$ADMIN_CHAT_ID = getenv('ADMIN_CHAT_ID'); // Your numeric admin Telegram user ID
$BOT_USERNAME  = getenv('BOT_USERNAME');  // Bot username without @

$resp = bot('setBusinessAccountProfilePhoto', [
    'business_connection_id' => $userId,
    'photo' => 'value',
]);

if ($resp['ok'] ?? false) {
    $result = $resp['result']; // handle the response
}
Botlify Cloud Runtime
Credentials are auto-injected in .env — always load them with getenv(): BOT_TOKEN, ADMIN_CHAT_ID, BOT_USERNAME. Main database: database.db (SQLite, WAL mode). Runtime errors: error.log. Quick test: send to $ADMIN_CHAT_ID. Full details: Runtime Reference.