🍕
This commit is contained in:
parent
0c0dc1ce3f
commit
5166fc92b6
17 changed files with 295 additions and 44 deletions
73
src/web/docs/api/getting-started.md
Normal file
73
src/web/docs/api/getting-started.md
Normal file
|
@ -0,0 +1,73 @@
|
|||
Getting Started
|
||||
================================================================
|
||||
MisskeyはREST APIやStreaming APIを提供しており、プログラムからMisskeyの全ての機能を利用することができます。
|
||||
それらのAPIを利用するには、まずAPIを利用したいアカウントのアクセストークンを取得する必要があります:
|
||||
|
||||
自分のアクセストークンを取得したい場合
|
||||
----------------------------------------------------------------
|
||||
自分自身のアクセストークンは、設定 > API で確認できます。
|
||||
<p class="tip">
|
||||
アカウントを乗っ取られてしまう可能性があるため、トークンは第三者に教えないでください(アプリなどにも入力しないでください)。<br>
|
||||
万が一トークンが漏れたりその可能性がある場合は トークンを再生成できます。(副作用として、ログインしているすべてのデバイスでログアウトが発生します)
|
||||
</p>
|
||||
|
||||
他人のアクセストークンを取得する
|
||||
----------------------------------------------------------------
|
||||
不特定多数のユーザーからAPIを利用したい場合、アプリケーションを作成します。
|
||||
アプリケーションを作成すると、ユーザーが連携を許可した時に、そのユーザーのアクセストークンを取得することができます。
|
||||
|
||||
アプリケーションを作成してアクセストークンを取得するまでの流れを説明します。
|
||||
|
||||
### アプリケーションを作成する
|
||||
まずはあなたのアプリケーションを作成しましょう。
|
||||
| <a href=#{dev_url} target="_blank">デベロッパーセンター</a>にアクセスし、アプリ > アプリ作成 に進みます。
|
||||
br
|
||||
| 次に、フォームに必要事項を記入します:
|
||||
dl
|
||||
dt アプリケーション名
|
||||
dd あなたのアプリケーションの名前。
|
||||
dt Named ID
|
||||
dd アプリを識別する/a-z-/で構成されたID。
|
||||
dt アプリの概要
|
||||
dd アプリの簡単な説明を入力してください。
|
||||
dt コールバックURL
|
||||
dd あなたのアプリケーションがWebアプリケーションである場合、ユーザーが後述するフォームで認証を終えた際にリダイレクトするURLを設定できます。
|
||||
dt 権限
|
||||
dd アプリケーションが要求する権限。ここで要求した機能だけがAPIからアクセスできます。
|
||||
p.tip
|
||||
| 権限はアプリ作成後も変更できますが、新たな権限を付与する場合、その時点で関連付けられているユーザーはすべて無効になります。
|
||||
p
|
||||
| アプリケーションを作成すると、作ったアプリの管理ページに進みます。
|
||||
br
|
||||
| アプリのシークレットキー(App Secret)が表示されていますので、メモしておいてください。
|
||||
p.tip
|
||||
| アプリに成りすまされる可能性があるため、極力このシークレットキーは公開しないようにしてください。
|
||||
|
||||
section
|
||||
h3 ユーザーに認証させる
|
||||
p あなたのアプリを使ってもらうには、ユーザーにアカウントへアクセスすることを許可してもらい、Misskeyにそのユーザーのアクセストークンを発行してもらう必要があります。
|
||||
p 認証セッションを開始するには、<code>#{api_url}/auth/session/generate</code>へパラメータに<code>app_secret</code>としてApp Secretを含めたリクエストを送信します。
|
||||
p
|
||||
| そうすると、レスポンスとして認証セッションのトークンや認証フォームのURLが取得できます。
|
||||
br
|
||||
| この認証フォームのURLをブラウザで表示し、ユーザーにフォームを表示してください。
|
||||
section
|
||||
h4 あなたのアプリがコールバックURLを設定している場合
|
||||
p ユーザーがアプリの連携を許可すると設定しているコールバックURLに<code>token</code>という名前でセッションのトークンが含まれたクエリを付けてリダイレクトします。
|
||||
section
|
||||
h4 あなたのアプリがコールバックURLを設定していない場合
|
||||
p ユーザーがアプリの連携を許可したことを(何らかの方法で(たとえばボタンを押させるなど))確認出来るようにしてください。
|
||||
p
|
||||
| 次に、<code>#{api_url}/auth/session/userkey</code>へ<code>app_secret</code>としてApp Secretを、<code>token</code>としてセッションのトークンをパラメータとして付与したリクエストを送信してください。
|
||||
br
|
||||
| 上手くいけば、認証したユーザーのアクセストークンがレスポンスとして取得できます。おめでとうございます!
|
||||
p
|
||||
| 以降アクセストークンは、<strong>ユーザーのアクセストークン+アプリのシークレットキーをsha256したもの</strong>として扱います。
|
||||
|
||||
p アクセストークンを取得できたら、あとは簡単です。REST APIなら、リクエストにアクセストークンを<code>i</code>としてパラメータに含めるだけです。
|
||||
|
||||
section
|
||||
h2 リクエスト形式
|
||||
p <code>application/json</code>を受け付けます。
|
||||
p.tip
|
||||
| 現在<code>application/x-www-form-urlencoded</code>も受け付けていますが、将来的にこのサポートはされなくなる予定です。
|
Loading…
Add table
Add a link
Reference in a new issue