codecycler/notion

This package is abandoned and no longer maintained. No replacement package was suggested.

Notion PHP SDK

Fund package maintenance!
Codecycler

0.11.0 2022-02-04 19:25 UTC

This package is auto-updated.

Last update: 2022-07-12 17:44:19 UTC


README

banner.png

Latest Version on Packagist Total Downloads

This is an unofficial PHP SDK for the new public Notion API. It's work in progress as we didn't get the change to be included to the private beta.

Installation

You can install the package via composer:

composer require codecycler/notion

Usage

Getting all databases attached to your integration.

use Notion\Notion;

$databaseOptions = new Notion($token)
    ->database()
    ->ids();

Querying a database by id

use Notion\Notion;

$databaseOptions = new Notion($token)
    ->database($databaseId)
    ->query()
    ->get();

Query database by property

$nameFilter = (new Notion\Filters\TextFilter())
    ->equals('Name', 'Notion is awesome!');

$database = $client->database('e3161af3-ff12-43c5-9f42-02eea4ab4cbf')
  ->query()
  ->filter($nameFilter)
  ->get();

foreach ($database->pages as $page) {
  $name = $page->name;
  $status = $page->status;
}

Getting a page by id

$page = $client->page('9b0ff081-1af8-4751-92d6-9e07fbd5c20d')->get();

$name           = $page->name;          // Property: 'Name'
$showOnWebsite  = $page->showOnWebsite; // Property: 'Show on website'

Creating a new page in a database

$database = $client->database('e3161af3-ff12-43c5-9f42-02eea4ab4cbf')->get();

$page = $database->newPage();

$page->name = 'New page created with the Notion API';
$page->showOnWebsite = true;

$page->save();

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.