メインコンテンツへスキップ

概要

Notion ツールを使用すると、ページやデータベース、ブロックの作成・管理を含む Notion ワークスペースに関するさまざまなタスクを自動化できます。また、ページやデータベースから情報を抽出することも可能です。

主な機能

  • NOTION_CREATE_PAGE
    • 指定した Notion ワークスペースに新しいページを作成
  • NOTION_CREATE_DATABASE_ITEM
    • 指定したデータベースに新しいアイテムを追加
  • NOTION_RETRIEVE_A_PAGE
    • 指定したページを取得
  • NOTION_RETRIEVE_DATABASE
    • 指定したデータベースを取得
  • NOTION_QUERY_DATABASE
    • データソースまたは従来のデータベースを filter / sort 付きで検索
  • NOTION_LIST_BLOCK_CHILDREN
    • ページやブロックの子ブロックを取得。必要に応じて再帰取得
  • NOTION_APPEND_BLOCK_CHILDREN
    • Notion ブロック JSON をページやブロックへ追加
  • NOTION_DUPLICATE_PAGE
    • ページのプロパティと子ブロックをコピーして新しいページを作成
  • NOTION_UPDATE_PAGE_PROPERTIES
    • ページプロパティやアイコン、カバー、ロック状態を更新
  • NOTION_APPEND_IMAGE_BLOCK
    • 外部 URL または File Upload API を使って画像ブロックを追加

認証

Notion API を使用するには、ワークスペースでインテグレーションを作成する必要があります。以下の手順に従ってください:
  1. Notion Developers にアクセス
  2. 「New Integration」をクリック
  3. 必要事項を入力し、接続したいワークスペースを選択
  4. インテグレーション作成後、「Internal Integration Token」が発行されます。このトークンを使用して API リクエストを認証します。
注意:API キーは機密情報として扱い、公開リポジトリにコミットしないでください。

例:ページやデータベースの作成と取得

- id: retrieve_page
  tool: NOTION_RETRIEVE_A_PAGE
  config:
    - name: token
      value: "{{secrets.NOTION_TOKEN}}"
  input:
    - name: page_id
      value: 15cf9fcee23b81e193f7cb5774043b82
- id: retrieve_database
  tool: NOTION_RETRIEVE_DATABASE
  config:
    - name: token
      value: "{{secrets.NOTION_TOKEN}}"
  input:
    - name: database_id
      value: 16ff9fcee23b80d38b47d754dcaffe16
- id: create_page
  tool: NOTION_CREATE_PAGE
  config:
    - name: token
      value: "{{secrets.NOTION_TOKEN}}"
  input:
    - name: parent_page_id
      value: 196bf44b5f624485a29f415bf4afac47
    - name: title
      value: Test Page
    - name: content
      value: This is a test page
- id: create_database_item
  tool: NOTION_CREATE_DATABASE_ITEM
  config:
    - name: token
      value: "{{secrets.NOTION_TOKEN}}"
  input:
    - name: database_id
      value: 16ff9fcee23b80d38b47d754dcaffe16
    - name: title
      value: Test Page
    - name: content
      value: This is a test page
- id: query_database
  tool: NOTION_QUERY_DATABASE
  config:
    - name: token
      value: "{{secrets.NOTION_TOKEN}}"
  input:
    - name: data_source_id
      value: 1a44be1209534631b4989e5817518db8
    - name: filter_json
      value: '{"property":"Done","checkbox":{"equals":true}}'
    - name: sorts_json
      value: '[{"property":"Date","direction":"descending"}]'
- id: duplicate_page
  tool: NOTION_DUPLICATE_PAGE
  config:
    - name: token
      value: "{{secrets.NOTION_TOKEN}}"
  input:
    - name: source_page_id
      value: 15cf9fcee23b81e193f7cb5774043b82
    - name: new_title
      value: Next Meeting
    - name: properties_json
      value: '{"Date":{"date":{"start":"2026-06-06"}}}'
- id: append_image
  tool: NOTION_APPEND_IMAGE_BLOCK
  config:
    - name: token
      value: "{{secrets.NOTION_TOKEN}}"
  input:
    - name: block_id
      value: 15cf9fcee23b81e193f7cb5774043b82
    - name: image
      value: https://example.com/graphic-recording.png
    - name: caption
      value: Graphic recording