2017-03-11 19:54:51 +01:00
---
title: checkAuthBotToken
description: Check bot's authentication token to log in as a bot. Works only when authGetState returns authStateWaitPhoneNumber. Can be used instead of setAuthPhoneNumber and checkAuthCode to log in. Returns authStateOk on success
---
## Method: checkAuthBotToken
[Back to methods index ](index.md )
2017-06-06 18:39:21 +02:00
YOU CANNOT USE THIS METHOD IN MADELINEPROTO
2017-03-11 19:54:51 +01:00
Check bot's authentication token to log in as a bot. Works only when authGetState returns authStateWaitPhoneNumber. Can be used instead of setAuthPhoneNumber and checkAuthCode to log in. Returns authStateOk on success
### Params:
| Name | Type | Required | Description |
|----------|:-------------:|:--------:|------------:|
|token|[string](../types/string.md) | Yes|Bot token|
### Return type: [AuthState](../types/AuthState.md)
### Example:
```
$MadelineProto = new \danog\MadelineProto\API();
2017-04-10 13:49:32 +02:00
if (isset($token)) { // Login as a bot
2017-06-19 18:56:47 +02:00
$MadelineProto->bot_login($token);
2017-03-11 19:54:51 +01:00
}
2017-04-10 13:49:32 +02:00
if (isset($number)) { // Login as a user
2017-03-11 19:54:51 +01:00
$sentCode = $MadelineProto->phone_login($number);
echo 'Enter the code you received: ';
$code = '';
for ($x = 0; $x < $sentCode['type']['length']; $x++) {
$code .= fgetc(STDIN);
}
$MadelineProto->complete_phone_login($code);
}
$AuthState = $MadelineProto->checkAuthBotToken(['token' => string, ]);
```
2017-07-23 16:11:02 +02:00
Or, if you're using [PWRTelegram ](https://pwrtelegram.xyz ):
### As a bot:
POST/GET to `https://api.pwrtelegram.xyz/botTOKEN/madeline`
Parameters:
* method - checkAuthBotToken
* params - {"token":"string"}
```
### As a user:
POST/GET to `https://api.pwrtelegram.xyz/userTOKEN/checkAuthBotToken`
Parameters:
token - Json encoded string
```
2017-03-11 19:54:51 +01:00
Or, if you're into Lua:
```
AuthState = checkAuthBotToken({token=string, })
```