# Misskey API Misskey API를 사용하여 Misskey 클라이언트, Misskey 연계 웹 서비스, 봇 등(이하 "애플리케이션"이라고 부릅니다)을 개발할 수 있습니다. 스트리밍 API도 있기 때문에 실시간 애플리케이션을 만들 수도 있습니다. API를 사용하려면 먼저 액세스 토큰을 취득해야 합니다. 이 문서에서는 액세스 토큰을 취득하는 절차를 설명한 후 기본적인 API 사용법을 설명합니다. ## 액세스 토큰 가져오기 기본적으로 API는 요청 시에 액세스 토큰이 필요합니다. API에 요청하는 것이 자기 자신인지, 불특정한 유저에게 사용하는 애플리케이션인지에 따라 취득 절차가 달라집니다. * 전자의 경우: [「자기 자신의 액세스 토큰을 수동으로 발급하기」](#自分自身のアクセストークンを手動発行する)로 진행 * 후자의 경우: [「애플리케이션 사용자에게 액세스 토큰 발급을 요청하기」](#アプリケーション利用者にアクセストークンの発行をリクエストする)로 진행 ### 자기 자신의 액세스 토큰을 수동으로 발급하기 「설정 > API」에서 자신의 액세스 토큰을 발급할 수 있습니다. [「API 사용 방법」으로 이동](#APIの使い方) ### 애플리케이션 사용자에게 액세스 토큰 발급을 요청하기 애플리케이션 사용자의 액세스 토큰을 취득하려면, 다음 순서로 발급을 요청합니다. #### 1 단계 UUID를 생성합니다. 이것을 세션 ID라고 부릅니다. > 이 세션 ID는 매번 새로 생성하는 것이 아닙니다. #### 2 단계 `{_URL_}/miauth/{session}`을 사용자의 브라우저에 입력합니다. `{session}` 부분은 세션 ID로 대체해서 입력합니다. > 예: `{_URL_}/miauth/c1f6d42b-468b-4fd2-8274-e58abdedef6f` 표시할 때 URL에 쿼리 매개변수로 몇 가지 옵션을 설정할 수 있습니다: * `name` ... 애플리케이션 이름 * > 예: `MissDeck` * `icon` ... 애플리케이션 아이콘의 이미지 URL * > 예: `https://missdeck.example.com/icon.png` * `callback` ... 인증이 끝난 후 리디렉션되는 URL * > 예: `https://missdeck.example.com/callback` * 리디렉션 할 시, `session`이라는 쿼리 매개변수로 세션 ID가 붙습니다. * `permission` ... 애플리케이션이 요구하는 권한 * > 예: `write:notes,write:following,read:drive` * 요구하는 권한을 `,`으로 구분해서 작성합니다. * 권한의 종류에 대해서는 [API 레퍼런스](/api-doc)에서 확인할 수 있습니다. #### 3 단계 사용자가 발급을 허용한 후, `{_URL_}/api/miauth/{session}/check`에 POST 요청을 하면 응답으로 액세스 토큰을 포함한 JSON이 반환됩니다. 응답에 포함되는 속성: * `token` ... 유저의 액세스 토큰 * `user` ... 유저 정보 [「API 사용 방법」으로 이동](#APIの使い方) ## API 사용 방법 **API는 모두 POST 방식이며, 요청/응답 모두 JSON 형식입니다. REST가 아닙니다.** 액세스 토큰은 `i`라는 매개변수로 요청에 포함됩니다. * [API 레퍼런스](/api-doc) * [스트리밍 API](./stream)