アプリの条件通知の設定を変更する

目次

アプリの条件通知の設定を変更する

アプリの条件通知の設定を変更します。

このAPIは、動作テスト環境のアプリを変更します。
本番環境に変更を反映する場合、このAPIを実行した後に、アプリ設定を運用環境へ反映するAPIを実行してください。
アプリ設定を運用環境へ反映するAPI

URL

通常のアプリ
https://sample.cybozu.com/k/v1/preview/app/notifications/general.json
ゲストスペースのアプリ
https://sample.cybozu.com/k/guest/GUEST_SPACE_ID/v1/preview/app/notifications/general.json

HTTPメソッド

PUT

必要なアクセス権

  • アプリ管理権限

リクエスト

パラメーター
パラメーター名 必須 説明
app 数値または文字列 必須 アプリID
notifications 配列 省略可 アプリの条件通知の設定の一覧
通知設定を追加、更新するときは、既存の通知設定をnotifications[].entityに指定してください。指定しない通知設定は削除されます。
通知設定をすべて削除する場合は、空配列を指定します。
notificationsを省略した場合は変更されません。
notifications[].entity オブジェクト 条件必須 条件通知の設定の対象
notificationsを指定する場合は必須です。
notifications[].entity.type 文字列 条件必須 条件通知の設定対象の種類
  • USER:ユーザー
  • GROUP:グループ
  • ORGANIZATION:組織
  • FIELD_ENTITY:「フォームのフィールドを追加」として指定するフィールド
entityを指定する場合は必須です。
notifications[].entity.code 文字列 条件必須 条件通知の設定対象のコード
entity.typeの値によって異なります。
  • 「USER」の場合:ログイン名
  • 「GROUP」の場合:グループコード
  • 「ORGANIZATION」の場合:組織コード
  • 「FIELD_ENTITY」の場合:次のフィールドのフィールドコードを指定します。
    • 作成者
    • 更新者
    • ユーザー選択
    • 組織選択
    • グループ選択
entityパラメーターを指定する場合は必須です。
ゲストユーザーを指定する場合、ログイン名の前に「guest/」を付けます。
notifications[].includeSubs 真偽値または文字列 省略可 設定を下位組織に継承するかどうか
  • true:継承する
  • false:継承しない
entity.typeが「ORGANIZATION」か、「FIELD_ENTITY」で組織選択フィールドが指定されている場合のみ有効です。
省略した場合は 「false」が設定されます。
notifications[].recordAdded 真偽値または文字列 省略可 レコード追加で通知するかどうか
  • true:レコード追加で通知する
  • false:レコード追加で通知しない
省略した場合は 「false」が設定されます。
notifications[].recordEdited 真偽値または文字列 省略可 レコード編集で通知するかどうか
  • true:レコード編集で通知する
  • false:レコード編集で通知しない
省略した場合は 「false」が設定されます。
notifications[].commentAdded 真偽値または文字列 省略可 コメントの書き込みで通知するかどうか
  • true:コメントの書き込みで通知する
  • false:コメントの書き込みで通知しない
省略した場合は 「false」が設定されます。
notifications[].statusChanged 真偽値または文字列 省略可 ステータスの更新で通知するかどうか
  • true:ステータスの更新で通知する
  • false:ステータスの更新で通知しない
省略した場合は 「false」が設定されます。
notifications[].fileImported 真偽値または文字列 省略可 ファイル読み込みで通知するかどうか
  • true:ファイル読み込みで通知する
  • false:ファイル読み込みで通知しない
省略した場合は 「false」が設定されます。
notifyToCommenter 真偽値または文字列 省略可 コメントを書き込んだユーザーが、そのレコードにコメントが書き込まれたときに通知を受信するかどうか
  • true:コメントが書き込まれたときに通知を受信する
  • false:コメントが書き込まれたときに通知を受信しない
省略した場合は変更されません。
revision 数値または文字列 省略可 期待しているリビジョン番号
実際のリビジョン番号と一致しない場合はエラーとなり、設定は変更されません。
値に「-1」を指定する、または指定しなかった場合はリビジョン番号は検証されません。
リクエストの例
ヘッダー
1
2
3
4
{
  "X-Cybozu-API-Token": "API_TOKEN",
  "Content-Type": "application/json"
}
ボディ
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
{
  "app": "1",
  "notifications": [
    {
      "entity": {
        "type": "USER",
        "code": "user1"
      },
      "recordAdded": true,
      "recordEdited": true,
      "commentAdded": false,
      "statusChanged": false,
      "fileImported": true
    },
    {
      "entity": {
        "type": "ORGANIZATION",
        "code": "org1"
      },
      "includeSubs": false,
      "recordAdded": true,
      "recordEdited": true,
      "commentAdded": false,
      "statusChanged": false,
      "fileImported": true
    }
  ],
  "notifyToCommenter": true,
  "revision": "2"
}

レスポンス

プロパティ
プロパティ名 説明
revision 文字列 アプリの設定を変更したあとのリビジョン番号
レスポンスの例
1
2
3
{
  "revision": "2"
}

サンプルコード

curlを使ったリクエスト
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
curl -X PUT 'https://sample.cybozu.com/k/v1/preview/app/notifications/general.json' \
  -H 'X-Cybozu-API-Token: API_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{
    "app": 1,
    "notifications": [
      {
        "entity": {
          "type": "USER",
          "code": "user1"
        },
        "recordAdded": true,
        "recordEdited": true,
        "commentAdded": false,
        "statusChanged": false,
        "fileImported": true
      },
      {
        "entity": {
          "type": "ORGANIZATION",
          "code": "org1"
        },
        "includeSubs": false,
        "recordAdded": true,
        "recordEdited": true,
        "commentAdded": false,
        "statusChanged": false,
        "fileImported": true
      }
    ],
    "notifyToCommenter": true,
    "revision": "2",
    "__REQUEST_TOKEN__": kintone.getRequestToken()
  }'
kintone.api()を使ったリクエスト

kintone.api()の詳細は、次のページを参照してください。
kintone REST APIリクエストを送信する

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
const body = {
  app: kintone.app.getId(),
  notifications: [
    {
      entity: {
        type: 'USER',
        code: 'user1'
      },
      recordAdded: true,
      recordEdited: true,
      commentAdded: false,
      statusChanged: false,
      fileImported: true
    },
    {
      entity: {
        type: 'ORGANIZATION',
        code: 'org1'
      },
      includeSubs: true,
      recordAdded: true,
      recordEdited: true,
      commentAdded: false,
      statusChanged: false,
      fileImported: true
    }
  ],
  notifyToCommenter: true,
  revision: '2'
};

await kintone.api(kintone.api.url('/k/v1/preview/app/notifications/general.json', true), 'PUT', body);