Open2

Notion

aGlnYWtpbg==aGlnYWtpbg==

タスク管理にnotionを使っており、TODOの一覧はnotionでコーディングに関するタスクはvsnoteで管理したい。
issueに紐づくvsnoteを自動で作成するスクリプトを作成したので、vsnoteを作成する際に、notionのデータベースにもデータを自動で登録できるスクリプトを作りたい。

aGlnYWtpbg==aGlnYWtpbg==

dbへのinsert処理(gas)

code
function addPageToNotion() {
  const notionApiUrl = 'https://api.notion.com/v1/';
  const databaseId = '';
  const notionApiToken = '';

  // 新しいページを作成する
  const newPage = {
    "properties": {
      "Name": {
        "title": [
          {
            "text": {
              "content": "新しいページのタイトル"
            }
          }
        ]
      },
      "Description": {
        "rich_text": [
          {
            "text": {
              "content": "新しいページの説明"
            }
          }
        ]
      }
    }
  };

  // Notion APIにリクエストを送信する
  const response = UrlFetchApp.fetch(notionApiUrl + 'pages', {
    'method': 'post',
    'headers': {
      'Authorization': 'Bearer ' + notionApiToken,
      'Notion-Version': '2022-06-28',
      'Content-Type': 'application/json',
    },
    'payload': JSON.stringify({
      'parent': {
        'database_id': databaseId
      },
      'properties': newPage.properties,
    })
  });

  // レスポンスからページIDを取得する
  const responseBody = JSON.parse(response.getContentText());
  const pageId = responseBody.id;

  Logger.log('Page added to Notion database with ID ' + pageId);
}