Social APIリファレンス

OAuth

リクエストの例

curl -v -X POST https://api.line.me/oauth2/v2.1/token \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'grant_type=authorization_code' \
-d 'code=xxx' \
-d 'redirect_uri=xxx' \
-d 'client_id=xxx' \
-d 'client_secret=xxx'
リクエストの例
// No sample code available
リクエストの例
# No sample code available
リクエストの例
// No sample code available
リクエストの例
// No sample code available
リクエストの例
# No sample code available
リクエストの例
# No sample code available
リクエストの例
// No sample code available

アクセストークンを発行する

アクセストークンを発行します。

HTTPリクエスト

POST https://api.line.me/oauth2/v2.1/token

リクエストヘッダー

リクエストヘッダー 説明
Content-Type application/x-www-form-urlencoded

リクエストボディ

パラメータ タイプ 必須 説明
grant_type String 必須 authorization_code。付与タイプを指定します。
code String 必須 認可コード。認可リクエストに対して返されるコードです。
redirect_uri String 必須 コールバックURL
client_id String 必須 チャネルID。コンソールで確認できます。
client_secret String 必須 チャネルシークレット。コンソールで確認できます。

レスポンスの例

{
    "access_token": "bNl4YEFPI/hjFWhTqexp4MuEw5YPs...",
    "expires_in": 2592000,
    "id_token": "eyJhbGciOiJIUzI1NiJ9...",
    "refresh_token": "Aa1FdeggRhTnPNNpxr8p",
    "scope": "profile",
    "token_type": "Bearer"
}

レスポンス

ステータスコード200および以下の情報を含むJSONオブジェクトを返します。

プロパティ タイプ 説明
access_token String アクセストークン。有効期間は30日です。
expires_in Number アクセストークンの有効期限が切れるまでの秒数
id_token String ユーザー情報を含むJSONウェブトークン(JWT)。このプロパティは、スコープにopenidを指定した場合にのみ返されます。詳しくは、「IDトークン」を参照してください。
refresh_token String 新しいアクセストークンを取得するためのトークン。アクセストークンの有効期限が切れてから最長10日間有効です。
scope String ユーザーが付与する権限。詳しくは、「スコープ」を参照してください。
token_type String Bearer

リクエストの例

curl -v -X GET \
'https://api.line.me/oauth2/v2.1/verify?access_token=eyJhbGciOiJIUzI1NiJ9.UnQ_o-GP0VtnwDjbK0C8E_NvK...'
リクエストの例
// No sample code available
リクエストの例
# No sample code available
リクエストの例
// No sample code available
リクエストの例
// No sample code available
リクエストの例
# No sample code available
リクエストの例
# No sample code available
リクエストの例
// No sample code available

アクセストークンを検証する

アクセストークンを検証します。

注:このセクションでは、v2.1のエンドポイントについて解説します。V2については、v2の「Verify access token」を参照してください。

HTTPリクエスト

GET https://api.line.me/oauth2/v2.1/verify

URLパラメータ

パラメータ 必須 説明
access_token 必須 アクセストークン

レスポンスの例

{
   "scope":"profile",
   "client_id":"1440057261",
   "expires_in":2591659
}

レスポンス

プロパティ タイプ 説明
scope String アクセストークンを介して付与される権限
client_id String アクセストークンを発行する対象のチャネルID
expires_in Number アクセストークンの有効期限。APIが呼び出された時点から期限切れまでの残り秒数で表されます。

リクエストの例

curl -v -X POST https://api.line.me/oauth2/v2.1/token \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'grant_type=refresh_token&refresh_token={your_refresh_token}&client_id={your_channel_id}&client_secret={your_channel_secret}'
リクエストの例
// No sample code available
リクエストの例
# No sample code available
リクエストの例
// No sample code available
リクエストの例
// No sample code available
リクエストの例
# No sample code available
リクエストの例
# No sample code available
リクエストの例
// No sample code available

アクセストークンを更新する

リフレッシュトークンを使って新しいアクセストークンを取得します。リフレッシュトークンは、ユーザーがアプリを承認したときにアクセストークンと共に返されます。

注:このセクションでは、v2.1のエンドポイントについて解説します。V2については、v2の「Refresh access token」を参照してください。

注:Messaging APIで使用されるチャネルアクセストークンの更新には使用できません。

HTTPリクエスト

POST https://api.line.me/oauth2/v2.1/token

リクエストヘッダー

リクエストヘッダー 説明
Content-Type application/x-www-form-urlencoded

リクエストボディ

プロパティ タイプ 必須 説明
grant_type String 必須 refresh_token
refresh_token String 必須 リフレッシュトークン。アクセストークンの有効期限が切れてから最長10日間有効です。リフレッシュトークンの有効期限が切れた場合はユーザーに再ログインさせる必要があります。
client_id String 必須 チャネルID。コンソールで確認できます。
client_secret String 任意 チャネルシークレット。コンソールで確認できます。注:アプリケーションタイプがWEBのチャネルを介してアクセストークンが発行された場合は必須です。

レスポンスの例

{
   "token_type":"Bearer",
   "scope":"profile",
   "access_token":"bNl4YEFPI/hjFWhTqexp4MuEw...",
   "expires_in":2591977,
   "refresh_token":"8iFFRdyxNVNLWYeteMMJ"
}

