0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

kintone スペース管理コマンド操作例

Last updated at Posted at 2024-07-23

kintone スペース管理コマンドで、実際にスペース作成・照会・更新・削除操作を行なってみます。

概要

chatGPT で kintone スペース管理コマンド作成で作成したコマンドを実際に使ってみます。
簡単にコマンドで、スペーステンプレートからアプリを含むスペースを作成できます。

  • 環境
    • kintone: 開発環境
    • OS: mac
      • 今回は、mac ですが windows でも同様にできます
    • ターミナルで操作

kintone 環境

kintoneシステム管理のアップデートオプションで開発中の新機能の下記を有効にする必要があります。

  • 「スペースの情報を取得できるJavaScript API」を有効にする
  • 「テンプレートを指定せずにスペースを作成できるREST API」を有効にする
    ただゲストスペースについては、スペーステンプレート無しでは、スペース作成できませんでした。

インストール

適当なディレクトリでリポジトリをクローンします。

git clone https://github.com/rex0220/kintone_manage_space.git
cd kintone_manage_space

依存関係をインストールします

npm install

環境変数ファイルの作成

今回は、環境変数ファイル .env を作成します。
プロジェクトディレクトリに .env ファイルを作成し、kintoneの資格情報を追加します。
別名ファイルで、複数の kintone 環境へも対応可能です。

※環境変数ファイルが指定されている場合は、環境変数よりも優先されます。
オプション指定 > 環境変数ファイル > 環境変数

.env
KINTONE_DOMAIN=your_domain
KINTONE_USERNAME=your_username
KINTONE_PASSWORD=your_password

動作確認 ヘルプ表示

インストールに問題なければ、ヘルプ表示出来ます。

$ node manage_space.js -h
オプション:
      --version              バージョンを表示                             [真偽]
  -d, --domain               kintoneのドメイン                          [文字列]
  -u, --username             kintoneのユーザー名                        [文字列]
  -p, --password             kintoneのパスワード                        [文字列]
  -e, --envfile              .envファイルのパス                         [文字列]
  -i, --spaceId              既存のスペースID(指定時、ユーザーにはスペース管理
                             権限が必要)                               [文字列]
  -s, --spaceName            スペースの名前                             [文字列]
  -f, --fixedMember          スペースメンバーの固定    [真偽] [デフォルト: null]
  -c, --createAppPermission  アプリ作成権限(EVERYONE または ADMIN)
                                [文字列] [選択してください: "EVERYONE", "ADMIN"]
  -g, --guest                ゲストスペースの指定     [真偽] [デフォルト: false]
  -t, --templateId           スペーステンプレートIDの指定               [文字列]
  -a, --action               操作の種類(create, update, show, delete)
               [文字列] [選択してください: "create", "update", "show", "delete"]
      --help                 ヘルプを表示                                 [真偽]

操作の種類に応じて、スペースの作成、更新、表示、または削除を行います。
操作の種類はactionオプションで指定してください(create, update, show, delete)。

操作の種類を指定するためにactionオプションを使用してください(create, update, show, delete)。

空のスペース作成手順

最初に、空のスペースを作ってみます。
create でスペース作成し、show でスペース表示します。

スペース作成と表示

$ node manage_space.js -e .env -a create -s テストスペース1  
スペース「テストスペース1」を作成しています...
作成されたスペース「テストスペース1」のID: 295
スペース「テストスペース1」が正常に作成されました。ID: 295

$ node manage_space.js -e .env -a show -i 295
スペースID「295」の情報を表示しています...
スペース情報:
  スペース名: テストスペース1
  スペースID: 295
  ゲストスペース: いいえ
  スペースの状態: 公開
  メンバー固定: いいえ
  アプリ作成権限: EVERYONE
  作成者: レックス (Alex2013)
  更新者: レックス (Alex2013)
  スペース内のアプリはありません。

スペース更新

スペース名とアプリ作成権限を変えてみます。

update で、スペース名とアプリ作成権限の変更を行います。
更新内容を確認の応答待ちになりますので、「yes」を応答します。

$ node manage_space.js -e .env -a update -i 295 -s テスト更新 -c ADMIN
スペースID「295」を更新しています...
スペースID「295」の情報を表示しています...
スペース情報:
  スペース名: テストスペース1
  スペースID: 295
  ゲストスペース: いいえ
  スペースの状態: 公開
  メンバー固定: いいえ
  アプリ作成権限: EVERYONE
  作成者: レックス (Alex2013)
  更新者: レックス (Alex2013)
  スペース内のアプリはありません。

更新内容:
  スペース名: テストスペース1 -> テスト更新
  アプリ作成権限: EVERYONE -> ADMIN
このスペースを更新してもよろしいですか? (yes/no): yes
スペースID「295」が正常に更新されました。

