本文にスキップする

サーバーのAPI仕様

LINE Planetは、アプリサーバーを制御するAPIを提供します。

開発環境

アプリケーションは、適切なapi_base_urlでLINE PlanetサーバーのAPIを呼び出す必要があります。api_base_urlは、開発環境によって決まります。

開発環境api_base_url
Evaluationhttps://vpnx-stn-api.line-apps-rc.com
Realhttps://vpnx-stn-api.line-apps.com
Note

api_base_urlplanet_base_urlは異なるものです。api_base_urlはサーバーのAPIを呼び出す際に、planet_base_urlはPlanetKit SDKを設定する際に使用します。

基本プロトコル

LINE Planetは、RESTfulサーバーAPIを提供します。

認証および必須ヘッダー

認証されたユーザーのみがサーバーAPIを呼び出すことができます。発行したAPI keyAPI secretを利用して認証を行います。

LINE Planetは、基本認証(basic authentication)を使用します。APIを呼び出す際に必ず次のHTTPヘッダーを渡す必要があります。

  • ヘッダーパラメーター:Authorization

  • 入力値:Basic {your credential}

    Credentialは、以下の方法で取得します。

    credential = base64_encode( ${API_KEY} + ":" + ${API_SECRET} )

CredentialがYWxhZGRpbjpvcGVuX3Nlc2FtZQ==の場合、以下のように入力します。

Authorization: Basic YWxhZGRpbjpvcGVuX3Nlc2FtZQ==

リクエスト頻度

LINE PlanetサーバーAPIは、1秒あたり100回を超過して呼び出すことができません。

エラー処理

APIレスポンスのHTTPステータスコードを利用して、エラーの原因を確認できます。

HTTPステータスコードメッセージ説明
400BAD_REQUEST必須ヘッダーまたは必須パラメーターが指定されていません。
401UNAUTHORIZEDAPI keyまたはAPI secretが有効ではありません。
403FORBIDDEN権限がありません。サービスIDを確認してください。
404NOT_FOUNDルームIDが見つかりません。
429TOO_MANY_REQUEST一定時間内に送られたリクエスト数が多すぎます。 
500INTERNAL_SERVER_ERROR不明なエラーです。
503SERVICE_UNAVAILABLEグループ通話(カンファレンス)サーバーは現在利用できません。

API v2 - プロトコル

必須ヘッダー

API v2では、JSONデータを受信できるよう、以下のようにHTTPヘッダーを入力する必要があります。

Accept: application/json

API v2 - エラー処理

アプリケーションエラーコードとメッセージを提供します。statusが「error」のとき、応答値のcodemessageから確認できます。

HTTPステータスコードアプリケーションエラーコード (code)メッセージ (message)説明データ
200404NOT_FOUNDルームまたは対象が見つかりません。
200405NOT_ALLOWED現在のタイプは、次のタイプとの互換性がありません。
200435MEETING_NOT_FOUNDミーティングが見つかりません。
200520UNDER_MAINTENANCEメンテナンス中です。ミリ秒単位の開始時刻および終了時刻
400400BAD_REQUEST必須ヘッダーが指定されていません。
必須パラメーターが指定されていません。
401401UNAUTHORIZEDAPI keyまたはAPI secretが有効ではありません。
403403FORBIDDENこのAPIへのアクセス権限がありません。
500500INTERNAL_SERVER_ERROR

以下は、メンテナンス中のレスポンスの例です。

# http status code is 200
{
"status": "error",
"code": "520",
"message": "UNDER_MAINTENANCE",
"data": { "start": 1490762455349, "end": 1490762455350 }
}

API v2でエラーを把握する順番は、次のとおりです。

  • HTTPステータスコードを確認します。
    • ステータスコードが4XXの場合、クライアントエラーを意味します。
    • ステータスコードが5XXの場合、サーバーエラーを意味します。
  • HTTPステータスコードが400未満の場合は、アプリケーションエラーコードを確認してください。

例1:クライアントエラーコード

# http status code is 403
{
"status": "error",
"message": "FORBIDDEN",
"code": "403",
"data": "Wrong svcId",
"timestamp": 1490261690087
}

例2:サーバーエラーコード

# http status code is 500
{
"status": "error",
"message": "Internal Server Error",
"code": "500",
"data": null,
"timestamp": 1490320867281
}

例3:アプリケーションエラーコード

# http status code is 200 but jsend's error code is 520
{
"status": "error",
"code": "520",
"message": "UNDER_MAINTENANCE",
"data": {
"start": 1490762455349, "end": 1490762455350
},
"timestamp": 1490320867281
}

API仕様

実装する前にAPIの仕様を確認してください。

API v1

API v2