レスポンス

プロパティ タイプ 説明
access_token String アクセストークン。有効期間は30日です。
token_type String Bearer
refresh_token String 新しいアクセストークンを取得するためのトークン。アクセストークンの有効期限が切れてから最長10日間有効です。
expires_in Number アクセストークンの有効期限。APIが呼び出された時点から期限切れまでの残り秒数で表されます。
scope String アクセストークンを介して付与される権限

リクエストの例

curl -v -X POST https://api.line.me/oauth2/v2.1/revoke \
-H "Content-Type:application/x-www-form-urlencoded" \
-d "client_id={channel id}&client_secret={channel secret}&access_token={access token}"
リクエストの例
// No sample code available
リクエストの例
# No sample code available
リクエストの例
// No sample code available
リクエストの例
// No sample code available
リクエストの例
# No sample code available
リクエストの例
# No sample code available
リクエストの例
// No sample code available

アクセストークンを取り消す

アクセストークンを無効にします。

注:このセクションでは、v2.1のエンドポイントについて解説します。V2については、v2の「Revoke access token」を参照してください。

注:Messaging APIで使用されるチャネルアクセストークンの無効化には使用できません。

HTTPリクエスト

POST https://api.line.me/oauth2/v2.1/revoke

リクエストヘッダー

リクエストヘッダー 説明
Content-Type application/x-www-form-urlencoded

リクエストボディ

プロパティ タイプ 必須 説明
access_token String 必須 アクセストークン
client_id String 必須 チャネルID。コンソールで確認できます。
client_secret String 必須 チャネルシークレット。コンソールで確認できます。

レスポンス

ステータスコード200および空のレスポンスボディを返します。

プロフィール

リクエストの例

curl -v -X GET https://api.line.me/v2/profile \
-H 'Authorization: Bearer {access token}'
リクエストの例
// No sample code available
リクエストの例
# No sample code available
リクエストの例
// No sample code available
リクエストの例
// No sample code available
リクエストの例
# No sample code available
リクエストの例
# No sample code available
リクエストの例
// No sample code available

ユーザープロフィールを取得する

ユーザーの表示名、プロフィール画像、およびステータスメッセージを取得します。

注:profileのスコープを持つアクセストークンが必要です。詳しくは、LINEログインドキュメントの「認可を要求する」および「スコープ」を参照してください。

HTTPリクエスト

GET https://api.line.me/v2/profile

リクエストヘッダー

リクエストヘッダー 説明
Authorization Bearer {access token}

レスポンスの例

{
  "userId":"U4af4980629...",
  "displayName":"Brown",
  "pictureUrl":"https://example.com/abcdefghijklmn",
  "statusMessage":"Hello, LINE!"
}

レスポンス

プロパティ タイプ 説明
displayName String ユーザーの表示名
userId String ユーザーの識別子
pictureUrl String プロフィール画像のURL。httpsで指定します。ユーザーがプロフィール画像を設定していない場合はレスポンスに含まれません。
statusMessage String ユーザーのステータスメッセージ。ユーザーがステータスメッセージを設定していない場合はレスポンスに含まれません。

プロフィール画像のURLの例

https://obs.line-apps.com/abcdefghijklmn/large

プロフィール画像のサムネイル

ユーザープロフィールの画像サイズは、URLにサフィックスを付加することによって変更できます。

画像サイズ サフィックス
200 x 200 /large
51 x 51 /small

友だち関係

リクエストの例

curl -v -X GET https://api.line.me/friendship/v1/status \
-H 'Authorization: Bearer {access token}' \ 
リクエストの例
// No sample code available
リクエストの例
# No sample code available
リクエストの例
// No sample code available
リクエストの例
// No sample code available
リクエストの例
# No sample code available
リクエストの例
# No sample code available
リクエストの例
// No sample code available

ボットとの友だち関係を取得する

LINEログインのチャネルにリンクされているボットとユーザーの友だち関係を取得します。

注:profileのスコープを持つアクセストークンが必要です。詳しくは、LINEログインドキュメントの「認可を要求する」および「スコープ」を参照してください。

注:チャネルにリンクされているボットが必要です。詳しくは、LINEログインドキュメントの「ボットをLINEログインのチャネルにリンクする」を参照してください。

HTTPリクエスト

GET https://api.line.me/friendship/v1/status

リクエストヘッダー

リクエストヘッダー 説明
Authorization Bearer {access token}

レスポンスの例

{
  "friendFlag": true
}

レスポンス

プロパティ タイプ 説明
friendFlag Boolean ユーザーがボットを友だち追加済みで、ブロックしていない場合はtrueです。そうでなければfalseです。

エラー

ステータスコード

APIコールの後で、以下のHTTPステータスコードが返されます。

ステータスコード 説明
200 OK リクエストが成功しました。
400 Bad Request リクエストに問題があります。リクエストパラメータとJSONの形式を確認してください。
401 Unauthorized Authorizationヘッダーを正しく送信していることを確認してください。
403 Forbidden APIを使用する権限がありません。ご契約中のプランやアカウントに付与されている権限を確認してください。
429 Too Many Requests リクエスト頻度をレート制限内に抑えてください。
500 Internal Server Error APIサーバーの一時的なエラーです。