Skip to content

Latest commit

 

History

History
104 lines (70 loc) · 3.43 KB

JA-README.md

File metadata and controls

104 lines (70 loc) · 3.43 KB

English


misskey-hs

syuilo/MisskeyのAPIのHaskellライブラリ

使用方法

CLIツールとして

Configを準備する

Configファイルを以下の形式で作成し、~/.config/misskey-hs/config.yamlに配置してください。

token: <your_token>
instance_url: <your_instance_url>

例) TokenがMYTOKENHEREで、所属しているインスタンスがmisskey.ioの場合

token: MYTOKENHERE
instance_url: misskey.io

ツールの使い方

stack run --で、各種APIを呼び出すコマンドを使うことができます。
optparse-applicativeを使っているので、stack run -- --helpでヘルプが出ます。
サブコマンドで使いたいAPIを指定、各APIのRequestとして渡す値はオプションで指定します。

Usage sample

$ stack run -- users/show --username cj_bc_sd
[User {_user_id = ...}]
$ stack run -- --help
Usage: misskey-hs-exe COMMAND
  call Misskey API

Available options:
  -h,--help                Show this help text

Available commands:
  users/show               call users/show API
  users/notes              call users/notes API
  users/search             call users/search API
  users                    call users API

ライブラリとして

このライブラリは以下のモジュールを提供します:

module 説明
Web.Misskey.Type ライブラリで共通して使う方が定義されています
Web.Misskey.Api.Users.Show users/show用のAPIRequestと関数
Web.Misskey.Api.Users.Search users/search用のAPIRequestと関数
Web.Misskey.Api.Users.Notes users/Notes用のAPIRequestと関数
Web.Misskey.Api.Users.Users users用のAPIRequestと関数
Web.Misskey.Api.Users.Following users/following用のAPIRequestと関数
Web.Misskey.Api.Users.Followers users/followers用のAPIRequestと関数
Web.Misskey.Api.Notes.Create notes/create用のAPIRequestと関数
Web.Misskey.Api.Notes.Timeline notes/timeline用のAPIRequestと関数

Basic usage

APIを呼び出す関数はWeb.Misskey.Api.*にあります。
呼びたいAPIに対応する関数(例えばusers/showならusersShow)に、 各モジュールで定義されているAPIRequest型の値を与え、 MisskeyEnvとともにrunMisskeyを呼び出してください。

例. users/show APIリクエストを筆者([email protected])について飛ばして結果を出力する

import Web.Misskey.Api.Users.Show (usersShow, APIRequest(..))
import Web.Misskey.Type (User(..), MisskeyEnv(..))


main :: IO ()
main = do
    let env = MisskeyEnv ""                -- Misskey token.今回は必要ないので空文字列にします。
                         "virtual-kaf.fun" -- APIリクエストを飛ばすドメイン
        req = UserName "cj_bc_sd"          -- `UserName`は`usersShow`用のAPIRequestの値コンストラクターです

    -- APIを叩き、結果を返します
    usr <- runMisskey (usersShow req) env

    print usr

詳細はmisskey's api document(少し情報が欠けている模様)とHaddockを確認してください。