Calling Methods

At this point, we have successfully installed Pyrogram and authorized our account; we are now aiming towards the core of the library. It’s time to start playing with the API!

Basic Usage

Making API method calls with Pyrogram is very simple. Here’s an example we are going to examine:

from pyrogram import Client

app = Client("my_account")

app.start()

print(app.get_me())
app.send_message("me", "Hi, it's me!")
app.send_location("me", 51.500729, -0.124583)
app.send_sticker("me", "CAADBAADyg4AAvLQYAEYD4F7vcZ43AI")

app.stop()
  1. Let’s begin by importing the Client class from the Pyrogram package:

    from pyrogram import Client
    
  2. Now instantiate a new Client object, “my_account” is a session name of your choice:

    app = Client("my_account")
    
  3. To actually make use of any method, the client has to be started first:

    app.start()
    
  4. Now, you can call any method you like:

    print(app.get_me())  # Print information about yourself
    
    # Send messages to yourself:
    app.send_message("me", "Hi!")  # Text message
    app.send_location("me", 51.500729, -0.124583)  # Location
    app.send_sticker("me", "CAADBAADyg4AAvLQYAEYD4F7vcZ43AI")  # Sticker
    
  5. Finally, when done, simply stop the client:

    app.stop()
    

Context Manager

You can also use Pyrogram’s Client in a context manager with the with statement. The client will automatically start() and stop() gracefully, even in case of unhandled exceptions in your code. The example above can be therefore rewritten in a much nicer way:

from pyrogram import Client

app = Client("my_account")

with app:
    print(app.get_me())
    app.send_message("me", "Hi there! I'm using **Pyrogram**")
    app.send_location("me", 51.500729, -0.124583)
    app.send_sticker("me", "CAADBAADyg4AAvLQYAEYD4F7vcZ43AI")

More examples can be found on GitHub.