Skip to main content

Python wrapper for the Mastodon API

Project description

Python wrapper for the Mastodon ( https://github.com/mastodon/mastodon/ ) API. Feature complete for public API as of Mastodon version 4.5.8 and easy to get started with:

from mastodon import Mastodon

# Register your app! This only needs to be done once (per server, or when
# distributing rather than hosting an application, most likely per device and server).
# Uncomment the code and substitute in your information:
'''
Mastodon.create_app(
    'pytooterapp',
    api_base_url = 'https://mastodon.social',
    to_file = 'pytooter_clientcred.secret'
)
'''

# Then, log in. This can be done every time your application starts, or you can use the persisted information:
mastodon = Mastodon(client_id = 'pytooter_clientcred.secret',)
print(mastodon.auth_request_url())

# open the URL in the browser and paste the code you get
mastodon.log_in(
    code=input("Enter the OAuth authorization code: "),
    to_file="pytooter_usercred.secret"
)

# To post, create an actual API instance:
mastodon = Mastodon(access_token = 'pytooter_usercred.secret')
mastodon.toot('Tooting from Python using #mastodonpy !')

You can install Mastodon.py via pypi:

pip install Mastodon.py

We currently try to support Python 3.7 and above, and try to at least not break Python 3 versions below that. Python 2 support is no longer a goal.

Full documentation and basic usage examples can be found at https://mastodonpy.readthedocs.io/en/stable/ . Some more extensive examples can be found at https://github.com/halcy/MastodonpyExamples

If you have any questions about using the library or think you have found a bug, please feel free to open an issue, a github discussion thread, or to just directly contact @halcy@icosahedron.website on the Fediverse or .halcy on Discord - we’ll try to respond as quickly as possible.

Acknowledgements

Mastodon.py contains work by a large amount of contributors, many of which have put significant work into making it a better library. You can find some information about who helped with which particular feature or fix in the changelog.

https://circleci.com/gh/halcy/Mastodon.py.svg?style=svg https://codecov.io/gh/halcy/Mastodon.py/branch/master/graph/badge.svg

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mastodon_py-2.2.0.tar.gz (11.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mastodon_py-2.2.0-py3-none-any.whl (129.8 kB view details)

Uploaded Python 3

File details

Details for the file mastodon_py-2.2.0.tar.gz.

File metadata

  • Download URL: mastodon_py-2.2.0.tar.gz
  • Upload date:
  • Size: 11.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for mastodon_py-2.2.0.tar.gz
Algorithm Hash digest
SHA256 5bd4f0c2371087cb70330f1ec1fb8bec4ea2c88353c3f5e3aecef8c193285a94
MD5 7ad42611458f23ffd9601392b593bbad
BLAKE2b-256 be3636526b91beb41949c6a96b5b8653821f2735b613d815b03103da6dd4b1a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for mastodon_py-2.2.0.tar.gz:

Publisher: publish.yml on halcy/Mastodon.py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mastodon_py-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: mastodon_py-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 129.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for mastodon_py-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 54208d5561162072eb746db24190b3a66be9e854bc4ba048a15b56640ae3367f
MD5 711259b63b6fae0290f2cc12d1bbad0e
BLAKE2b-256 c9dc1153c0d5abd39a86fdc62d6b89ab5affabcd00a68713aa3ce4d09d8b0295

See more details on using hashes here.

Provenance

The following attestation bundles were made for mastodon_py-2.2.0-py3-none-any.whl:

Publisher: publish.yml on halcy/Mastodon.py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page