Type-safe Misskey API bindings for ReScript, generated from OpenAPI specs.
Supports Misskey instances. All endpoints are fully typed.
let client = Misskey.connect("https://misskey.io", ~token="your-token")
// Post a note
await client->Misskey.Notes.create("Hello, Misskey!", ())
// Read timeline
let notes = await client->Misskey.Notes.timeline(#home, ~limit=20, ())npm install @f3liz/rescript-misskey-apiIf you are using ReScript, add to your rescript.json:
{
"dependencies": ["@f3liz/rescript-misskey-api"]
}Two layers:
-
High-level API (
Misskey,Cherrypick): Simplified wrappers for common operations (notes, timeline, streaming). -
Generated API (
MisskeyIoWrapper,KokonectLinkWrapper): Complete bindings for all 400+ endpoints, auto-generated from OpenAPI specs.
Access any endpoint not covered by the high-level wrapper:
let wrapperClient = Misskey.connect("...")->Misskey.wrapperConnect
open MisskeyIoWrapper
let result = await Admin.postAdminShowUser({userId: "..."}, ~client=wrapperClient)let client = Cherrypick.connect("https://kokonect.link", ~token="...")
await client->Cherrypick.Notes.create("Hello Cherrypick!", ())To update bindings from the latest OpenAPI specs:
npm run generateFetches specs from misskey.io and kokonect.link and regenerates src/generated/.
MIT