Mastodon API#
Overview#
Friendica provides the following endpoints defined in the official Mastodon API reference.
Authentication is the same as described in Using the APIs.
Clients#
Supported apps#
For supported apps please have a look at the FAQ
Unsupported apps#
Android#
- Fedilab Automatically uses the legacy API, see issue: https://framagit.org/tom79/fedilab/-/issues/520
- Mammut There are problems with the token request, see issue https://github.com/jamiesanson/Mammut/issues/19
iOS#
- Mast Doesn't accept the entered instance name. Claims that it is invalid (Message is: "Not a valid instance (maybe closed or dead)")
- Toot!
Entities#
These endpoints use the Mastodon API entities.
Implemented endpoints#
GET /api/v1/accounts/:idPOST /api/v1/accounts/:id/blockPOST /api/v1/accounts/:id/followGET /api/v1/accounts/:id/followersGET /api/v1/accounts/:id/followingGET /api/v1/accounts/:id/listsPOST /api/v1/accounts/:id/mutePOST /api/v1/accounts/:id/noteGET /api/v1/accounts/:id/statusesPOST /api/v1/accounts/:id/unfollowPOST /api/v1/accounts/:id/unblockPOST /api/v1/accounts/:id/unmuteGET /api/v1/accounts/relationshipsGET /api/v1/accounts/searchGET /api/v1/accounts/verify_credentialsPOST /api/v1/appsGET /api/v1/apps/verify_credentialsGET /api/v1/blocksGET /api/v1/bookmarksGET /api/v1/conversationsDELETE /api/v1/conversations/:idPOST /api/v1/conversations/:id/read-
- Doesn't return unicode emojis since they aren't using an image URL
GET /api/v1/favouritesGET /api/v1/follow_requests- Returned IDs are specific to follow requests
POST /api/v1/follow_requests/:id/authorize:idis a follow request ID, not a regular account id
POST /api/v1/follow_requests/:id/reject:idis a follow request ID, not a regular account id
-
POST /api/v1/follow_requests/:id/ignore- Friendica-specific, hides the follow request from the list and prevents the remote contact from retrying.
:idis a follow request ID, not a regular account id- Returns a Relationship object.
GET /api/v1/instance/rulesUndocumented, returns Terms of ServiceGET /api/v1/instance/peersGET /api/v1/listsPOST /api/v1/listsGET /api/v1/lists/:idPUT /api/v1/lists/:idDELETE /api/v1/lists/:idGET /api/v1/lists/:id/accountsPOST /api/v1/lists/:id/accountsDELETE /api/v1/lists/:id/accountsPOST /api/v1/markersGET /api/v1/markersPOST /api/v1/mediaGET /api/v1/media/:idPUT /api/v1/media/:idGET /api/v1/mutesGET /api/v1/notificationsGET /api/v1/notifications/:idPOST /api/v1/notifications/clearPOST /api/v1/notifications/:id/dismissGET /api/v1/polls/:idGET /api/v1/preferencesDELETE /api/v1/push/subscriptionGET /api/v1/push/subscriptionPUSH /api/v1/push/subscriptionPUT /api/v1/push/subscriptionGET /api/v1/scheduled_statusesDELETE /api/v1/scheduled_statuses/:idGET /api/v1/scheduled_statuses/:idGET /api/v1/searchPOST /api/v1/statuses- Additionally, to the static values
public,unlistedandprivate, thevisibilityparameter can contain a numeric value with a group id.
- Additionally, to the static values
GET /api/v1/statuses/:idDELETE /api/v1/statuses/:idGET /api/v1/statuses/:id/cardGET /api/v1/statuses/:id/contextGET /api/v1/statuses/:id/reblogged_byGET /api/v1/statuses/:id/favourited_byPOST /api/v1/statuses/:id/favouritePOST /api/v1/statuses/:id/unfavouritePOST /api/v1/statuses/:id/reblogPOST /api/v1/statuses/:id/unreblogPOST /api/v1/statuses/:id/bookmarkPOST /api/v1/statuses/:id/unbookmarkPOST /api/v1/statuses/:id/mutePOST /api/v1/statuses/:id/unmutePOST /api/v1/statuses/:id/pinPOST /api/v1/statuses/:id/unpinGET /api/v1/suggestionsGET /api/v1/timelines/directGET /api/v1/timelines/homeGET /api/v1/timelines/list/:idGET /api/v1/timelines/publicGET /api/v1/timelines/tag/:hashtagGET /api/v1/trendsGET /api/v2/search
Currently unimplemented endpoints#
These endpoints are planned to be implemented somewhere in the future.
PATCH /api/v1/accounts/update_credentialsPOST /api/v1/accounts/:id/remove_from_followersGET /api/v1/accounts/familiar_followersGET /api/v1/accounts/lookupGET /api/v1/trends/linksGET /api/v1/trends/statusesGET /api/v1/trends/tagsPOST /api/v1/polls/:id/votesGET /api/v1/statuses/{id:\d+}/sourceGET /api/v1/featured_tagsPOST /api/v1/featured_tagsDELETE /api/v1/featured_tags/:id
Dummy endpoints#
These endpoints are returning empty data to avoid error messages when using third party clients. They refer to features that don't exist in Friendica yet.
GET /api/v1/accounts/:id/identity_proofsGET /api/v1/announcementsGET /api/v1/endorsementsGET /api/v1/filters
Non supportable endpoints#
These endpoints won't be implemented at the moment. They refer to features or data that don't exist in Friendica yet.
POST /api/metaMisskey API endpoint.POST /api/v1/accountsGET /api/v1/accounts/:id/featured_tagsPOST /api/v1/accounts/:id/pinPOST /api/v1/accounts/:id/unpinGET /api/v1/admin/accountsGET /api/v1/admin/accounts/:idPOST /api/v1/admin/accounts/:id/{action}GET /api/v1/admin/reportsGET /api/v1/admin/reports/:idPOST /api/v1/admin/reports/:id/{action}POST /api/v1/announcements/:id/dismissPUT /api/v1/announcements/:id/reactions/{name}DELETE /api/v1/announcements/:id/reactions/{name}GET /api/v1/domain_blocksPOST /api/v1/domain_blocksDELETE /api/v1/domain_blocksDELETE /api/v1/emails/confirmationsGET /api/v1/featured_tags/suggestionsGET /api/v1/filters/:idPOST /api/v1/filters/:idPUT /api/v1/filters/:idDELETE /api/v1/filters/:idGET /api/v1/instance/activityPOST /api/v1/markersPOST /api/v1/reportsPUT /api/v1/scheduled_statuses/:idGET /api/v1/statuses/{id:\d+}/historyGET /api/v1/streamingDELETE /api/v1/suggestions/:id