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



またご不明な点などございましたら、お気軽にチャットでご質問ください。