elsayed85/laravel-notion-api

Laravel 对 Notion API 的封装

0.3.0 2021-05-16 05:09 UTC

This package is auto-updated.

Last update: 2024-09-16 12:57:30 UTC


README

轻松实现 Laravel 与 Notion 的集成

Latest Version on Packagist Total Downloads

此包提供了一种简单且清晰的方式访问 Notion API 端点、查询数据和更新现有条目。

安装

您可以通过 composer 安装此包

composer require fiveam-code/laravel-notion-api

授权

Notion API 需要访问令牌和 Notion 集成,Notion 文档 解释了如何操作。在 Notion 账户中授权集成是启用 API 访问的重要步骤。

将您的 Notion API 令牌添加到 .env 文件中

NOTION_API_TOKEN="$YOUR_ACCESS_TOKEN"

使用方法

请访问此包的 文档

🔥 代码示例,快速启动您的 Notion API 项目

基本设置

use FiveamCode\LaravelNotionApi\Notion;
use Illuminate\Support\Collection;
use FiveamCode\LaravelNotionApi\Query\Sorting;
use FiveamCode\LaravelNotionApi\Query\Filter;

// Setup basic API connection
$notion = new Notion();
$notion->v1();

获取页面信息

// Returns a specific page
$notion->pages()->find($yourPageId);

查询数据库

// Queries a specific database and returns a collection of pages (= database entries)
$sortings = new Collection();
$filters = new Collection();

$sortings
  ->add(Sorting::propertySort("Ordered", "ascending"));
$sortings
  ->add(Sorting::timestampSort("created_time", "ascending"));

$filters
  ->add(Filter::textFilter("title", ["contains" => "new"]));
// or
$filters
  ->add(Filter::rawFilter("Tags", ["multi_select" => ["contains" => "great"]]));
  
$notion
  ->database($yourDatabaseId)
  ->filterBy($filters) // filters are optional
  ->sortBy($sortings) // sorts are optional
  ->limit(5) // limit is optional
  ->query(); 

测试

vendor/bin/phpunit tests

更新日志

请参阅 更新日志 了解最近的变化。

贡献

请参阅 贡献指南 获取详细信息。

安全性

如果您发现任何安全相关的问题,请发送电子邮件至 hello@dianaweb.dev,而不是使用问题追踪器。

鸣谢

许可证

MIT 许可证 (MIT)。请参阅 许可证文件 了解更多信息。

Laravel 包模板

此包是用 Laravel 包模板 生成的。