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"