Skip to main content
Version: 3.x

The Basics

Here's an example of getMe() API method you can use to test your bot's auth token. Returns basic information about the bot in form of a User object.

See getMe docs for more details.


require __DIR__.'/vendor/autoload.php';

use Telegram\Bot\Api;

$telegram = new Api('YOUR BOT TOKEN');
$response = $telegram->getMe();


Using Facade

use Telegram\Bot\Laravel\Facades\Telegram;

$response = Telegram::getMe();

Using Service Container

Here's an example using Laravel's service container aka dependency injection.


namespace App\Http\Controllers;

use App\Http\Controllers\Controller;
use Telegram\Bot\Api;

class BotController extends Controller
protected $telegram;

* Create a new controller instance.
* @param Api $telegram
public function __construct(Api $telegram)
$this->telegram = $telegram;

* Show the bot information.
public function show()
$response = $this->telegram->getMe();

return $response;

Handling Response

Telegram Bot API responses in the SDK are represented as PHP objects. Telegram Bot SDK supports all available types of response objects with various helpful methods. In addition, all the related objects of an object are also automatically mapped to the appropriate PHP response object.

In the above example, getMe() returns a User object.

So we can retrieve the object values like so:

$botId = $response->getId();
$firstName = $response->getFirstName();
$username = $response->getUsername();

Additional Information

Telegram Bot SDK takes advantage of the amazing Laravel Collection API to automatically map the data.

So it's a lot easier to work with the array of data. Supports all the methods listed on the official docs.