Python wrapper for the Mastodon (https://github.com/mastodon/mastodon) API.
Go to file
2022-09-21 22:47:52 +02:00
docs Documentation for processing unknown events in streaming. 2022-06-24 17:58:13 +02:00
mastodon Changed version 2022-09-21 22:47:52 +02:00
tests Fixed overseen test failure with new app name in "secret" file 2022-06-28 13:22:06 +02:00
.gitignore Update .gitignore to ignore pytest cache 2019-10-11 22:08:52 +02:00
.travis.yml Sunset 2.7 2019-07-23 12:16:23 +02:00
CHANGELOG.rst Prep release 1.5.1 2020-03-14 19:05:11 +01:00
DEVELOPMENT.md Add reactions to changelog 2020-02-29 18:52:20 +01:00
LICENSE Update LICENSE to reflect that this is not a single person project 2019-05-31 12:57:38 +02:00
MANIFEST.in Update MANIFEST.in 2018-05-06 01:46:42 +02:00
Pipfile Update Pipfile 2020-02-21 21:03:21 +01:00
Pipfile.lock Doc fixes, remove some broken code, note about blocks 2019-07-23 12:08:21 +02:00
README.md Changed version 2022-09-21 22:47:52 +02:00
setup.cfg add coverage reports to tests 2017-11-27 00:39:53 +01:00
setup.py New endpoints 2022-09-06 22:17:18 +02:00
tox.ini Sunset 2.7 2019-07-23 12:16:57 +02:00

Mastodonplus.py

Fork of Python wrapper for the Mastodon (https://github.com/mastodon/mastodon) API.
The goal of this fork is to add all 'new' Mastodon API's endpoints to the excellent halcy's wrapper.

Register your app! This only needs to be done once. Uncomment the code and substitute in your information.

from mastodon import Mastodon

Mastodon.create_app(
	'pytooterapp',
	api_base_url = 'https://your-mastodon.server'
	to_file = 'pytooter_clientcred.secret'
	)

Then login. This can be done every time, or use persisted.

from mastodon import Mastodon

mastodon = Mastodon(
	client_id = 'pytooter_clientcred.secret',
	api_base_url = 'https://your-mastodon.server'
	)  
mastodon.log_in(  
	'my_login_email@example.com',  
	'incrediblygoodpassword',  
	to_file = 'pytooter_usercred.secret'
	)

To post, create an actual API instance.

from mastodon import Mastodon  

 mastodon = Mastodon(  
	access_token = 'pytooter_usercred.secret',  
	api_base_url = 'https://your-mastodon.server>'  
	)  
mastodon.toot('Tooting from python using #mastodonpy !')  

You can install Mastodonplus.py via pypi:

# Python 3
pip3 install Mastodonplus.py

New features

  • 26.8.2022. Mastodon v3.6.0. Added New endpoints: /api/v1/admin/domain_blocks (list,show by id, delete and create)
  • 27.8.2022. Mastodon v3.1.4. Added 'remote" param to GET /api/v1/timelines/public REST API
  • 27.8.2022. Mastodon v3.1.4. Added GET /api/v1/streaming/public/remote (Mastodon.stream_remote())
  • 06.9.2022. Mastodon v3.2.0. Added POST /api/v1/accounts/:account_id/note with comment param. (Mastodon.accounts_note(id=account_id, comment='comment')
  • 06.9.2022. Mastodon v3.6.0. Added GET /api/v1/admin/ip_blocks (Mastodon.admin_ip_blocks_list(max_id=None, min_id=None, since_id=None, limit=None)
  • 06.9.2022. Mastodon v3.6.0. Added DELETE /api/v1/admin/ip_blocks/:id (Mastodon.admin_ip_blocks_delete(id=None)
  • 06.9.2022. Mastodon v3.6.0. Added POST /api/v1/admin/ip_blocks (Mastodon.admin_ip_blocks_create(self, ip=None, severity=None, comment=None, expires_in=None)
    severity possible values are: sign_up_requires_approval, sign_up_block, no_access