]> git.mxchange.org Git - friendica.git/blob - doc/API-Mastodon.md
18af62be68713f1576a9ff6c19e3044f34a8b038
[friendica.git] / doc / API-Mastodon.md
1 # Mastodon API
2
3 * [Home](help)
4   * [Using the APIs](help/api)
5
6 ## Overview
7
8 Friendica provides the following endpoints defined in [the official Mastodon API reference](https://docs.joinmastodon.org/api/).
9
10 Authentication is the same as described in [Using the APIs](help/api#Authentication).
11
12 ## Clients
13
14 Supported mobile apps:
15
16 - Tusky
17 - Husky
18 - twitlatte
19
20 Unsupported mobile apps:
21
22 - [Subway Tooter](https://github.com/tateisu/SubwayTooter) Uses the wrong grant_type when requesting a token, possibly a problem in the server type detection of the app. See issue https://github.com/tateisu/SubwayTooter/issues/156
23 - [Mammut](https://github.com/jamiesanson/Mammut) States that the instance doesn't exist. Most likely an issue in the vitality check of the app, see issue https://github.com/jamiesanson/Mammut/issues/19
24 - [AndStatus](https://github.com/andstatus/andstatus) Doesn't provide all data at token request, see issue https://github.com/andstatus/andstatus/issues/537
25 - [Fedilab](https://framagit.org/tom79/fedilab) Automatically uses the legacy API, see issue: https://framagit.org/tom79/fedilab/-/issues/520
26
27 ## Entities
28
29 These endpoints use the [Mastodon API entities](https://docs.joinmastodon.org/entities/).
30
31 ## Implemented endpoints
32
33 - [`GET /api/v1/accounts/:id`](https://docs.joinmastodon.org/methods/accounts/#retrieve-information)
34 - [`GET /api/v1/accounts/:id/statuses`](https://docs.joinmastodon.org/methods/accounts/#retrieve-information)
35 - [`GET /api/v1/accounts/:id/followers`](https://docs.joinmastodon.org/methods/accounts/)
36 - [`GET /api/v1/accounts/:id/following`](https://docs.joinmastodon.org/methods/accounts/)
37 - [`GET /api/v1/accounts/:id/lists`](https://docs.joinmastodon.org/methods/accounts/)
38 - [`GET /api/v1/accounts/search`](https://docs.joinmastodon.org/methods/accounts)
39 - [`GET /api/v1/accounts/verify_credentials`](https://docs.joinmastodon.org/methods/accounts)
40 - [`GET /api/v1/blocks`](https://docs.joinmastodon.org/methods/accounts/blocks/)
41 - [`GET /api/v1/bookmarks`](https://docs.joinmastodon.org/methods/accounts/bookmarks/)
42 - [`GET /api/v1/custom_emojis`](https://docs.joinmastodon.org/methods/instance/custom_emojis/)
43     - Doesn't return unicode emojis since they aren't using an image URL
44
45
46 - [`GET /api/v1/directory`](https://docs.joinmastodon.org/methods/instance/directory/)
47 - [`GET /api/v1/favourites`](https://docs.joinmastodon.org/methods/accounts/favourites/)
48 - [`GET /api/v1/follow_requests`](https://docs.joinmastodon.org/methods/accounts/follow_requests#pending-follows)
49     - Returned IDs are specific to follow requests
50 - [`POST /api/v1/follow_requests/:id/authorize`](https://docs.joinmastodon.org/methods/accounts/follow_requests#accept-follow)
51     - `:id` is a follow request ID, not a regular account id
52 - [`POST /api/v1/follow_requests/:id/reject`](https://docs.joinmastodon.org/methods/accounts/follow_requests#reject-follow)
53     - `:id` is a follow request ID, not a regular account id
54 - `POST /api/v1/follow_requests/:id/ignore`
55     - Friendica-specific, hides the follow request from the list and prevents the remote contact from retrying.
56     - `:id` is a follow request ID, not a regular account id
57     - Returns a [Relationship](https://docs.joinmastodon.org/entities/relationship) object.
58
59
60 - [`GET /api/v1/instance`](https://docs.joinmastodon.org/methods/instance#fetch-instance)
61 - [`GET /api/v1/instance/peers`](https://docs.joinmastodon.org/methods/instance#list-of-connected-domains)
62 - [`GET /api/v1/lists`](https://docs.joinmastodon.org/methods/timelines/lists/)
63 - [`GET /api/v1/lists/:id`](https://docs.joinmastodon.org/methods/timelines/lists/)
64 - [`GET /api/v1/lists/:id/accounts`](https://docs.joinmastodon.org/methods/timelines/lists/)
65 - [`GET /api/v1/media/:id`](https://docs.joinmastodon.org/methods/statuses/media/)
66 - [`GET /api/v1/mutes`](https://docs.joinmastodon.org/methods/accounts/mutes/)
67 - [`GET /api/v1/notifications`](https://docs.joinmastodon.org/methods/notifications/)
68 - [`GET /api/v1/notifications/:id`](https://docs.joinmastodon.org/methods/notifications/)
69 - [`GET /api/v1/preferences`](https://docs.joinmastodon.org/methods/accounts/preferences/)
70 - [`GET /api/v1/statuses/:id`](https://docs.joinmastodon.org/methods/statuses/)
71 - [`GET /api/v1/statuses/:id/context`](https://docs.joinmastodon.org/methods/statuses/)
72 - [`GET /api/v1/statuses/:id/reblogged_by`](https://docs.joinmastodon.org/methods/statuses/)
73 - [`GET /api/v1/statuses/:id/favourited_by`](https://docs.joinmastodon.org/methods/statuses/)
74 - [`GET /api/v1/suggestions`](https://docs.joinmastodon.org/methods/accounts/suggestions/)
75 - [`GET /api/v1/timelines/home`](https://docs.joinmastodon.org/methods/timelines/)
76 - [`GET /api/v1/timelines/list/:id`](https://docs.joinmastodon.org/methods/timelines/)
77 - [`GET /api/v1/timelines/public`](https://docs.joinmastodon.org/methods/timelines/)
78 - [`GET /api/v1/timelines/tag/:hashtag`](https://docs.joinmastodon.org/methods/timelines/)
79 - [`GET /api/v1/trends`](https://docs.joinmastodon.org/methods/instance/trends/)
80
81 ## Non-implemented endpoints
82
83 - [`GET /api/v1/instance/activity`](https://docs.joinmastodon.org/methods/instance#weekly-activity)