IDrive® 360 APIコレクション
IDrive® 360 APIコレクション
IDrive® 360 APIはRESTアーキテクチャ上に構築され、リクエストとレスポンスボディの両方でJSONをサポートします。
認証はAPIキーで処理されます。IDrive® 360管理コンソールのマイアカウント > APIキーからこのキーを生成できます。
生成されたキーをAuthorization下のHTTPヘッダーに追加し、すべてのAPIリクエストに含めてください。
認証ヘッダーAPIキー
| キー | Authorization |
|---|---|
| 値 | Bearer <YOUR-API-KEY> |
ベースエンドポイント:
https://api.idrive360.com/api/msp
デバイスおよび会社操作
会社概要取得:
GET /company
コンシューム: application/json
プロデュース: application/json
リクエストヘッダー:
- Authorization: Bearer 'api-key'
リクエストパラメータ:
- company_id (任意, 数値): 会社ID
成功レスポンス:
{
"name": "default",
"status": 1,
"company_id": 15020,
"status_description": "Active",
"configuration_id": "eyJ0b2tlbiI6IkFUVkFXUTE3MjQyIiwiZW5jcnlwdGlvblJlcXVpcmVkIjpmYWxzZSwiZGVza3RvcEFwcFN0YXR1cyI6ZmFsc2V9",
"setup_link": "https://api.idrive360.com/api/v1/download/setup/win/ATVAWQ17242",
"sub_company_list": [
{
"name": "Test Company",
"status": 1,
"company_id": 15806,
"status_description": "Active",
"configuration_id": "eyJ0b2tlbiI6IkZBT0JaNDE3MjQyIiwiZW5jcnlwdGlvblJlcXVpcmVkIjpmYWxzZSwiZGVza3RvcEFwcFN0YXR1cyI6ZmFsc2V9",
"setup_link": "https://api.idrive360.com/api/v1/download/setup/win/FAOBZ417242"
},
{
"name": "MSP-1",
"status": 1,
"company_id": 15816,
"status_description": "Active",
"configuration_id": "eyJ0b2tlbiI6Ik1ZSENKUDE3MjQyIiwiZW5jcnlwdGlvblJlcXVpcmVkIjpmYWxzZSwiZGVza3RvcEFwcFN0YXR1cyI6ZmFsc2V9",
"setup_link": "https://api.idrive360.com/api/v1/download/setup/win/MYHCJP17242"
},
{
"name": "MSP-2",
"status": 1,
"company_id": 15817,
"status_description": "Active",
"configuration_id": "eyJ0b2tlbiI6Ik5KUEhIOTE3MjQyIiwiZW5jcnlwdGlvblJlcXVpcmVkIjpmYWxzZSwiZGVza3RvcEFwcFN0YXR1cyI6ZmFsc2V9",
"setup_link": "https://api.idrive360.com/api/v1/download/setup/win/NJPHH917242"
}
]
}
- リクエストパラメータリストで'company_id'フィールドが指定されていない場合、APIキーに関連付けられたユーザーの会社がパラメータとして使用されます
- 'company_id'がAPIキーユーザーの会社に対応する場合、ユーザーの会社の子会社が'sub_company_list'キーでペイロードに返されます
- 'company_id'がAPIキーユーザーの会社の任意の子会社に対応する場合、その対象会社の詳細のみが返されます
- レスポンスにはAPIキーユーザーの会社とその子会社の詳細が含まれます
- 各会社に対して返される'configuration_id'は、デフォルトで'private_encryption'、'full_client'オプションが無効になっています
- 'configuration_id'に'private_encryption'または'full_client'オプションを含める場合は、それぞれのパラメータ値で/company/fetch_config_id APIを使用してください
- 返される'setup_link'は、返される'configuration_id'に対応するセットアップのダウンロードリンクです。ここではデフォルトでWindowsのセットアップリンクが返されます
- 他のOSに対応するセットアップのダウンロードリンクをダウンロードする場合は、それぞれのパラメータ値で/company/fetch_config_id APIを使用してください
設定ID取得:
GET /company/fetch_config_id
コンシューム: application/json
プロデュース: application/json
リクエストヘッダー:
- Authorization: Bearer 'api-key'
リクエストパラメータ:
- company_id (任意, 数値): 会社ID
- private_encryption (任意, ブール値): デバイスにインストールされるクライアントがプライベート暗号化を持つべきか
- full_client (任意, ブール値): デバイスにインストールされるクライアントがフルクライアント機能へのアクセスを持つべきか
- build_type (任意, 文字列, 大文字小文字区別なし): セットアップリンクに使用するターゲットOS (WIN, MAC, RPM, DEB, MSI, PKG)
成功レスポンス:
{
"name": "default",
"company_id": 123,
"configuration_id": "eyJ0b2tlbiI6IkFUVkFXUTE3MjQyIiwiZW5jcnlwdGlvblJlcXVpcmVkIjpmYWxzZSwiZGVza3RvcEFwcFN0YXR1cyI6ZmFsc2V9",
"setup_link": "https://api.idrive360.com/api/v1/download/setup/win/ATVAWQ17242"
}
- リクエストパラメータリストで'company_id'フィールドが指定されていない場合、APIキーに関連付けられたユーザーの会社がパラメータとして使用されます
- リクエストパラメータリストで'private_encryption'、'full_client'フィールドが指定されていない場合、デフォルト値のfalseがパラメータ値として使用されます
- リクエストパラメータリストで'build_type'が指定されていない場合、デフォルト値のWINがパラメータ値として使用されます
会社作成:
POST /company
コンシューム: application/json
プロデュース: application/json
リクエストヘッダー:
- Authorization: Bearer 'api-key'
リクエストボディ:
{
"name": "idrive",
"company_id": 1111
}
成功レスポンス: 201 Created
{
"name": "idrive",
"status": 1,
"company_id": 12223,
"status_description": "Active",
"configuration_id": "eyJ0b2tlbiI6IkFUVkFXUTE3MjQyIiwiZW5jcnlwdGlvblJlcXVpcmVkIjpmYWxzZSwiZGVza3RvcEFwcFN0YXR1cyI6ZmFsc2V9",
"setup_link": "https://api.idrive360.com/api/v1/download/setup/win/ATVAWQ17242"
}
- リクエストボディで'company_id'フィールドが指定されていない場合、APIキーに関連付けられたユーザーの会社がパラメータとして使用されます
- nameフィールドはペイロードで必須です
- 作成成功後のレスポンスには会社の詳細が含まれます
- 新しく作成された会社に対して返される'configuration_id'は、デフォルトで'private_encryption'、'full_client'オプションが無効になっています
- 'configuration_id'に'private_encryption'または'full_client'オプションを含める場合は、それぞれのパラメータ値で/company/fetch_config_id APIを使用してください
- 返される'setup_link'は、返される'configuration_id'に対応するセットアップのダウンロードリンクです。ここではデフォルトでWindowsのセットアップリンクが返されます
- 他のOSに対応するセットアップのダウンロードリンクをダウンロードする場合は、それぞれのパラメータ値で/company/fetch_config_id APIを使用してください
デバイス概要取得:
GET /device/summary
コンシューム: application/json
プロデュース: application/json
リクエストヘッダー:
- Authorization: Bearer 'api-key'
リクエストパラメータ:
- company_id (任意, 数値): 会社ID
- device_id (任意, 文字列): デバイスID
成功レスポンス:
[
{
"name": "test-office",
"status": "offline",
"device_id": wvlgllxuuaomn4bk4atfljznjyvsfhfeo5g6wgyart3osefi",
"company_id": "1111",
"custom_tag": " ",
"os": "linux",
"backup_status": "Success",
"version": "1.0.21",
"last_backup": "2025-06-11T11:12:58.000",
"next_backup": null,
"group_name": "Linux"
}
]
- リクエストパラメータリストで'company_id'フィールドが指定されていない場合、APIキーに関連付けられたユーザーの会社がパラメータとして使用されます
- 'device_id'フィールドが指定されている場合、そのデバイスのデバイス概要のみがレスポンス配列で返されます
- レスポンスには、APIキーに対応するユーザーがアクセス可能なすべてのデバイスのデバイス詳細が含まれます
| フィールド名 | 説明 |
|---|---|
| name | デバイスの名前 |
| status | デバイスの現在のステータス (例: online, offline, blocked, archived) |
| device_id | デバイスに関連付けられたデバイスID |
| company_id | デバイスに関連付けられた会社ID |
| custom_tag | デバイスに割り当てられたカスタムタグ |
| os | デバイスのオペレーティングシステム |
| backup_status | 最後のバックアップのステータス (例: Success, Failed, In Progress, Cancelled) |
| version | デバイスにインストールされたバックアップアプリケーションのバージョン |
| last_backup | 最後の成功したバックアップのタイムスタンプ |
| next_backup | 次にスケジュールされたバックアップのタイムスタンプ |
| group_name | デバイスが属するグループの名前 |
デバイスのメール通知更新:
PUT/device/backup_plan/email_notification
コンシューム:application/json
プロデュース:application/json
リクエストヘッダー:
- Authorization: Bearer 'api-key'
リクエストボディ:
{
"device_id": "wtrp2zjidqr4hlsfz9vmebvtmudrpdfkayaskeunmq4civffo9",
"backup_set": "DEFAULT",
"status": true,
"type": "ALWAYS",
"emails": [
"test@idrive.com",
"support@idrive.com"
]
}
| フィールド名 | 説明 |
|---|---|
| device_id | デバイスに関連付けられたデバイスID |
| backup_set | バックアップセットの名前 (例: "DEFAULT", "LOCAL", "ENTIRE_MACHINE", "MAPPED_DRIVE", "EXPRESS") |
| status | メール通知を有効にする(true)か無効にする(false)かを示すブール値 |
| type | 通知の頻度 (例: "ALWAYS", "ON_FAILURE") |
| emails | 通知を受け取るメールアドレスの配列 |
成功レスポンス:
{
"ok": true,
"message": "メール通知設定が正常に更新されました"
}
- リクエストが成功した場合、200ステータスコードが上記のレスポンスペイロードとともに返されます
HTTPレスポンスコード:
- 200 - リクエスト成功
- 201 - リソース作成済み
- 401 - 認証失敗
- 400 - 無効なリクエスト/無効なパラメータ
- 429 - 依存エラー
- 500 - サーバー内部エラー
エラーレスポンス:
- ベース/トップレベルエラー"type"はリクエスト失敗の一般的な原因であり、リクエスト固有の"errors"は配列形式で指定されます
- ベース/トップレベルの"message"フィールドは処理には関係なく、可読性のために存在し、ベース/トップレベルエラー"type"を説明します
- 内部の"errors"フィールドが存在しない場合、ベース/トップレベルエラー"type"を使用してリクエスト失敗を処理してください
- 内部の"errors"フィールドにはリクエスト操作の実行中に発生したエラーの配列が含まれ、各エラー"type"、"field"、"message"/説明が含まれます
- 特定の場合、"errors"コンテンツとともに"field"も返され、これはその"field"で実行された操作によってリクエストの実行が失敗したことを示します
{
"ok": false,
"type": "entity_not_found",
"message": "指定されたエンティティが存在しないか無効です。リクエストは修正なしで、または指定されたエンティティが設定されるまで再試行しないでください。",
"code": 400,
"errors": [
{
"type": "entity_not_found",
"field": "device_id",
"message": "指定されたデバイスIDに対応するエンティティが見つからないか、非アクティブまたは未設定です"
}
]
}
エラー種類:
| エラー種類 | ベースエラー種類 | ステータスコード | 説明 |
|---|---|---|---|
| missing_authorization_header | authentication_failed | 401 | API_KEYを含む認証ヘッダーがありません |
| malformed_authorization_header | authentication_failed | 401 | 認証ヘッダーの形式が不正です。受け入れられる形式は'Bearer <API_KEY>'です |
| admin_company_not_active | invalid_state | 400 | API_KEYに関連付けられた管理者の会社が非アクティブです |
| admin_not_active | invalid_state | 400 | API_KEYに関連付けられた管理者が非アクティブです |
| insufficient_privileges | authentication_failed | 401 | API_KEYに関連付けられたユーザーは権限不足のためこのリソースにアクセスできません。管理者に連絡してください |
| access_restricted | invalid_request | 400 | リクエスト実行失敗に基づくカスタム説明 |
| processing_fault | processing_fault | 500 | JSONオブジェクトの解析中に内部処理エラーが発生しました |
| internal_error | internal_error | 500 | リクエスト処理中に内部エラーが発生しました |
| entity_creation_failed | internal_error | 500 | システムでのエンティティ作成に失敗しました |
| entity_not_found | entity_not_found | 400 | リクエストされたエンティティがシステムで見つかりませんでした |
| invalid_request | invalid_request | 400 | リクエスト実行失敗に基づくカスタム説明 |
| invalid_parameter | invalid_parameter | 400 | リクエスト実行失敗に基づくカスタム説明 |
| same_state | same_state | 400 | リクエスト実行失敗に基づくカスタム説明 |
| dependency_exception | dependency_exception | 429 | リクエスト実行失敗に基づくカスタム説明 |
エラーフィールド:
- 内部"errors"ペイロードで返される"field"タイプのリストと、"field"が返される可能性のあるシナリオを以下に示します
| フィールド | シナリオ |
|---|---|
| device_id | リクエストで指定されたデバイスID |
| company_id | リクエストで指定された会社IDまたはAPI_KEYに対応する管理者の会社ID |
| notification_server | バックアップサーバーへのアクセス時の依存関係の問題 |
| emails | リクエストで指定されたメールアドレス |
| backup_set | デバイスのバックアップ計画への変更をトリガーする任意のアクション |
| backup_policy | デバイスのバックアップ計画への変更をトリガーする任意のアクション |
| backup_policy_schedule | デバイスのバックアップ計画スケジュールへの変更をトリガーする任意のアクション |
| status | リクエストで指定されたステータス |
| name | リクエストで指定された名前 |