6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GMOアドマーケティングAdvent Calendar 2023

Day 23

Notion APIでYouTubeやVimeoの動画を埋め込む方法

Last updated at Posted at 2023-12-22

はじめに

Notion APIの正式リリースからもうすぐで二年を迎えます。
リリースされてから様々な機能が追加されましたが、今回はNotion APIを利用してYouTubeやVimeoの動画を埋め込む方法を紹介します。

事前準備

今回は以下のステップでNotion APIの環境を構築しました。

  1. my-integrations」のページからAPIキーを発行
  2. APIで操作したいNotionのページの「Connections」>「Add connections」から先程作成したインテグレーションを追加
  3. 操作したいページのURLからブロックIDを取得

詳細は以前執筆した以下の記事や公式のガイドをご確認ください。

Notion APIでYouTubeの動画を埋め込む

早速Notion APIでYouTubeの動画を埋め込んでみましょう。
block_id$NOTION_API_KEY はそれぞれの環境に合わせて設定してください。

curl -X PATCH 'https://api.notion.com/v1/blocks/{block_id}/children' \
  -H "Authorization: Bearer $NOTION_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Notion-Version: 2022-06-28" \
  --data '{
    "children": [
      {
        "type": "video",
        "video": {
          "type": "external",
          "external": {
            "url": "https://www.youtube.com/watch?v=CpqhPcswA1Q"
          }
        }  
      }
    ]
  }'

ブロックのタイプは "type": "video" で指定し、 externalurl でYouTubeのURLを指定します。
YouTubeのURLは以下の形式を指定することで埋め込まれることを確認しました。

  • https://www.youtube.com/watch?v=[id]
  • https://www.youtube.com/embed/[id]

「2023年12月 APIテスト用」というNotionのページに対してcurlを実行すると、以下のキャプチャのようにYouTube動画が埋め込まれました。


Notion APIでVimeoの動画を埋め込む

動画の埋め込みは先ほど紹介した "type": "video" が基本ですが、Vimeoの埋め込みに関してはこの記事を執筆している2023年12月時点ではvideoブロックをサポートしていないため、以下のように別の方法で埋め込む必要があります。

curl -X PATCH 'https://api.notion.com/v1/blocks/{block_id}/children' \
    -H "Authorization: Bearer $NOTION_API_KEY" \
    -H "Content-Type: application/json" \
    -H "Notion-Version: 2022-06-28" \
    --data '{
        "children": [
            {
                "embed": {
                    "url": "https://player.vimeo.com/video/783455051"
                }
            }
        ]
    }'

YouTube動画の場合はvideoブロックを使用しましたが、Vimeoの場合はembedでURLを指定することで動画を埋め込むことが可能です。
VimeoのURLは https://vimeo.com/〜ではなく、https://player.vimeo.com/video/〜の形式を指定しました。

curlコマンドを実行すると先程のYouTube動画の下の部分にVimeoの動画が埋め込まれました。

まとめ

今回はNotion APIを使った動画の埋め込みに関して紹介しました。
動画の埋め込みは基本的にはvideoブロックを指定し、Vimeoの場合はembedブロックを使うことで動画を埋め込むことができました。
それぞれの詳細は以下のドキュメントも参考にしてください。

告知

明日はM.Hさんによる「Stable DiffusionのSDXL1.0モデルと拡張機能のあれこれ」です。
引き続き、GMOアドマーケティング Advent Calendar 2023 をお楽しみください!

6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?