-
Notifications
You must be signed in to change notification settings - Fork 5
Home
LiveLog GraphQL API は未完成です。 バグ報告や機能リクエスト、質問、フィードバックは GitHub Issues・Slack・Twitter のいずれでも受け付けているので、気軽にお声掛けください。
https://livelog.ku-unplugged.net/api/graphql
GraphQL は API のためのクエリ言語です。 LiveLog GraphQL API は GraphQL Ruby を使って実装されています。 GraphQL について知るには、公式ドキュメント https://graphql.org/learn/ を参照してください。
GraphiQL は GraphQL API をブラウザで試すことのできる IDE です。 LiveLog では https://livelog.ku-unplugged.net/graphiql で LiveLog GraphQL API 用にセットアップしたものを提供しています。
LiveLog GraphQL API は OAuth 2.0 に則って保護されています。 そのため、API を利用するには、アクセストークンを取得し、Authorization リクエストヘッダに含める必要があります。 また、LiveLog では Auth0 を利用しており、アクセストークンは Auth0 の認可サーバーにより発行されます。
Auth0 は、IDaaS と呼ばれるもののひとつで、認証認可など 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 にログインし、開発者設定 の「GitHub アカウントと連携して開発者登録する」ボタンを押します。
次に、LiveLog にクライアントアプリケーションを登録します。 開発者設定の「アプリケーションを登録する」ボタンを押します。
フォームの「名前」にアプリケーション名を入力、適切な「アプリケーションの種類」を選択し、登録します。 アプリケーションの種類の詳細については https://auth0.com/docs/getting-started/set-up-app を参照してください。 リンク先からお察しの通り、フォームを送信した裏側では Auth0 Management API v2 で Auth0 へのクライアント登録を行っています。
アプリケーション登録が完了すると、Client ID と Client Secret が発行されます。 これで、アクセストークンを取得する準備が整いました。
LiveLog GraphQL API 用のアクセストークンを発行する場合は、認可エンドポイントまたはトークンエンドポイントの audience パラメータに https://livelog.ku-unplugged.net/api/
を指定してください。
また、利用可能なスコープの一覧は https://livelog.ku-unplugged.net/api/scopes で確認できます。
より具体的なアクセストークンの取得方法は、アプリケーションの種類ごとに以下のドキュメントを参照してください。
参考までに、https://github.com/sankichi92/livelog-client-sample-sinatra に Authorization Code フローでアクセストークンを取得し、LiveLog GraphQL API を叩いてアルバム URL を取得するサンプルアプリがあります。