# オープンAPI

MoreLoginオープンAPIは、包括的で開発者フレンドリーなRESTfulインターフェースを提供し、ブラウザプロファイル、クラウド電話、および関連リソースをプログラムで管理することを可能にします。これにより、シームレスな自動化、拡張性、および制御が実現します。MoreLoginオープンAPIは、お使いのマシン上で動作し、https://api.morelogin.com からアクセスできます。

Version: 1.0.0

## Security

### Authorization

Token for request access token interface response access_token field

Type: http
In: header
Name: Authorization
Scheme: bearer
Bearer Format: JWT

## Download OpenAPI description

[オープンAPI](https://guide.morelogin.com/_bundle/@l10n/ja/API%20Reference/Cloud%20Phone/open-api.yaml)

## Authorization

### アクセストークン

 - [POST /oauth2/token](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/authorization/paths/~1oauth2~1token/post.md)

### ユーザー情報

 - [GET /oauth2/userinfo](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/authorization/paths/~1oauth2~1userinfo/get.md)

## Cloud Phone Management

### クラウド電話プロファイルのリストを取得する

 - [POST /cloudphone/page](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/pageusingpost.md)

### クラウド電話の作成

 - [POST /cloudphone/create](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/createusingpost.md)

### スタートアップのクラウドフォン

 - [POST /cloudphone/powerOn](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/poweronusingpost.md)

### クラウド電話をシャットダウンする

 - [POST /cloudphone/powerOff](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/poweroffusingpost.md)

### クラウド電話プロファイルを変更する

 - [POST /cloudphone/edit/batch](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/editbatchusingpost.md)

### クラウドスマホのプロキシ設定

 - [POST /cloudphone/setProxy](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/setproxy.md): 1つ以上のクラウドスマホのプロキシを設定します。proxyIdを直接バインドするか、詳細なプロキシパラメータを追加/変更できます。リクエストペイロードの形式はブラウザのプロキシ設定と同じで、設定は即座に適用されます。

### クラウドフォンを削除

 - [POST /cloudphone/delete/batch](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/deleteusingpost.md)

### ワンクリックで新しいクラウドフォン

 - [POST /cloudphone/newMachine](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/onenewusingpost.md)

### クラウド電話の詳細

 - [POST /cloudphone/info](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/infousingpost.md)

### AndroidIdによるクラウドスマホ詳細の取得

 - [POST /cloudphone/queryByAndroidId](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/querybyandroidid.md): 現在のチーム内の特定のandroidIdに関連付けられたクラウドスマホIDを問い合わせます。見つかった場合は、単一のクラウドスマホIDを返します。

### グローバルROOTの有効化/無効化

 - [POST /cloudphone/enableRoot](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/enableroot.md): 単一のクラウドスマホでグローバルなシステムレベルのROOT権限を有効または無効にします。

### クラウドスマホ画面キャプチャ

 - [POST /cloudphone/screenCap](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/screencap.md): 指定されたクラウドスマホインスタンスのリアルタイム画面キャプチャを取得します。有効期限タイムスタンプ付きの期限付き署名付きURLの返却をサポートしています。

### クラウドフォンスクリーンキャプチャ（base64レスポンス）

 - [POST /cloudphone/screenCapBase64](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/screencapbase64.md): 指定されたクラウドフォンインスタンスのリアルタイムスクリーンキャプチャを取得します。現在、Android 12とAndroid 15のみサポートされています。

### クエリ ブランドとモデルのリスト

 - [POST /cloudphone/brand/models](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/cloud-phone-management/paths/~1cloudphone~1brand~1models/post.md): 指定されたAndroidバージョンで利用可能なブランドとモデルのリストを照会します。

## ADB

### クラウドフォンのADBステータスを更新します

 - [POST /cloudphone/updateAdb](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/adb/updateadbusingpost.md)

### ADB情報の一括問い合わせ

 - [POST /cloudphone/batchAdbInfo](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/adb/batchadbinfo.md): クラウドスマホのADB接続情報を一括で問い合わせます。
- envIdsリストは最大200項目までサポートします。
- wuinプロバイダーとarmプロバイダーをまたいだ混合クエリをサポートします。APIは内部でプロバイダーごとにグループ化し、結果をマージします。
- ADB情報はスマホの電源がオン（envStatus >= 4）のときのみ利用可能です。電源オフまたは起動中は問い合わせできません。

### シェルコマンドを実行する

 - [POST /cloudphone/exeCommand](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/adb/executeshellcommand.md)

## Files

### ファイルアップロードURLを取得する

 - [POST /cloudphone/uploadUrl](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/files/get.md): このインターフェースから一時ファイルをアップロードすると、システムは7日後に自動的に削除します。

### ファイルのアップロード

 - [POST /cloudphone/uploadFile](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/files/fileuploadusing.md)

### uploadFileの結果

 - [POST /cloudphone/uploadFileResult](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/files/fileuploadresult.md)

### ファイルダウンロード

 - [POST /cloudphone/download](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/files/paths/~1cloudphone~1download/post.md)

### ファイルダウンロード結果

 - [POST /cloudphone/download/result](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/files/paths/~1cloudphone~1download~1result/post.md)

### キーボックスを設定

 - [POST /cloudphone/setKeyBox](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/files/paths/~1cloudphone~1setkeybox/post.md)

## Apps

### クラウドフォンにアプリをインストールする

 - [POST /cloudphone/app/install](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/apps/paths/~1cloudphone~1app~1install/post.md)

### アプリ一覧を取得する

 - [POST /cloudphone/app/page](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/apps/paths/~1cloudphone~1app~1page/post.md): アプリ一覧を取得

### チームアプリのリスト表示

 - [POST /cloudphone/team/app/page](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/apps/paths/~1cloudphone~1team~1app~1page/post.md): チームのアプリケーションのリストを取得します。

### インストール済みアプリ一覧を照会する

 - [POST /cloudphone/app/installedList](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/apps/paths/~1cloudphone~1app~1installedlist/post.md): クラウドフォンにインストールされているアプリの一覧を照会する

### アプリを起動する

 - [POST /cloudphone/app/start](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/apps/paths/~1cloudphone~1app~1start/post.md): クラウドフォンにインストール済みのアプリを起動する

### アプリを再起動してください

 - [POST /cloudphone/app/restart](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/apps/paths/~1cloudphone~1app~1restart/post.md)

### アプリを停止

 - [POST /cloudphone/app/stop](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/apps/paths/~1cloudphone~1app~1stop/post.md)

### アプリをアンインストールする

 - [POST /cloudphone/app/uninstall](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/apps/paths/~1cloudphone~1app~1uninstall/post.md)

### アプリのROOT権限を有効化

 - [POST /cloudphone/app/openRoot](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/apps/appopenroot.md): 単一のクラウドスマホ上の特定のアプリパッケージに対してROOT権限を有効にします。

### アクセシビリティアプリを非表示にする設定

 - [POST /cloudphone/app/setHideAccessibilityApp](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/apps/paths/~1cloudphone~1app~1sethideaccessibilityapp/post.md): Android 13、Android 14、Android 15Aのみをサポートします。

## Schedules

### マーケットテンプレートページを取得する

 - [POST /cloudphone/rpa/template/market/page](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/schedules/paths/~1cloudphone~1rpa~1template~1market~1page/post.md): クエリスケジュールマーケットテンプレート、テンプレート名はあいまいクエリをサポートしています

### 個人用テンプレートページを入手する

 - [POST /cloudphone/rpa/template/personal/page](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/schedules/paths/~1cloudphone~1rpa~1template~1personal~1page/post.md): クエリスケジュールマーケットテンプレート、テンプレート名はあいまいクエリをサポートしています

### スケジュール一覧を入手する

 - [POST /cloudphone/rpa/task/page](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/schedules/paths/~1cloudphone~1rpa~1task~1page/post.md)

### 一度のスケジュールを作成する

 - [POST /cloudphone/rpa/onceTask/save](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/schedules/paths/~1cloudphone~1rpa~1oncetask~1save/post.md): スケジュールされたタスクのクラウド電話を保存する

テンプレートパラメータ パラメータ仕様
1. __パラメータソース__
パラメータキーは、以下のAPIから返されるparameterフィールドから抽出する必要があります。
- マーケットテンプレートページの取得
- 個人用テンプレートページの取得
2. __データ構造__
- パラメータはJSONオブジェクト形式で送信してください：{"key1": "value1", "key2": "value2"}
- 最終的なパラメータ値は、使用前にビジネスロジックに従って逆シリアル化する必要があります。
3. __共通型パラメータ__
以下のパラメータ型については、対応する形式で値を直接渡してください。
- 文字列：{"name": "John"}
- 小数点数／数値：{"amount": 100.50}
- ブール値：{"enabled": true}
4. __メディア型パラメータ__
画像（pic）や動画（video）などのメディアパラメータについては、基本情報に加えて、固定キー"__Extra__"を含める必要があります。例のフォーマット：
json
{
"__Extra__": {

"pic": {

"name": "pic_name",

"size": 204800

},

"video": {

"name": "video_name",

"size": 204800000
}

},

"pic": "https://get.morelogin.com/prod/cloudPhoneTaskVideo/1556061681934880/1c62314c7e2b4d298abe8d5452d7c050/test.png",

"video": "https://get.morelogin.com/pre/cloudPhoneTaskVideo/1542431036481556/4c4fed83685345ae8f1505fbe0c2f123/baby.mp4"
}

5. __パラメータ設定例__
以下の例は、マーケットテンプレートを使用してプランを保存する際に、templateParameter パラメータを設定する方法を示しています。
- __ステップ 1: テンプレートパラメータの取得__
マーケットテンプレート API を呼び出します。
GET /api/cloudphone/rpa/template/market/page
レスポンスから parameter フィールドを抽出します。例:

json
"parameter": "{\"videoDownloadUrl\":{\"type\":\"video\",\"extra\":{\"name\":\"Select"ビデオ\",\"タイプ\":\"ビデオ\",\"必須\":true,\"デフォルト値\":{\"有効\":false},\"インデックス\":1,\"サイズ制限\":{\"値\":200,\"単位\":\"MB\"},\"フォーマットタイプ\":[\"mp4\",\"mov\"]}},\"ビデオ説明\":{\"タイプ\":\"文字列\",\"追加\":{\"名前\":\"ビデオキャプション\",\"タイプ\":\"文字列\",\"必須\":false,\"charValid\":{\"有効\":true,\"値\":1000},\"複数行\":{\"有効\":true,\"値\":3},\"デフォルト値\":{\"有効\":false},\"インデックス\":2}},\"カバーURL\":{\"タイプ\":\"画像\",\"追加\":{\"名前\":\"カバー"画像\",\"タイプ\":\"画像\",\"必須\":false,\"デフォルト値\":{\"有効\":false},\"インデックス\":3,\"サイズ制限\":{\"値\":5,\"単位\":\"MB\"},\"フォーマットタイプ\":[\"jpg\",\"png\",\"jpeg\"]}},\"AIGC を有効にする\":{\"タイプ\":\"ブール値\",\"追加\":{\"名前\":\"AI ラベル\",\"タイプ\":\"ブール値\",\"必須\":false,\"デフォルト値\":{\"有効\":false},\"インデックス\":4}},\"製品 ID\":{\"タイプ\":\"文字列\",\"追加\":{\"名前\":\"製品ID\",\"type\":\"string\",\"required\":false,\"charValid\":{\"enabled\":true,\"value\":50},\"placeholder\":\"商品IDは数字のみをサポートし、最大50文字までです。",\"defaultValue\":{\"enabled\":false},\"index\":5}},\"productTitle\":{\"type\":\"string\",\"extra\":{\"name\":\"商品タイトル\",\"type\":\"string\",\"required\":false,\"charValid\":{\"enabled\":true,\"value\":30},\"defaultValue\":{\"enabled\":false},\"index\":6}},\"getLeads\":{\"type\":\"boolean\",\"extra\":{\"name\":\"Getリード\",\"type\":\"boolean\",\"required\":false,\"defaultValue\":{\"enabled\":false},\"index\":7}},\"comment\":{\"type\":\"string\",\"extra\":{\"name\":\"Comment\",\"type\":\"string\",\"required\":false,\"charValid\":{\"enabled\":true,\"value\":200},\"multiline\":{\"enabled\":true,\"value\":3},\"defaultValue\":{\"enabled\":false},\"index\":8}}}"

- __ステップ2：パラメータJSONの構築__
パラメータの要件に従ってJSONオブジェクトを構築します。
json
{
"__Extra__": {

"videoDownloadUrl": {

"name": "video_name.mp4",

"size": 204800000

}

},

"videoDownloadUrl": "https://get.morelogin.com/pre/cloudPhoneTaskVideo/1542431036481556/4c4fed83685345ae8f1505fbe0c2f123/baby.mp4"
}

- __ステップ3：JSON文字列のエスケープ__
JSONオブジェクトをエスケープされた文字列形式に変換します。
json
"{\"__Extra__\": {\"videoDownloadUrl\": {\"name\": \"video_name.mp4\",\"size\": 204800000}},\"videoDownloadUrl\": \"https://get.morelogin.com/pre/cloudPhoneTaskVideo/1542431036481556/4c4fed83685345ae8f1505fbe0c2f123/baby.mp4\"}"

- __ステップ4：API呼び出し__
エスケープされた文字列を、ターゲットAPIのtemplateParameterパラメータの値として渡します。

### スケジュールをキャンセルする

 - [POST /cloudphone/rpa/task/cancel](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/schedules/paths/~1cloudphone~1rpa~1task~1cancel/post.md)

### ページクエリタスクの実行記録

 - [POST /cloudphone/rpa/subTask/page](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/schedules/paths/~1cloudphone~1rpa~1subtask~1page/post.md): クエリスケジュールマーケットテンプレート、テンプレート名はあいまいクエリをサポートしています

### タスクの実行を取得する

 - [POST /cloudphone/rpa/subTask/detail/{id}](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/schedules/paths/~1cloudphone~1rpa~1subtask~1detail~1%7Bid%7D/post.md): クエリスケジュールマーケットテンプレート、テンプレート名はあいまいクエリをサポートしています

### 実行をキャンセルする

 - [POST /cloudphone/rpa/subTask/cancel/{id}](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/schedules/paths/~1cloudphone~1rpa~1subtask~1cancel~1%7Bid%7D/post.md)

## Touch

### タッチ - クリック

 - [POST /cloudphone/touch/click](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/touch/touchclick.md): クラウドスマホ画面の指定座標位置でシングルタップをシミュレートします。
座標系は画面の左上隅を原点 (0, 0) とし、X軸は右方向、Y軸は下方向に延びます。

### タッチ - ダブルクリック

 - [POST /cloudphone/touch/doubleClick](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/touch/touchdoubleclick.md): クラウドスマホ画面の指定座標位置でダブルタップをシミュレートします。
座標系は画面の左上隅を原点 (0, 0) とし、X軸は右方向、Y軸は下方向に延びます。

### タッチ - 長押し

 - [POST /cloudphone/touch/longClick](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/touch/touchlongclick.md): クラウドスマホ画面の指定座標位置で長押しをシミュレートします。
duration パラメータで長押しの持続時間（ミリ秒）をカスタマイズできます。省略した場合、デフォルトの時間が使用されます。
座標系は画面の左上隅を原点 (0, 0) とし、X軸は右方向、Y軸は下方向に延びます。

### タッチ - スワイプ

 - [POST /cloudphone/touch/swipe](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/touch/touchswipe.md): 開始座標から終了座標までの指のスワイプをシミュレートします。
duration パラメータでスワイプ速度（ミリ秒）を制御できます。値が大きいほどスワイプが遅くなります。
座標系は画面の左上隅を原点 (0, 0) とし、X軸は右方向、Y軸は下方向に延びます。

### タッチ - ドラッグ

 - [POST /cloudphone/touch/drag](https://guide.morelogin.com/ja/api-reference/cloud-phone/open-api/touch/touchdrag.md): 開始座標から終了座標までの指のドラッグをシミュレートします。スワイプと似ていますが、ドラッグは通常アイコンやUI要素のドラッグに使用されます。
duration パラメータでドラッグ速度（ミリ秒）を制御できます。値が大きいほどドラッグが遅くなります。
座標系は画面の左上隅を原点 (0, 0) とし、X軸は右方向、Y軸は下方向に延びます。

