アクセストークンの取得
APIを使い始めるには、APIを利用するアカウントに紐づいたアクセストークンを取得する必要があります。 このドキュメントでは、アクセストークンを取得する手順を説明した後、基本的なAPIの使い方を説明します。
基本的に、APIはリクエストにはアクセストークンが必要となります。 アクセストークンは、ユーザーに紐づいた認証情報で、APIを利用するユーザーを識別するとともに、アクセストークンごとにどういった操作の権限を持っているかが管理されます。
ユーザーとそのユーザーに紐づいたアクセストークンは一対多の関係であり、あるユーザーに対して複数のアクセストークンが発行され得ます。
あなた自分自身のアクセストークンは簡単に取得できるほか、あなたのアプリケーションを使用することになる不特定のユーザーのアクセストークンを取得することもできます。
- 前者の場合: 「自分自身のアクセストークンを手動発行する」 に進む
- 後者の場合: 「アプリケーション利用者にアクセストークンの発行をリクエストする」 に進む
自分自身のアクセストークンを手動発行する
Misskey Webの「設定 > API」で、自分のアクセストークンを発行できます。
アクセストークンは他人に知られないようにしてください。
アプリケーション利用者にアクセストークンの発行をリクエストする
アプリケーションを利用するユーザー(以下単に「ユーザー」と呼びます)のアクセストークンを取得するには、以下の方法の一つを使います。
MiAuth方式でのアクセストークン取得方式
v12.27.0以降で使用できる、Misskey独自の簡素な認証方法について説明しています。
OAuth方式でのアクセストークン取得方式
v2023.9.0以降で使用できる、OAuth2.0方式での認証方法について説明しています。
アプリ作成方式でのアクセストークン取得方法(旧来型)
MiAuth導入以前(v12.27.0未満)でのアクセストークン取得方法について説明しています。
APIの利用
アクセストークンが取得できたら、各種エンドポイントにリクエストすることでAPIの利用が行えます。
- HTTP APIはすべてPOSTで、リクエスト/レスポンスともにJSON形式です(drive/files/createを除く)。
- 要求ヘッダーに
Content-Type: application/json
を指定します。 - アクセストークンは、
i
というパラメータ名でリクエストボディJSONに含めます。 - ベースURLは
https://{サーバーのドメイン}/api
です。
Authorization headerを使う方式
以下のようにヘッダーのAuthorization
フィールドを指定します。
fetch("https://misskey.io/api/notes/create", {
method: 'POST',
body: JSON.stringify({
text: "Hello Misskey API World with My Application!"
}),
headers: {
Authorization: `Bearer ${accessToken}`,
'Content-Type': 'application/json',
},
credentials: 'omit',
});
iを使う方式
アクセストークン付きのボディの例(metaの場合):
{
"i": "HogEFugA1341",
"detail": false
}
APIの詳細は、APIリファレンスを参照してください。
MisskeyはRESTを採用していません。
また、MisskeyはHTTP APIだけでなく、ストリーミングAPIも提供しています。ストリーミングAPIの詳細はこちらのドキュメントを参照してください。