Skip to content
Takahiro Miyoshi edited this page Apr 19, 2020 · 9 revisions

LiveLog GraphQL API

このページでは、LiveLog GraphQL API について説明します。

エンドポイント

https://livelog.ku-unplugged.net/api/graphql

GraphQL について

GraphQL は API のためのクエリ言語です。 仕様は http://spec.graphql.org/ で定められており、LiveLog GraphQL API はできる限りこれに準じています。 GraphQL について知るには、公式ドキュメント https://graphql.org/learn/ を参照してください。

LiveLog GraphiQL

GraphiQL は GraphQL API をブラウザで試すことのできる IDE です。 LiveLog では https://livelog.ku-unplugged.net/graphiql で LiveLog GraphQL API 用にセットアップしたものを提供しています。

ただし、こちらでは public なスキーマ・データにしかアクセスできないようになっています。 たとえば、公開設定が「サークル内」の曲の動画・音源にアクセスするには、適切なスコープを持ったアクセストークンを使う必要があります。

認証

LiveLog GraphQL API は OAuth 2.0 に則って保護されています。 そのため、API を利用するには、アクセストークンを取得し、Authorization リクエストヘッダに含める必要があります。 また、LiveLog では Auth0 を利用しており、アクセストークンは Auth0 でホスティングされている認可サーバーにより発行されます。

Auth0 について

Auth0 は、IDaaS と呼ばれるもののひとつで、認証認可など Web 上の Identity にまつわる機能を Web サービスとして提供しています。 LiveLog ユーザーのメールアドレス・パスワードといった Identity 情報は Auth0 で管理されています。

LiveLog で利用してる Auth0 テナントのドメインは patient-bar-7812.auth0.com です。 Auth0 は OAuth 2.0 の拡張である OpenID Connect にも準拠しており、サポートされている機能を https://patient-bar-7812.auth0.com/.well-known/openid-configuration から確認できます。

セットアップ

はじめに、LiveLog に開発者登録します。 LiveLog にログインし、Developer ページ の「GitHub アカウントと連携して開発者登録する」ボタンを押します。

次に、LiveLog にクライアントアプリケーションを登録します。 Developer ページ の「アプリケーションを登録する」ボタンを押します。

フォームの「名前」にアプリケーション名を入力、適切な「アプリケーションの種類」を選択し、登録します。 アプリケーションの種類の詳細については https://auth0.com/docs/getting-started/set-up-app を参照してください。 リンク先からお察しの通り、フォームを送信した裏側では Auth0 Management API v2 で Auth0 へのクライアント登録を行っています。

アプリケーション登録が完了すると、Client ID と Client Secret が発行されます。 これで、アクセストークンを取得する準備が整いました。

より詳細なアクセストークンの取得方法は、アプリケーションの種類ごとに以下のドキュメントを参照してください。

Clone this wiki locally