プロセス管理の設定を取得する

目次

プロセス管理の設定を取得する

アプリのプロセス管理の設定を取得します。

URL

URLは、運用環境の設定を取得する場合と、動作テスト環境の設定を取得する場合とで異なります。

運用環境の設定を取得する場合
通常のアプリ
https://sample.cybozu.com/k/v1/app/status.json
ゲストスペースのアプリ
https://sample.cybozu.com/k/guest/GUEST_SPACE_ID/v1/app/status.json
動作テスト環境の設定を取得する場合
通常のアプリ
https://sample.cybozu.com/k/v1/preview/app/status.json
ゲストスペースのアプリ
https://sample.cybozu.com/k/guest/GUEST_SPACE_ID/v1/preview/app/status.json

HTTPメソッド

GET

必要なアクセス権

運用環境の設定を取得する場合

次のいずれかの権限が必要です。

  • アプリのレコード閲覧権限
  • アプリのレコード追加権限
動作テスト環境の設定を取得する場合
  • アプリ管理権限

リクエスト

パラメーター
パラメーター名 必須 説明
app 数値または文字列 必須 アプリID
lang 文字列 省略可 取得する名称の言語
ステータスやアクションに言語ごとの名称を設定している場合に指定します。
言語ごとの名称 (External link)
  • ja:日本語
  • en:英語
  • zh:中国語
  • user:APIを実行するユーザーが表示言語に設定している言語
    言語設定が「Webブラウザーの設定に従う」の場合、「Accept-Language」ヘッダーの有無によって、取得する言語が変わります。
    • ヘッダーあり:「Accept-Language」ヘッダーで指定した言語
    • ヘッダーなし:cybozu.com共通管理のロケールの設定で設定した言語
      ロケールの設定 (External link)
  • default:デフォルト
省略すると、デフォルトの名称を取得します。
リクエストの例(URLにパラメーターを含める場合)
URL

https://sample.cybozu.com/k/v1/app/status.json?app=1&lang=ja

ヘッダー
1
2
3
{
  "X-Cybozu-API-Token": "API_TOKEN"
}

リクエストヘッダーの詳細は共通仕様を参照してください。
kintone REST APIの共通仕様

リクエストの例(リクエストボディにパラメーターを含める場合)
URL

https://sample.cybozu.com/k/v1/app/status.json

ヘッダー
1
2
3
4
{
  "X-Cybozu-API-Token": "API_TOKEN",
  "Content-Type": "application/json"
}
ボディ
1
2
3
4
{
  "app": "1",
  "lang": "ja"
}

レスポンス

プロパティ
プロパティ名 説明
enable 真偽値 プロセス管理が有効かどうか
  • true:プロセス管理が有効
  • false:プロセス管理が無効
states オブジェクト ステータスの情報
プロセス管理を一度も設定していないアプリの場合は 「null」が返ります。
states.ステータス名.name 文字列 ステータス名
states.ステータス名.index 文字列 ステータスの順番
値は0から始まり、昇順で並べ替えられます。
states.ステータス名.assignee オブジェクト ステータスの作業者
states.ステータス名.assignee.type 文字列 ステータスの作業者のタイプ
  • ONE:次のユーザーから作業者を選択
  • ALL:次のユーザー全員
  • ANY:次のユーザーのうち一人
先頭(states.ステータス名.indexが最小)のステータスは、「ONE」が返ります。
states.ステータス名.assignee.entities 配列 ステータスの作業者の一覧
並び順は画面と同じです。
states.ステータス名.assignee.entities[].entity オブジェクト ステータスの作業者のユーザー情報
削除済みや無効なユーザー、組織、グループが指定されている場合、および削除済みのカスタマイズ項目が指定されている場合はレスポンスに含めません。
states.ステータス名.assignee.entities[].entity.type 文字列 ステータスの作業者の指定形式
  • USER:ユーザー
  • GROUP:グループ
  • ORGANIZATION:組織
  • FIELD_ENTITY:「フォームのフィールドを追加」で指定したフィールド
  • CREATOR:アプリ作成者
  • CUSTOM_FIELD:.com共通管理のカスタマイズ項目
    カスタマイズ項目 (External link)
states.ステータス名.assignee.entities[].entity.code 文字列 ステータスの作業者のコード
entity.typeの値によって異なります。
  • 「USER」の場合:ログイン名
  • 「GROUP」の場合:グループコード
  • 「ORGANIZATION」の場合:組織コード
  • 「FIELD_ENTITY」の場合:「フォームのフィールドを追加」で指定したフィールドのフィールドコード
  • 「CREATOR」の場合:「null」
  • 「CUSTOM_FIELD」の場合:カスタマイズ項目コード
ゲストユーザーの場合、ログイン名の前に「guest/」が付きます。
states.ステータス名.assignee.entities[].includeSubs 真偽値 設定を下位組織に継承するかどうか
  • true:継承する
  • false:継承しない
entity.typeが「ORGANIZATION」か、「FIELD_ENTITY」で組織選択フィールドが指定されている場合のみ、「true」が返ります。
actions 配列 アクションの情報の一覧
並び順は画面と同じです。プロセス管理を一度も設定していないアプリの場合は 「null」が返ります。
actions[].name 文字列 アクションの名前
actions[].from 文字列 アクション実行前のステータス名
actions[].to 文字列 アクション実行後のステータス名
actions[].filterCond 文字列 アクションの実行条件
revision 文字列 アプリの設定のリビジョン番号
レスポンスの例
 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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
{
  "enable": true,
  "states": {
    "未処理": {
      "name": "未処理",
      "index": "0",
      "assignee": {
        "type": "ONE",
        "entities": []
      }
    },
    "処理中": {
      "name": "処理中",
      "index": "1",
      "assignee": {
        "type": "ALL",
        "entities": [
          {
            "entity": {
              "type": "USER",
              "code": "user1"
            },
            "includeSubs": false
          },
          {
            "entity": {
              "type": "FIELD_ENTITY",
              "code": "作成者"
            },
            "includeSubs": false
          },
          {
            "entity": {
              "type": "CUSTOM_FIELD",
              "code": "上司"
            },
            "includeSubs": false
          }
        ]
      }
    },
    "完了": {
      "name": "完了",
      "index": "2",
      "assignee": {
        "type": "ONE",
        "entities": []
      }
    }
  },
  "actions": [
    {
      "name": "処理開始",
      "from": "未処理",
      "to": "処理中",
      "filterCond": "レコード番号 = \"1\""
    },
    {
      "name": "完了する",
      "from": "処理中",
      "to": "完了",
      "filterCond": ""
    }
  ],
  "revision": "3"
}

サンプルコード

curlを使ったリクエスト
1
2
3
4
5
6
7
curl -X GET 'https://sample.cybozu.com/k/v1/app/status.json' \
  -H 'X-Cybozu-API-Token: API_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{
    "app": 1,
    "lang": "ja"
  }'
kintone.api()を使ったリクエスト

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

1
2
3
4
5
const body = {
  app: kintone.app.getId()
};

await kintone.api(kintone.api.url('/k/v1/app/status.json', true), 'GET', body);