Misskey API Documentation: https://slippy.xyz/api-doc
Check the docs
directory for more information.
For examples on given endpoints, please check the corresponding _test.go
file,
they have at least one ExampleService_XYZ
function, examples:
Status | Endpoint Group | Implementation Issue | Note |
---|---|---|---|
✅ | antennas | #3 | |
✅ | app | #5 | |
✅ | clips | #8 | |
✅ | drive | #9 | |
✅ | federation | #4 | |
✅ | following | #10 | |
✅ | groups | #19 | |
✅ | hashtags | #12 | |
✅ | meta | ||
✅ | notes | #6 | |
✅ | notifications | #15 | |
✅ | reactions | #14 | |
admin | #21 | In Progress (84%) | |
❌ | account | ||
❌ | auth | ||
❌ | channels | ||
❌ | charts | #7 | |
❌ | list | #20 | |
❌ | messaging | #13 | |
❌ | pages | #16 | |
❌ | users | #17 |
For detailed examples, check the example
directory.
package main
import (
"log"
"os"
"github.com/sirupsen/logrus"
"github.com/yitsushi/go-misskey"
"github.com/yitsushi/go-misskey/core"
"github.com/yitsushi/go-misskey/services/meta"
)
func main() {
client, err := misskey.NewClientWithOptions(
misskey.WithAPIToken(os.Getenv("MISSKEY_TOKEN")),
misskey.WithBaseURL("https", "slippy.xyz", ""),
misskey.WithLogLevel(logrus.DebugLevel),
)
if err != nil {
logrus.Error(err.Error())
}
stats, err := client.Meta().Stats()
if err != nil {
log.Printf("[Meta] Error happened: %s", err)
return
}
log.Printf("[Stats] Instances: %d", stats.Instances)
log.Printf("[Stats] NotesCount: %d", stats.NotesCount)
log.Printf("[Stats] UsersCount: %d", stats.UsersCount)
log.Printf("[Stats] OriginalNotesCount: %d", stats.OriginalNotesCount)
log.Printf("[Stats] OriginalUsersCount: %d", stats.OriginalUsersCount)
}
Navigate to Settings > API
and there you generate a new token.
There is a logging system, right now it's not very wide spread in the codebase, but if you turn it on, you will be able to see:
- all request with method, endpoint and body
- all responds with status code, from what endpoint told and the body
To enable debug mode, just change the LogLevel
to DebugLevel
:
client, _ := misskey.NewClientWithOptions(
misskey.WithAPIToken(os.Getenv("MISSKEY_TOKEN")),
misskey.WithBaseURL("https", "slippy.xyz", ""),
misskey.WithLogLevel(logrus.DebugLevel),
)
The output should look like this:
DEBU[0000] POST https://slippy.xyz/api/antennas/show _type=request
DEBU[0000] {"antennaId":"8dbpybhulw","i":"my misskey token"} _type=request
DEBU[0000] {"id":"8dbpybhulw","createdAt":"2020-10-13T16:03:22.674Z","name":"Genshin Impact","keywords":[["genshin"]],"excludeKeywords":[[""]],"src":"all","userListId":null,"userGroupId":null,"users":[""],"caseSensitive":false,"notify":false,"withReplies":true,"withFile":false,"hasUnreadNote":false} _type=response code=200 from="https://slippy.xyz/api/antennas/show"