77 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| extend ../BASE
 | |
| 
 | |
| block title
 | |
| 	| Getting Started
 | |
| 
 | |
| block content
 | |
| 	h1 Getting Started
 | |
| 
 | |
| 	p MisskeyはREST APIやStreaming APIを提供しており、プログラムからMisskeyの全ての機能を利用することができます。
 | |
| 	p それらのAPIを利用するには、まずAPIを利用したいアカウントのアクセストークンを取得する必要があります:
 | |
| 
 | |
| 	section
 | |
| 		h2 自分のアクセストークンを取得したい場合
 | |
| 		p 自分自身のアクセストークンは、設定 > API で確認できます。
 | |
| 		p.tip
 | |
| 			| アカウントを乗っ取られてしまう可能性があるため、トークンは第三者に教えないでください(アプリなどにも入力しないでください)。
 | |
| 			br
 | |
| 			| 万が一トークンが漏れたりその可能性がある場合は トークンを再生成できます。(副作用として、ログインしているすべてのデバイスでログアウトが発生します)
 | |
| 
 | |
| 	section
 | |
| 		h2 他人のアクセストークンを取得する
 | |
| 		p
 | |
| 			| 不特定多数のユーザーからAPIを利用したい場合、アプリケーションを作成します。
 | |
| 			br
 | |
| 			| アプリケーションを作成すると、ユーザーが連携を許可した時に、そのユーザーのアクセストークンを取得することができます。
 | |
| 		p アプリケーションを作成しアクセストークンを取得するまでの流れを見ていきます。
 | |
| 
 | |
| 		section
 | |
| 			h3 アプリケーションを作成する
 | |
| 			p まずはあなたのアプリケーションを作成しましょう。
 | |
| 			p
 | |
| 				| <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>ユーザーのアクセストークン+アプリのシークレットキーをsha512したもの</strong>として扱います。
 | |
| 
 | |
| 	p アクセストークンを取得できたら、あとは簡単です。REST APIなら、リクエストにアクセストークンを<code>i</code>としてパラメータに含めるだけです。
 | 
