Описание
Удаляет текущую фотографию профиля управляемого бизнес-аккаунта. Требует права бизнес-бота can_edit_profile_photo. Возвращает True при успешном выполнении.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| business_connection_id | String | Да | Уникальный идентификатор бизнес-подключения |
| is_public | Boolean | Опционально | Передайте True, чтобы удалить публичную фотографию, которая видна даже если основная фотография скрыта настройками приватности бизнес-аккаунта. После удаления основной фотографии, предыдущая фотография профиля (если есть) становится основной. |
Примеры
php
<?php
// Пример использования метода removeBusinessAccountProfilePhoto
// Токен вашего бота
$botToken = 'YOUR_BOT_TOKEN';
// ID бизнес-подключения
$businessConnectionId = 'YOUR_BUSINESS_CONNECTION_ID';
// Опциональный параметр - удалить публичное фото
$isPublic = true; // или false, если нужно удалить только основное фото
// Формируем данные для запроса
$data = [
'business_connection_id' => $businessConnectionId,
'is_public' => $isPublic
];
// URL для вызова метода
$url = "https://api.telegram.org/bot{$botToken}/removeBusinessAccountProfilePhoto";
// Отправляем запрос
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
curl_close($ch);
// Обрабатываем ответ
$result = json_decode($response, true);
if ($result['ok']) {
echo "Фото профиля успешно удалено\n";
} else {
echo "Ошибка: " . $result['description'] . "\n";
}
// Альтернативный вариант с использованием библиотеки
class TelegramBot {
private $token;
public function __construct($token) {
$this->token = $token;
}
public function removeBusinessAccountProfilePhoto($businessConnectionId, $isPublic = false) {
$data = [
'business_connection_id' => $businessConnectionId,
'is_public' => $isPublic
];
return $this->sendRequest('removeBusinessAccountProfilePhoto', $data);
}
private function sendRequest($method, $data = []) {
$url = "https://api.telegram.org/bot{$this->token}/{$method}";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
curl_close($ch);
return json_decode($response, true);
}
}
// Использование класса
$bot = new TelegramBot($botToken);
$result = $bot->removeBusinessAccountProfilePhoto($businessConnectionId, $isPublic);
if ($result['ok']) {
echo "Фото успешно удалено через класс\n";
} else {
echo "Ошибка через класс: " . $result['description'] . "\n";
}
?>
python
import requests
def remove_business_account_profile_photo(bot_token, business_connection_id, is_public=None):
"""
Removes the current profile photo of a managed business account.
Args:
bot_token (str): Your bot's token
business_connection_id (str): Unique identifier of the business connection
is_public (bool, optional): Pass True to remove the public photo
Returns:
bool: True on success
Raises:
Exception: If the API request fails
"""
url = f"https://api.telegram.org/bot{bot_token}/removeBusinessAccountProfilePhoto"
payload = {
"business_connection_id": business_connection_id
}
if is_public is not None:
payload["is_public"] = is_public
response = requests.post(url, json=payload)
response_data = response.json()
if response_data.get("ok"):
return True
else:
raise Exception(f"API Error: {response_data.get('description')}")
# Пример использования
if __name__ == "__main__":
# Замените на ваш реальный токен бота
BOT_TOKEN = "YOUR_BOT_TOKEN"
# Замените на реальный ID бизнес-подключения
BUSINESS_CONNECTION_ID = "business_connection_id_here"
try:
# Удаление основного фото профиля
result = remove_business_account_profile_photo(
bot_token=BOT_TOKEN,
business_connection_id=BUSINESS_CONNECTION_ID
)
print(f"Основное фото удалено: {result}")
# Удаление публичного фото (если нужно)
result_public = remove_business_account_profile_photo(
bot_token=BOT_TOKEN,
business_connection_id=BUSINESS_CONNECTION_ID,
is_public=True
)
print(f"Публичное фото удалено: {result_public}")
except Exception as e:
print(f"Ошибка: {e}")
История изменений
- API 9.0. Добавлен метод removeBusinessAccountProfilePhoto