LIFFを利用するには

LIFFを利用するには、まずLINE Developersコンソールでチャネルを作成する必要があります。

チャネルとは

チャネルは、LINEプラットフォームが提供する機能を、プロバイダーが開発するサービスで利用するための通信路です。LINEプラットフォームを利用するには、チャネルを作成し、サービスをチャネルに関連付けます。チャネルを作成するには、名前、説明文、およびアイコン画像が必要です。チャネルを作成すると、固有のチャネルIDが識別用に発行されます。

コンソールで作成できるのはLINEログインまたはMessaging APIのチャネルですが、どちらのチャネルでもLIFFアプリを利用できます。

LINEログインのチャネルでLIFFのサーバーAPIを利用する場合は、「6. チャネルアクセストークンを準備する」の手順に従って、チャネルアクセストークンを発行する必要があります。

注:LINEログインとMessaging API以外のサービスが関連付けられているチャネルでは、LIFFの利用はサポートされません。

チャネルの作成

1.コンソールにログインする

LINEアカウントへのログインに利用しているメールアドレスとパスワードまたはログイン画面に表示されるQRコードを使って、LINE Developersコンソールにログインします。

注:LINEアカウントをお持ちでない場合は、LINEをダウンロードし、LINEアカウントを作成してください。

コンソールにログイン

LINEログインダイアログ

2.開発者として登録する(初回ログイン時のみ)

名前とメールアドレスを入力して、LINE Developersコンソールで開発者アカウントを作成します。

開発者登録画面

3.新規プロバイダーを作成する

プロバイダー名を入力します。プロバイダーとは、アプリを提供する組織のことです。ご自分の名前や企業名を入力してください。

プロバイダー作成画面

4.チャネルを作成する

チャネルに必要な情報を入力します。

  • 「LINE」またはそれに類する文字列をチャネル名に含めることはできません。

チャネル作成画面

5.確認する

チャネルが作成されたことを確認します。

コンソールのホーム画面

6.チャネルアクセストークンを準備する

Messaging APIのチャネルの場合

チャネルの作成と同時にチャネルアクセストークンも発行されます。[チャネル基本設定]ページの[メッセージ送受信設定]セクションで、[アクセストークン(ロングターム)]フィールドの値を確認してください。このトークンの有効期間は非常に長く、期限切れを考慮する必要がありません。

LINEログインのチャネルの場合

APIを使ってチャネルアクセストークンを発行します。これを行うには、HTTP POSTリクエストを/v2/oauth/accessTokenエンドポイントに送信します。APIで発行できるチャネルアクセストークンの有効期間は30日です。

リクエストの例

curl -v -X POST https://api.line.me/v2/oauth/accessToken \
-H "Content-Type:application/x-www-form-urlencoded" \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'client_id={channel ID}' \
--data-urlencode 'client_secret={channel secret}'

リクエストが成功すると、チャネルアクセストークンがレスポンスとして返されます。

レスポンスの例

{
  "access_token":"{channel access token}",
  "expires_in":2592000,
  "token_type":"Bearer"
}

詳しくは、『Messaging APIリファレンス』の「チャネルアクセストークンを発行する」を参照してください。

次のステップ

これで、LIFFアプリ用のチャネルが作成されました。続いて、サンプルのLIFFアプリをデプロイする、またはLIFFアプリを開発します。

{{ $t("form.question.helpful") }}

{{ $t("form.question.detail") }}

{{ $t("form.question.improve") }}

{{ $t("form.info.start") }}{{ $t("form.info.link") }}{{ $t("form.info.end") }}


{{ $t("form.result.success") }}
{{ $t("form.result.error") }}
{{ $t("form.result.errorLink") }}