Job Runnerのカスタマイズで、「関連レコード一覧の条件でレコードを取得する」を使用する場合、「APIトークン」に、そのレコードの対象アプリと、アプリの全ての関連レコードの「kintone 接続設定を行う」のアクション番号を指定しないと、次のようなエラーが発生する事があります。
アプリの元のレコードのAPIトークンが足りない場合
{'code': 'GAIA_AP15', 'id': '※※※※※※※※', 'message': 'APIトークンとアプリ(id: ※※※)の組み合わせが正しくありません。'}アプリの関連レコード先のAPIトークンが足りない場合
[action ※] record_api.get_records_from_reference_table starting.
関連レコード情報がありません。
このエラーを解消するためにはレコードの対象アプリと、アプリの全ての関連レコードの先に指定されているアプリに対し、あらかじめ「kintone 接続設定を行う」を行っておき、それらの全ての番号のアクションを指定するようにします。
具体的な修正例
文章だけだとすこしわかりにくいので、具体的な修正例も挙げてみます。
次のようなアプリ、カスタマイズがあった場合に、
〇アプリ
※全てフィールド名とフィールドコードは同一のものを設定しています
セミナー名:文字列(1行)
セミナーアプリの内容:関連レコード一覧
参加者アプリの内容:関連レコード一覧
〇カスタマイズ(下記の例ではJob Runnerの定期実行タスクで設定)
次のような「関連レコード情報がありません。」エラーが発生した場合、
[action 6] record_api.get_records_from_reference_table starting.
(6) 関連レコード情報がありません。
やること「関連レコード一覧の条件でレコードを取得する」の「APIトークン」の設定値に対し、レコードで指定したアプリのAPIトークンと、そのアプリの全ての関連レコードを含めるように修正してみてください。
上の例を元に変更した場合は次のようになります。
するとエラーが解消され、次のようなログとなります。
[action 6] record_api.get_records_from_reference_table starting.
BEGIN GET https://※※※※※※※※.cybozu.com/k/v1/records.json
{'app': 132, 'query': '参加セミナー = "テストセミナー1" order by レコード番号 desc limit 500 offset 0', 'totalCount': True}
END GET https://※※※※※※※※.cybozu.com/k/v1/records.json
[action 6] record_api.get_records_from_reference_table done.
ended.
kintoneの仕様制限にひっかかるパターン
そもそもkintoneの仕様制限として、REST API上で1つの処理(APIアクセス)を行う際には、APIトークンは9つまでしか一気に使えない制限があります。
※注:この記事は2023/8/2時点の情報を元にしており、仕様は今後変わる事があります。
※認証 - cybozu developer network から引用
ですので、たとえば次のように10以上のAPIトークンを指定した場合、
次のようなエラーメッセージ(GAIA_TM13)が発生します。
{'code': 'GAIA_TM13', 'id': '※※※※※※※※', 'message': '10個以上のAPIトークンは指定できません。'}
END GET https://※※※※※※※※.cybozu.com/k/v1/app/form/fields.json
(12) kintone がエラーを返しました。
kintone からの応答:{'code': 'GAIA_TM13', 'id': '※※※※※※※※', 'message': '10個以上のAPIトークンは指定できません。'}
GET https://※※※※※※※※.cybozu.com/k/v1/app/form/fields.json
{'app': ※※※}
このため、関連レコードが9つ以上あるアプリにおいて、Job Runnerで関連レコードの条件でレコードを取得したい場合は「関連レコード一覧の条件でレコードを取得する」でレコードを取得する代わりに、「クエリで条件を指定してレコードを取得する」などの「やること」を用いてのレコード取得をご検討ください。
また、次のTipsも併せてご確認ください。
このTipsはJob Runnerでレコードの追加・編集を行うアプリにルックアップフィールドが存在する場合の、APIトークンについての記載があり、本Tipsに関連する内容となっています。
指定した日時にルックアップフィールドとテーブルを含むレコードを追加する : gusuku support
またご不明な点などございましたら、お気軽にチャットでご質問ください。