技術資料

PHPでNotion APIを使ってページを投稿する方法

作成日:2023.11.24

Notion APIを使ってPHPからNotionにページを投稿する方法を解説します。まずはインテグレーションを作成し、APIキーを取得。コード例を基に、データベースに新しいページを追加する方法をステップバイステップで学びます。タイトルやプロパティ、本文の投稿方法も紹介。

error この記事は最終更新日から1年以上が経過しています。

Notion APIを使ってPHPから投稿する方法。

Notion API を使うために、まずはこちらからインテグレーションを作成。APIのキーを取得しておく。

Notionのページの右上の「・・・」をクリックして「コネクトを追加」から、作成したインテグレーションとコネクトする。

そして以下のようなコードで投稿できる。

$data = array(
	'parent' => ['database_id' => 'NotionのデータベースIDを入れる'],
	'properties' => [
		'名前' => [
			'title' => [
				[
					'text' => [
						'content' => 'タイトルだぞ'
					]
				]
			]
		]
	],
	'children' => [
		[
			'object' => 'block',
			'type' => 'paragraph',
			'paragraph' => [
				'rich_text' => [
					[
						'type' => 'text',
						'text' => [
							'content' => "ここに本文が入るんだぞ\nうむうむ。\n"
						]
					]
				]
			]
		]
	]
);
$json_data = json_encode($data);

$url = 'https://api.notion.com/v1/pages';
$api_key = 'Notion API KEYを入れる';
$headers = array(
    'Content-Type: application/json',
    "Authorization: Bearer {$api_key}",
    'Notion-Version: 2022-06-28'
);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json_data);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);

$apiresult = json_decode($response);

var_dump($apiresult);

database_id は、Notion の各ページのURLについてるやつ。

タイトル以外のプロパティも入れる場合は以下のような感じ(タスクリストの例)。

$data = array(
	'parent' => ['database_id' => 'NotionのデータベースIDを入れる'],
	'properties' => [
		'名前' => [
			'title' => [[
				'text' => [
					'content' => 'Notion API の調査'
				]
			]]
		],
		'カテゴリ' => [
			'select' => [
				'name' => 'プライベート'
			]
		],
		'ステータス' => [
			'status' => [
				'name' => 'In progress'
			]
		],
		'優先度' => [
			'select' => [
				'name' => '★★★'
			]
		],
	]
);

PHPでNotionのページを更新する方法

2023.11.24

NotionのページをPHPから直接更新できる方法をご紹介します。本記事では、Notion APIを使用して、タスクの名前やカテゴリ、ステータスなどのプロパティを簡単に更新する方法を解説します。

Notion API PHP

Notion APIでPHPからデータベース検索を実行する方法

2023.11.24

Notion APIを使って、PHPでNotionデータベースから特定の条件に一致するデータを検索する方法をご紹介します。記事では、フィルター条件をJSON形式で指定して、タスクのステータスなどに基づいてデータを絞り込む方法を解説しています。

Notion API PHP

SimpleSAMLphpを使ったPHPアプリケーションのSSO対応ガイド

2025.02.11

SimpleSAMLphpを使ってPHPアプリケーションにSSO機能を追加する方法を紹介します。Microsoft Entra IDとの連携方法や、認証情報の取得方法について詳しく解説します。

Microsoft Entra ID PHP SAML認証 SimpleSAMLphp

Microsoft Entra IDとSimpleSAMLphpを利用したSAML認証SSO構築ガイド

2025.01.26

ローカル環境でMicrosoft Entra IDと連携したSAML認証のシングルサインオンを実現するための手順を紹介します。SimpleSAMLphpを利用した設定方法や、Microsoft側の構成変更について詳しく解説しています。

Microsoft Entra ID PHP SAML認証 SimpleSAMLphp

阿部辰也へのお仕事の依頼・お問い合わせ

お名前 *必須
会社名
メールアドレス *必須
電話番号
URL
お問い合わせのきっかけ
お問い合わせの内容 *必須
個人情報の取り扱いについて *必須 プライバシーポリシーをご確認いただき、同意いただける場合は「同意する」にチェックをしてください。

keyboard_double_arrow_up
TOP