diff options
Diffstat (limited to 'docs')
-rw-r--r-- | docs/index.rst | 117 |
1 files changed, 109 insertions, 8 deletions
diff --git a/docs/index.rst b/docs/index.rst index a91cfb7..e7c9366 100644 --- a/docs/index.rst +++ b/docs/index.rst | |||
@@ -1,5 +1,7 @@ | |||
1 | Mastodon.py | 1 | Mastodon.py |
2 | =========== | 2 | =========== |
3 | .. py:module:: mastodon | ||
4 | .. py:class: Mastodon | ||
3 | 5 | ||
4 | .. code-block:: python | 6 | .. code-block:: python |
5 | 7 | ||
@@ -37,14 +39,114 @@ as a single python module. By default, it talks to the | |||
37 | `Mastodon flagship instance`_, but it can be set to talk to any | 39 | `Mastodon flagship instance`_, but it can be set to talk to any |
38 | node running Mastodon. | 40 | node running Mastodon. |
39 | 41 | ||
42 | A note about IDs | ||
43 | ---------------- | ||
44 | Mastodons API uses IDs in several places: User IDs, Toot IDs, ... | ||
45 | |||
46 | While debugging, it might be tempting to copy-paste in IDs from the | ||
47 | web interface into your code. This will not work, as the IDs on the web | ||
48 | interface and in the URLs are not the same as the IDs used internally | ||
49 | in the API, so don't do that. | ||
50 | |||
51 | Return values | ||
52 | ------------- | ||
40 | Unless otherwise specified, all data is returned as python | 53 | Unless otherwise specified, all data is returned as python |
41 | dictionaries, matching the JSON format used by the API. | 54 | dictionaries, matching the JSON format used by the API. |
42 | For complete documentation on what every function returns, | ||
43 | check the `Mastodon API docs`_, or just play around a bit - the | ||
44 | format of the data is generally very easy to understand. | ||
45 | 55 | ||
46 | .. py:module:: mastodon | 56 | User dicts |
47 | .. py:class: Mastodon | 57 | ~~~~~~~~~~ |
58 | .. code-block:: python | ||
59 | |||
60 | mastodon.account(<numerical id>) | ||
61 | # Returns the following dictionary: | ||
62 | { | ||
63 | 'display_name': The user's display name | ||
64 | 'acct': The user's account name as username@domain (@domain omitted for local users) | ||
65 | 'following_count': How many people they follow | ||
66 | 'url': Their URL; usually 'https://mastodon.social/users/<acct>' | ||
67 | 'statuses_count': How many statuses they have | ||
68 | 'followers_count': How many followers they have | ||
69 | 'avatar': URL for their avatar | ||
70 | 'note': Their bio | ||
71 | 'header': URL for their header image | ||
72 | 'id': Same as <numerical id> | ||
73 | 'username': The username (what you @ them with) | ||
74 | } | ||
75 | |||
76 | Toot dicts | ||
77 | ~~~~~~~~~~ | ||
78 | .. code-block:: python | ||
79 | |||
80 | mastodon.toot("Hello from Python") | ||
81 | # Returns the following dictionary: | ||
82 | { | ||
83 | 'sensitive': Denotes whether the toot is marked sensitive | ||
84 | 'created_at': Creation time | ||
85 | 'mentions': A list of account dicts mentioned in the toot | ||
86 | 'uri': Descriptor for the toot | ||
87 | EG 'tag:mastodon.social,2016-11-25:objectId=<id>:objectType=Status' | ||
88 | 'tags': A list of hashtag dicts used in the toot | ||
89 | 'in_reply_to_id': Numerical id of the toot this toot is in response to | ||
90 | 'id': Numerical id of this toot | ||
91 | 'reblogs_count': Number of reblogs | ||
92 | 'favourites_count': Number of favourites | ||
93 | 'reblog': Denotes whether the toot is a reblog | ||
94 | 'url': URL of the toot | ||
95 | 'content': Content of the toot, as HTML: '<p>Hello from Python</p>' | ||
96 | 'favourited': Denotes whether the logged in user has favourited this toot | ||
97 | 'account': Account dict for the logged in account | ||
98 | } | ||
99 | |||
100 | Relationship dicts | ||
101 | ~~~~~~~~~~~~~~~~~~ | ||
102 | .. code-block:: python | ||
103 | |||
104 | mastodon.account_follow(<numerical id>) | ||
105 | # Returns the following dictionary: | ||
106 | { | ||
107 | 'followed_by': Boolean denoting whether they follow you back | ||
108 | 'following': Boolean denoting whether you follow them | ||
109 | 'id': Numerical id (same one as <numerical id>) | ||
110 | 'blocking': Boolean denoting whether you are blocking them | ||
111 | } | ||
112 | |||
113 | Notification dicts | ||
114 | ~~~~~~~~~~~~~~~~~~ | ||
115 | .. code-block:: python | ||
116 | |||
117 | mastodon.notifications()[0] | ||
118 | # Returns the following dictionary: | ||
119 | { | ||
120 | 'id': id of the notification. | ||
121 | 'type': "mention", "reblog", "favourite" or "follow". | ||
122 | 'status': In case of "mention", the mentioning status. | ||
123 | In case of reblog / favourite, the reblogged / favourited status. | ||
124 | 'account': User dict of the user from whom the notification originates. | ||
125 | } | ||
126 | |||
127 | Context dicts | ||
128 | ~~~~~~~~~~~~~ | ||
129 | .. code-block:: python | ||
130 | |||
131 | mastodon.status_context(<numerical id>) | ||
132 | # Returns the following dictionary: | ||
133 | { | ||
134 | 'descendants': A list of toot dicts | ||
135 | 'ancestors': A list of toot dicts | ||
136 | } | ||
137 | |||
138 | Media dicts | ||
139 | ~~~~~~~~~~~ | ||
140 | .. code-block:: python | ||
141 | |||
142 | mastodon.media_post("image.jpg", "image/jpeg") | ||
143 | # Returns the following dictionary: | ||
144 | { | ||
145 | 'text_url': The display text for the media (what shows up in toots) | ||
146 | 'preview_url': The URL for the media preview | ||
147 | 'type': Media type, EG 'image' | ||
148 | 'url': The URL for the media | ||
149 | } | ||
48 | 150 | ||
49 | App registration and user authentication | 151 | App registration and user authentication |
50 | ---------------------------------------- | 152 | ---------------------------------------- |
@@ -91,7 +193,6 @@ This function allows you to get information about a users notifications. | |||
91 | 193 | ||
92 | .. automethod:: Mastodon.notifications | 194 | .. automethod:: Mastodon.notifications |
93 | 195 | ||
94 | |||
95 | Reading data: Accounts | 196 | Reading data: Accounts |
96 | ---------------------- | 197 | ---------------------- |
97 | These functions allow you to get information about accounts and | 198 | These functions allow you to get information about accounts and |
@@ -103,7 +204,6 @@ their relationships. | |||
103 | .. automethod:: Mastodon.account_following | 204 | .. automethod:: Mastodon.account_following |
104 | .. automethod:: Mastodon.account_followers | 205 | .. automethod:: Mastodon.account_followers |
105 | .. automethod:: Mastodon.account_relationships | 206 | .. automethod:: Mastodon.account_relationships |
106 | .. automethod:: Mastodon.account_suggestions | ||
107 | .. automethod:: Mastodon.account_search | 207 | .. automethod:: Mastodon.account_search |
108 | 208 | ||
109 | Writing data: Statuses | 209 | Writing data: Statuses |
@@ -113,11 +213,11 @@ interact with already posted statuses. | |||
113 | 213 | ||
114 | .. automethod:: Mastodon.status_post | 214 | .. automethod:: Mastodon.status_post |
115 | .. automethod:: Mastodon.toot | 215 | .. automethod:: Mastodon.toot |
116 | .. automethod:: Mastodon.status_delete | ||
117 | .. automethod:: Mastodon.status_reblog | 216 | .. automethod:: Mastodon.status_reblog |
118 | .. automethod:: Mastodon.status_unreblog | 217 | .. automethod:: Mastodon.status_unreblog |
119 | .. automethod:: Mastodon.status_favourite | 218 | .. automethod:: Mastodon.status_favourite |
120 | .. automethod:: Mastodon.status_unfavourite | 219 | .. automethod:: Mastodon.status_unfavourite |
220 | .. automethod:: Mastodon.status_delete | ||
121 | 221 | ||
122 | Writing data: Accounts | 222 | Writing data: Accounts |
123 | ---------------------- | 223 | ---------------------- |
@@ -137,6 +237,7 @@ to attach media to statuses. | |||
137 | 237 | ||
138 | .. automethod:: Mastodon.media_post | 238 | .. automethod:: Mastodon.media_post |
139 | 239 | ||
240 | |||
140 | .. _Mastodon: https://github.com/Gargron/mastodon | 241 | .. _Mastodon: https://github.com/Gargron/mastodon |
141 | .. _Mastodon flagship instance: http://mastodon.social/ | 242 | .. _Mastodon flagship instance: http://mastodon.social/ |
142 | .. _Mastodon api docs: https://github.com/Gargron/mastodon/wiki/API | 243 | .. _Mastodon api docs: https://github.com/Gargron/mastodon/wiki/API |