MadelineProto/old_docs/API_docs_v46/methods/channels_editAdmin.md
Daniil Gentili e4a326e552
Http refactor (#307)
* refactor

* Apply fixes from StyleCI

* Implement https and http transport, add support for new req_pq_multi, send pending acks and objects in containers along with the next method call, remove dependency on the socket extension.

* Apply fixes from StyleCI

* Make types with empty constructors optional, fix phar archives (fixes #217)

* Apply fixes from StyleCI

* Update to layer 75

* Update github pages gemfile.lock
2018-02-18 14:18:18 +01:00

91 lines
2.4 KiB
Markdown

---
title: channels.editAdmin
description: channels.editAdmin parameters, return type and example
---
## Method: channels.editAdmin
[Back to methods index](index.md)
### Parameters:
| Name | Type | Required |
|----------|---------------|----------|
|channel|[InputChannel](../types/InputChannel.md) | Optional|
|user\_id|[InputUser](../types/InputUser.md) | Optional|
|role|[ChannelParticipantRole](../types/ChannelParticipantRole.md) | Yes|
### Return type: [Updates](../types/Updates.md)
### Can bots use this method: **YES**
### Errors this method can return:
| Error | Description |
|----------|---------------|
|ADMINS_TOO_MUCH|Too many admins|
|BOT_CHANNELS_NA|Bots can't edit admin privileges|
|CHANNEL_INVALID|The provided channel is invalid|
|CHAT_ADMIN_REQUIRED|You must be an admin in this chat to do this|
|USER_CREATOR|You can't leave this channel, because you're its creator|
|USER_ID_INVALID|The provided user ID is invalid|
|USER_NOT_MUTUAL_CONTACT|The provided user is not a mutual contact|
|CHAT_ADMIN_INVITE_REQUIRED|You do not have the rights to do this|
|RIGHT_FORBIDDEN|Your admin rights do not allow you to do this|
|USER_PRIVACY_RESTRICTED|The user's privacy settings do not allow you to do this|
### Example:
```
$MadelineProto = new \danog\MadelineProto\API();
$MadelineProto->session = 'mySession.madeline';
if (isset($token)) { // Login as a bot
$MadelineProto->bot_login($token);
}
if (isset($number)) { // Login as a user
$MadelineProto->phone_login($number);
$code = readline('Enter the code you received: '); // Or do this in two separate steps in an HTTP API
$MadelineProto->complete_phone_login($code);
}
$Updates = $MadelineProto->channels->editAdmin(['channel' => InputChannel, 'user_id' => InputUser, 'role' => ChannelParticipantRole, ]);
```
Or, if you're using the [PWRTelegram HTTP API](https://pwrtelegram.xyz):
### As a bot:
POST/GET to `https://api.pwrtelegram.xyz/botTOKEN/madeline`
Parameters:
* method - channels.editAdmin
* params - `{"channel": InputChannel, "user_id": InputUser, "role": ChannelParticipantRole, }`
### As a user:
POST/GET to `https://api.pwrtelegram.xyz/userTOKEN/channels.editAdmin`
Parameters:
channel - Json encoded InputChannel
user_id - Json encoded InputUser
role - Json encoded ChannelParticipantRole
Or, if you're into Lua:
```
Updates = channels.editAdmin({channel=InputChannel, user_id=InputUser, role=ChannelParticipantRole, })
```