🔑Elice ログイン連携開発ガイド

このドキュメントでは、EliceにOAuthを使用してログイン連携するための開発手順について説明します。

1. アプリケーションの登録

Eliceのログイン連携を行うには、まずアプリケーション名とリダイレクトURIを登録する必要があります。以下の情報を backend@elicer.com までお送りいただくと、登録後に案内いたします。

  • アプリケーション名

  • Redirect URI(最大5つ、httpsが必須)

    • ログイン後に結果を受け取るページのアドレスを入力します(例:https://my-site.com/elice/ouath/okay)

登録が完了した後、以下の情報を案内いたします。

  • client_id

  • client_secret

  • ELICE_WEB_URL (開発)

  • ELICE_SERVER_URL (開発)

  • ELICE_WEB_URL (本番)

  • ELICE_SERVER_URL (本番)

2. Elice ログイン連携のURLを生成する

Elice ログイン連携ボタンをクリックした時に、Elice ログイン画面に移動させるためのAPIの呼び出し方法をご紹介します。

以下のリクエストパラメータを埋めてAPIを呼び出すと、ユーザーはElice ログイン画面にリダイレクトされます。

ログインが完了すると、結果と共にRedirect URIに再度リダイレクトされます。

リクエストURL情報

メソッドリクエストURLレスポンス形式説明

GET

https://{ELICE_WEB_URL}/oauth/authorize

URLリダイレクト

Elice ログイン認証リクエスト

リクエストパラメータ情報

リクエストパラメータ名タイプ必須デフォルト値説明

client_id

string

Y

-

アプリケーション登録時に発行されたClient IDの値

redirect_uri

string

Y

-

アプリケーション登録時に入力したRedirect URIの値のうちの1つ(URLエンコードを適用する必要があります)

state

string

Y

-

セキュリティのために毎回新しいランダムな文字列値を生成します

scope

string

Y

read

カンマで区切られた権限のリスト

lang

string

Y

ko

使用言語を識別するための値

リクエスト例

curl -X GET "https://{ELICE_WEB_URL}/oauth/authorize?client_id=myclientid&redirect_uri=redirect_uri=https%3A%2F%2Fmy-site.com%2Felice%2Fouath%2Fokay&state=om22bsq0jz&scope=read&lang=ko"

レスポンス例

HTTP/1.1 302 Found
Location: https://my-site.com/elice/ouath/okay?code=okaycode12345&state=om22bsq0jz

3. アクセストークンの取得リクエスト

Redirect URIにリダイレクトされ、クエリストリングを介して受け取った認証コード(code)は、アクセストークンの発行に使用されます。

認証コードは一度限りであり、アクセストークンを1回発行した後は再利用できません。

アクセストークンは、後続のユーザー情報APIなどのElice REST APIの呼び出し時に使用されます。

このAPIは、ユーザーのブラウザではなく、サーバーで実行する必要があります。

リクエストURL情報

メソッドリクエストURLレスポンス形式説明

POST

https://{ELICE_SERVER_URL}/oauth/token

json

アクセストークンの取得リクエスト

リクエストパラメータ情報

リクエストパラメータ名タイプ必須デフォルト値説明

client_id

string

Y

-

アプリケーション登録時に発行されたClient IDの値

client_secret

string

Y

-

アプリケーション登録時に発行されたClient Secretの値

code

string

Y

-

Redirect URIを介して受け取った認証コードの値

リクエスト例

curl -X POST "https://{ELICE_SERVER_URL}/oauth/token" \
    -H "Content-Type: application/json" \
    -d '{"client_id":"myclientid","client_secret":"myclientsecret","code": "okaycode12345"}'

レスポンス情報

フィールドタイプ説明

access_token

string

アクセストークン(発行から1時間後に期限切れ)

レスポンス例

HTTP/1.1 200 OK
Content-Type: application/json

{
"access_token": "your_access_token"
}

4. アクセストークンを使用してユーザー情報APIを呼び出す

アクセストークンを使用して、ユーザー情報の取得APIを呼び出すことができます。

リクエストURL情報

メソッド認証リクエストURLレスポンス形式説明

GET

OAuth2.0

https://{ELICE_SERVER_URL}/oauth/account

JSON

ユーザー情報の取得

リクエストパラメータ情報

リクエストパラメータはありませんが、要求URLで呼び出す場合は、次のように要求ヘッダにアクセストークン値を渡す必要があります。

リクエストヘッダ

リクエストヘッダ名説明

Authorization

次の形式の値: Bearer {アクセストークン}

リクエスト例

curl -X GET "https://{ELICE_SERVER_URL}/oauth/account" \
    -H "Authorization: Bearer your_access_token"

レスポンス情報

フィールドタイプ必須説明

id

String

Y

ユーザーの識別情報

fullname

String

Y

ユーザー名

email

String

Y

ユーザーのメールアドレス

phone

String

Y

ユーザーの携帯電話番号

profile_url

String

Y

ユーザープロフィール写真のURL

locale

String

Y

ユーザーの地域情報

レスポンス例

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": 12345,
  "fullname": "John Doe",
  "email": "john.doe@example.com",
  "phone": "010-1234-5678",
  "profile_url": "https://example.com/profile/johndoe",
  "locale": "ko"
}

Last updated