$p.apiMoveSite
概要¶
スクリプトからサイトの親サイト(フォルダ階層)を変更します。
サイト移動のAPIをスクリプトから呼び出すためのラッパー関数です。テーブルの管理の「スクリプト」タブに設定したスクリプトや、ブラウザの開発者ツールのコンソールから実行できます。移動対象のサイトが持つ子サイトは、親サイトに追随して移動します。子サイトに対して個別に本関数を実行する必要はありません。
注意事項¶
- 移動してもサイトの「権限の継承元」(
InheritPermission)は変更されません。移動先に合わせて権限の継承を変更する場合は、別途$p.apiUpdateSiteまたはサイトの設定画面から変更してください。
制限事項¶
- 移動先にはフォルダ(参照タイプが「Sites」のサイト)のみ指定できます。テーブル(期限付き、記録、Wiki等)を移動先に指定した場合は
failが呼び出されます。 - 移動対象のサイト自身、および移動対象のサイトの子孫にあたるサイトは移動先に指定できません。指定した場合は
failが呼び出されます。 - 移動先には、スクリプトを実行するユーザと同じテナントのサイトのみ指定できます。
- $p.apiUpdateSiteの
ParentIdはサイトの移動には使用できません。サイトを移動する場合は本関数を使用してください。
前提条件¶
- Api.jsonの
Enabledパラメータが true に設定されていること。 -
移動対象のサイト、移動対象のサイトの親サイト(移動元)、および移動先のサイトの管理権限をもつユーザであること。移動対象のサイトがトップ直下にある場合、移動元の親サイトの管理権限は不要です。スクリプトはログインユーザの権限で実行されます。
-
User.jsonの
DisableTopSiteCreationが true の場合、移動先にトップ(ParentIdに 0)を指定するには「ユーザの管理」で「サイトトップへの作成を許可」が有効なユーザであること。 - User.jsonの
DisableMovingFromTopSiteが true の場合、トップ直下のサイトを移動するには「ユーザの管理」で「サイトトップからの移動を許可」が有効なユーザであること。
構文¶
$p.apiMoveSite({
id: (移動するサイトのサイトID),
data: { ParentId: (移動先の親サイトID) },
done: (任意の処理),
fail: (任意の処理),
always: (任意の処理)
});
パラメータ¶
| パラメータ名 | 型 | 必須 | 概要 |
|---|---|---|---|
| id | long | ○ | 移動するサイトのサイトID |
| data | object | ○ | 移動先。ParentId に移動先の親サイトIDを指定。0を指定した場合はトップに移動 |
| done | function | ○ | API通信成功時の処理 |
| fail | function | - | API通信失敗時の処理 |
| always | function | - | 完了時の処理 |
APIキーの指定は不要です。ログインしているブラウザのセッションで実行されます。
戻り値¶
done および fail には、サイト移動のAPIと同じレスポンスが渡されます。
| パラメータ名 | 型 | 概要 |
|---|---|---|
| Id | long | 移動したサイトのサイトID |
| StatusCode | int | HTTPステータスコード |
| Message | string | 処理結果のメッセージ |
移動できた場合、done に下記が渡されます。
主なエラー時に fail へ渡される値は下記の通りです。
| StatusCode | Message | 発生条件 |
|---|---|---|
| 400 | 要求が不正です。 | ParentId が指定されていない場合。 |
| 403 | この操作を行うための権限がありません。 | 移動対象のサイト、移動元の親サイト、または移動先のサイトの管理権限が無い場合。トップへの移動やトップからの移動が許可されていない場合。 |
| 404 | 指定された情報は見つかりませんでした。 | 移動対象または移動先のサイトが存在しない場合。移動先が別のテナントのサイトである場合。 |
| 500 | この操作は行なえません。 | 移動先がフォルダ以外の場合。移動先に移動対象のサイト自身または移動対象のサイトの子孫を指定した場合。 |
使用例¶
フォルダの配下へ移動する¶
サイトID「12345」のサイトを、サイトID「12300」のフォルダの配下へ移動します。
$p.apiMoveSite({
id: 12345,
data: { ParentId: 12300 },
done: function (data) {
console.log(data);
console.log('サイトの移動に成功しました。');
},
fail: function (data) {
console.log('サイトの移動に失敗しました。');
},
always: function () {
console.log('サイトの移動が完了しました。');
}
});
トップへ移動する¶
ParentId に 0 を指定すると、サイトはトップに移動されます。
対応バージョン¶
| 対応バージョン | 内容 |
|---|---|
| 1.5.9.0 以降 | 機能追加 |