$ node manage_space.js -e .env -a show -i 295                         
スペースID「295」の情報を表示しています...
スペース情報:
  スペース名: テスト更新
  スペースID: 295
  ゲストスペース: いいえ
  スペースの状態: 公開
  メンバー固定: いいえ
  アプリ作成権限: ADMIN
  作成者: レックス (Alex2013)
  更新者: レックス (Alex2013)
  スペース内のアプリはありません。

スペース削除

delete で、スペース削除を行います。
スペース削除確認の応答待ちになりますので、「yes」を応答します。

$ node manage_space.js -e .env -a delete -i 295
スペースID「295」の情報を表示しています...
スペース情報:
  スペース名: テスト更新
  スペースID: 295
  ゲストスペース: いいえ
  スペースの状態: 公開
  メンバー固定: いいえ
  アプリ作成権限: ADMIN
  作成者: レックス (Alex2013)
  更新者: レックス (Alex2013)
  スペース内のアプリはありません。
このスペースを削除してもよろしいですか? (yes/no): yes
スペースID「295」を削除しています...
スペースID「295」が正常に削除されました。

$ node manage_space.js -e .env -a show -i 295  
スペースID「295」の情報を表示しています...
Error status: 520
Error data: {
  "code": "OC_NO01",
  "id": "nBcRITmgGzkngg1Olacp",
  "message": "指定されたスペース(id: 295)が見つかりません。削除されている可能性があります。"
}
...

スペーステンプレートによるスペース作成

スペーステンプレートを使って、アプリを含むスペースを作成します。

スペース作成と表示

スペーステンプレートID 7 を指定して、スペースを作成します。
テンプレートに含まれるアプリも一緒に作成されます。

$ node manage_space.js -e .env -a create -s テストテンプレート1 -t 7 
スペース「テストテンプレート1」を作成しています...
作成されたスペース「テストテンプレート1」のID: 296
スペース「テストテンプレート1」が正常に作成されました。ID: 296

$ node manage_space.js -e .env -a show -i 296                        
スペースID「296」の情報を表示しています...
スペース情報:
  スペース名: テストテンプレート1
  スペースID: 296
  ゲストスペース: いいえ
  スペースの状態: 公開
  メンバー固定: いいえ
  アプリ作成権限: EVERYONE
  作成者: レックス (Alex2013)
  更新者: レックス (Alex2013)
  スペース内のアプリ:
    1. 対象アプリ(データ生成調査用) (ID: 3102)
    2. 生成先アプリ(データ生成調査用) (ID: 3103)

スペース更新

update で、メンバー固定を変更します。

$ node manage_space.js -e .env -a update -i 296 -f
スペースID「296」を更新しています...
スペースID「296」の情報を表示しています...
スペース情報:
  スペース名: テストテンプレート1
  スペースID: 296
  ゲストスペース: いいえ
  スペースの状態: 公開
  メンバー固定: いいえ
  アプリ作成権限: EVERYONE
  作成者: レックス (Alex2013)
  更新者: レックス (Alex2013)
  スペース内のアプリ:
    1. 対象アプリ(データ生成調査用) (ID: 3102)
    2. 生成先アプリ(データ生成調査用) (ID: 3103)

更新内容:
  メンバー固定: いいえ -> はい
このスペースを更新してもよろしいですか? (yes/no): yes
スペースID「296」が正常に更新されました。

$ node manage_space.js -e .env -a show -i 296     
スペースID「296」の情報を表示しています...
スペース情報:
  スペース名: テストテンプレート1
  スペースID: 296
  ゲストスペース: いいえ
  スペースの状態: 公開
  メンバー固定: はい
  アプリ作成権限: EVERYONE
  作成者: レックス (Alex2013)
  更新者: レックス (Alex2013)
  スペース内のアプリ:
    1. 対象アプリ(データ生成調査用) (ID: 3102)
    2. 生成先アプリ(データ生成調査用) (ID: 3103)

スペース削除

delete で、スペース削除します。

$ node manage_space.js -e .env -a delete -i 296
スペースID「296」の情報を表示しています...
スペース情報:
  スペース名: テストテンプレート1
  スペースID: 296
  ゲストスペース: いいえ
  スペースの状態: 公開
  メンバー固定: はい
  アプリ作成権限: EVERYONE
  作成者: レックス (Alex2013)
  更新者: レックス (Alex2013)
  スペース内のアプリ:
    1. 対象アプリ(データ生成調査用) (ID: 3102)
    2. 生成先アプリ(データ生成調査用) (ID: 3103)
このスペースを削除してもよろしいですか? (yes/no): yes
スペースID「296」を削除しています...
スペースID「296」が正常に削除されました。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?