実現したいこと
スプレッドシート上で行が追加された場合にNotionのデータベースに新しくデータを作成されるようにしたいです。
前提
Notion APIの設定などは完了しており、手動で追加するコードは問題なく実行ができ、Notion側に追加されています。
GASは下記のコードで作成をし、トリガーで編集時に動作するように設定をしています。
編集時にGASの実行数のところでは完了になっており、エラーは発生していません。
シートには
B列に会社名
C列に氏名
が入っており、C列の新しいデータの追加をトリガーに動作するようにしたい。
発生している問題・エラーメッセージ
スプレッドシート側に行を追加しても、スクリプトは実行されているようなのですが、Notion側に情報が追加されません。
エラーメッセージの表記も特にありません。
該当のソースコード
GAS
1function onEdit(e) { 2 var ss = e.source; 3 var sheet = ss.getSheetByName('顧客管理表'); 4 var range = e.range; 5 console.log(range.getA1Notation()); 6 var column = range.getColumn(); 7 8 // C列に新しい行が追加された場合のみ実行 9 if (sheet.getName() === '顧客管理表' && column === 3) { 10 var notionToken = 'secret_CZMxBXYc2F4AhXMmgdxgMxYNMAKdoWfvtXYVJDVe7dB'; 11 var databaseId = 'dbc3883c8314424daa52d2f9b173556a'; 12 13 var companyName = sheet.getRange(range.getRow(), 2).getValue(); 14 var fullName = sheet.getRange(range.getRow(), 3).getValue(); 15 16 var pageProperties = { 17 "parent": { 18 "database_id": databaseId 19 }, 20 "properties": { 21 "title": [ 22 { 23 "text": { 24 "content": companyName + ' ' + fullName 25 } 26 } 27 ] 28 } 29 }; 30 31 var notionUrl = 'https://api.notion.com/v1/pages'; 32 var headers = { 33 'Authorization': 'Bearer ' + notionToken, 34 'Content-Type': 'application/json', 35 'Notion-Version': '2021-08-16' 36 }; 37 38 var options = { 39 'method': 'post', 40 'headers': headers, 41 'payload': JSON.stringify(pageProperties) 42 }; 43 44 //var response = UrlFetchApp.fetch(notionUrl, options); 45 //Logger.log(response.getContentText()); 46 } 47} 48 49 50 51 52

回答1件
あなたの回答
tips
プレビュー