A complete Notion SDK for PHP developers.
This project requires PHP 8.1 or higher. To install it with Composer run:
$ composer require mariosimao/notion-sdk-php
Creating a page on Notion with the SDK is easy.
use Notion\Blocks\Heading1;
use Notion\Blocks\ToDo;
use Notion\Common\Emoji;
use Notion\Notion;
use Notion\Pages\Page;
use Notion\Pages\PageParent;
$notion = Notion::create("secret_token");
$parent = PageParent::page("c986d7b0-7051-4f18-b165-cc0b9503ffc2");
$page = Page::create($parent)
->changeTitle("Shopping list")
->changeIcon(Emoji::fromString("๐"));
$content = [
Heading1::fromString("Supermarket"),
ToDo::fromString("Tomato"),
ToDo::fromString("Sugar"),
ToDo::fromString("Apple"),
ToDo::fromString("Milk"),
Heading1::fromString("Mall"),
ToDo::fromString("Black T-shirt"),
];
$page = $notion->pages()->create($page, $content);
Further documentation can be found at https://mario.engineering/notion-sdk-php.
SemVer is followed closely. Minor and patch releases should not introduce breaking changes to the codebase.
Any classes or methods marked as @internal
are not intended for use outside of this library and are subject to breaking changes at any time, avoid using them.
When a new minor version (e.g. 1.3 -> 1.4) is released, the previous one (1.3) will continue to receive security and critical bug fixes for at least 3 months.
When a new major version is released (e.g. 1.6 -> 2.0), the previous one (1.6) will receive critical bug fixes for at least 3 months and security updates for 6 months after that new release comes out.
This policy may change in the future and exceptions may be made on a case-by-case basis.