misstodon
Misskey Mastodon-compatible APIs, Getting my Misskey instance to work in Elk
Warning
This project is still in the early stage of development, and is not ready for production use.
Demo
Elk: https://elk.zone/misstodon.liuli.lol/public
Elk: https://elk.zone/mt_misskey_moe.liuli.lol/explore
Phanpy: https://phanpy.social/#/mt_misskey_io.liuli.lol/p
How to Use
Warning
liuli.lol
is a demonstration site and may not guarantee high availability. We recommend self-hosting for greater control.
Domain Name Prefixing Scheme (Recommended)
The simplest usage method is to specify the instance address using a domain name prefix.
- Replace underscores ("_") in the domain name with double underscores ("__").
- Replace dots (".") in the domain name with underscores ("_").
- Prepend "mt_" to the modified string.
- Append ".liuli.lol" to the modified string.
When processing misskey.io
according to the described steps, it will be transformed into the result: mt_misskey_io.liuli.lol
.
curl --request GET --url 'https://mt_misskey_io.liuli.lol/nodeinfo/2.0' | jq .
Self-Hosting with Default Instance Configuration
Edit the 'config.toml' file, and within the "[proxy]" section, modify the "fallback_server" field. For example:
[proxy]
fallback_server = "misskey.io"
If you are deploying using Docker Compose, you can specify the default instance by modifying the 'docker-compose.yml' file. Look for the 'MISSTODON_FALLBACK_SERVER' field within the Docker Compose configuration and set it to the desired default instance.
Instance Specification via Query Parameter
curl --request GET --url 'https://misstodon.liuli.lol/nodeinfo/2.0?server=misskey.io' | jq .
curl --request GET --url https://misstodon.liuli.lol/nodeinfo/2.0 --header 'x-proxy-server: misskey.io' | jq .
Running your own instance
The simplest way is to use Docker Compose. Download the docker-compose.yml file to your local machine. Customize it to your needs, particularly by changing the "MISSTODON_FALLBACK_SERVER" in the "environment" to your preferred Misskey instance domain. Afterward, run the following command:
docker-compose up -d
Important
For security and privacy, we strongly discourage using HTTP directly. Instead, consider configuring a TLS certificate or utilizing Misstodon's AutoTLS feature for enhanced security.
Roadmap
- .well-known
-
GET
/.well-known/webfinger
-
GET
/.well-known/nodeinfo
- Nodeinfo
- Auth
-
GET
/oauth/authorize
-
POST
/oauth/token
-
POST
/api/v1/apps
-
GET
/api/v1/apps/verify_credentials
- Instance
-
GET
/api/v1/instance
-
GET
/api/v1/custom_emojis
- Accounts
-
GET
/api/v1/accounts/lookup
-
GET
/api/v1/accounts/:user_id
-
GET
/api/v1/accounts/verify_credentials
-
PATCH
/api/v1/accounts/update_credentials
-
GET
/api/v1/accounts/relationships
-
GET
/api/v1/accounts/:user_id/statuses
-
GET
/api/v1/accounts/:user_id/following
-
GET
/api/v1/accounts/:user_id/followers
-
POST
/api/v1/accounts/:user_id/follow
-
POST
/api/v1/accounts/:user_id/unfollow
-
GET
/api/v1/follow_requests
-
POST
/api/v1/accounts/:user_id/mute
-
POST
/api/v1/accounts/:user_id/unmute
-
GET
/api/v1/bookmarks
-
GET
/api/v1/favourites
- Statuses
-
POST
/api/v1/statuses
-
GET
/api/v1/statuses/:status_id
-
GET
/api/v1/statuses/:status_id/context
-
POST
/api/v1/statuses/:status_id/favourite
-
POST
/api/v1/statuses/:status_id/unfavourite
-
POST
/api/v1/statuses/:status_id/bookmark
-
POST
/api/v1/statuses/:status_id/unbookmark
-
GET
/api/v1/statuses/:status_id/favourited_by
-
GET
/api/v1/statuses/:status_id/reblogged_by
- Timelines
-
GET
/api/v1/timelines/home
-
GET
/api/v1/timelines/public
-
GET
/api/v1/timelines/tag/:hashtag
- Push
-
GET
/api/v1/notifications
- Streaming
- Search
- Conversations
-
GET
/api/v1/conversations
- Trends
-
GET
/api/v1/trends/statuses
-
GET
/api/v1/trends/tags
- Media
-
POST
/api/v1/media
-
POST
/api/v2/media
Contributing Information about contributing to this project.
Contributors