何を実現したいのかを書きましょう
Kintoneのアプリにレコードを追加したい
発生した問題やエラーメッセージを具体的に書きましょう
payloadの「企業名」フィールドには値が入っているのに、APIのレスポンスが「{“code”:“CB_VA01”,“id”:“gVV6COy3uonra1WUjqQM”,“message”:“入力内容が正しくありません。”,“errors”:{“record.企業名.value”:{“messages”:[“必須です。”]}}}」となります。
・Kintoneアプリの「企業名」は、フィールドコードも「企業名」です。必須項目です。
・OAuth認証を使っています。スコープには「 k:record:write」を指定しています。
・Kintoneアプリのアクセス権のあるユーザーを使っています。
・payloadの他の項目をすべて削除し、「企業名」だけを渡してみても、同じ結果でした。
実行したコードをコピー&ペーストしましょう
//製品テーブル
let tableField = [];
for(dataLine of dataLines){
let item = {
"値引き": {"value": dataLine["値引き"]},
"検索用品名": {"value": dataLine["検索用品名"]},
"数量": {"value": dataLine["数量"]},
"支払回数": {"value": dataLine["支払回数"]},
"期間_開始": {"value": dataLine["期間_開始"]},
"期間_終了": {"value": dataLine["期間_終了"]},
}
tableField.push({"value": item});
}
let payload = {
"app": appId,
"record": {
"企業名": {"value": kokyakuName},
"顧客区分": {"value": kokyakuKbn},
"会社ID": {"value": compId},
"顧客ID": {"value": kokyakuId},
"担当者": {"value": tantoName},
"担当者_SlackID": {"value": tantoSlack},
"担当者_部署": {"value": tantoBusho},
"申込期限": {"value": agreeDate},
"テーブル": {
"value": tableField
}
}
};
//OAuth認証を使う。
const service = getService();
if (!service.hasAccess()) {
Logger.log('認証が必要です。');
return;
}
const accessToken = service.getAccessToken();
options = {
method: 'post',
headers: {
"Content-Type": "application/json",
Authorization: 'Bearer ' + accessToken
},
payload: JSON.stringify(payload),
muteHttpExceptions : true
};
const response = UrlFetchApp.fetch(url, options);
let statusCode = response.getResponseCode();
let responseText = response.getContentText();
payloadの中身
{method=post,
headers={
Authorization=Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx,
Content-Type=application/json},
payload={
"app":xxx,
"record":{
"企業名":{"value":"テスト企業名"},
"顧客区分":{"value":"新規顧客"},
"会社ID":{"value":"32787403834"},
"顧客ID":{},
"担当者":{"value":"テスト 一郎"},
"担当者_部署":{"value":"SM"},
"申込期限":{"value":null},
"テーブル":{
"value":[{"value":{
"値引き":{"value":""},
"検索用品名":{"value":"テスト品名"},
"数量":{"value":"800"},
"支払回数":{"value":"1"},
"期間_開始":{"value":"2026-01-01"},
"期間_終了":{"value":"2026-01-31"}}
},]
}
}
},
muteHttpExceptions=true}