export const description = ` ## Usage **APIはすべてPOSTでリクエスト/レスポンスともにJSON形式です。** 一部のAPIは認証情報(アクセストークン)が必要です。リクエストの際に\`i\`というパラメータでアクセストークンを添付してください。 ### 自分のアカウントのアクセストークンを取得する 「設定 > API」で、自分のアクセストークンを取得できます。 > アカウントを不正利用される可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。 ### アプリケーションとしてアクセストークンを取得する 直接ユーザーのアクセストークンをアプリケーションが扱うのは危険なので、 アプリケーションからAPIを利用する際には、アプリケーションとアプリケーションを利用するユーザーが結び付けられた専用のアクセストークンをMisskeyに発行してもらいます。 #### 1.アプリケーションを登録する まず、あなたのアプリケーションやWebサービス(以後、あなたのアプリと呼びます)をMisskeyに登録します。 [デベロッパーセンター](/dev)にアクセスし、「アプリ > アプリ作成」からアプリを作成してください。 フォームの記入欄の説明は以下の通りです: | 名前 | 説明 | |---|---| | アプリケーション名 | あなたのアプリの名称。 | | アプリの概要 | あなたのアプリの簡単な説明や紹介。 | | コールバックURL | ユーザーが後述する認証フォームで認証を終えた際にリダイレクトするURLを設定できます。あなたのアプリがWebサービスである場合に有用です。 | | 権限 | あなたのアプリが要求する権限。ここで要求した機能だけがAPIからアクセスできます。 | 登録が済むとあなたのアプリのシークレットキーが入手できます。このシークレットキーは後で使用します。 > アプリに成りすまされる可能性があるため、極力このシークレットキーは公開しないようにしてください。

#### 2.ユーザーに認証させる アプリを使ってもらうには、ユーザーにアカウントへのアクセスの許可をもらう必要があります。 認証セッションを開始するには、%API_URL%/auth/session/generate へパラメータに appSecret としてシークレットキーを含めたリクエストを送信します。 リクエスト形式はJSONで、メソッドはPOSTです。 レスポンスとして認証セッションのトークンや認証フォームのURLが取得できるので、認証フォームのURLをブラウザで表示し、ユーザーにフォームを提示してください。 あなたのアプリがコールバックURLを設定している場合、 ユーザーがあなたのアプリの連携を許可すると設定しているコールバックURLに token という名前でセッションのトークンが含まれたクエリを付けてリダイレクトします。 あなたのアプリがコールバックURLを設定していない場合、ユーザーがあなたのアプリの連携を許可したことを(何らかの方法で(たとえばボタンを押させるなど))確認出来るようにしてください。 #### 3.ユーザートークンを取得する ユーザーが連携を許可したら、%API_URL%/auth/session/userkey へ次のパラメータを含むリクエストを送信します: | 名前 | 型 | 説明 | |---|---|---| | appSecret | string | アプリのシークレットキー | | token | string | セッションのトークン | 上手くいけば、認証したユーザーのユーザートークンがレスポンスとして取得できます。おめでとうございます! ユーザートークンが取得できたら、「ユーザーのユーザートークン+あなたのアプリのシークレットキーをsha256したもの」をアクセストークンとして、APIにリクエストできます。 アクセストークンの生成方法を擬似コードで表すと次のようになります:
const i = sha256(userToken + secretKey);
`;