2 个稳定版本

1.0.2 2024年7月18日
1.0.1 2024年7月7日
1.0.0 2024年6月23日
0.1.15 2024年5月28日
0.1.9 2024年2月20日

#1450数据库接口

Download history 146/week @ 2024-05-03 155/week @ 2024-05-10 227/week @ 2024-05-17 175/week @ 2024-05-24 53/week @ 2024-05-31 14/week @ 2024-06-07 27/week @ 2024-06-14 152/week @ 2024-06-21 8/week @ 2024-06-28 128/week @ 2024-07-05 75/week @ 2024-07-12 50/week @ 2024-07-19 17/week @ 2024-07-26 3/week @ 2024-08-09 29/week @ 2024-08-16

每月53次下载

MIT 许可证

115KB
3.5K SLoC

notion-client

Build Notion API Crates.io

为 Rust 编写的 Notion API 库。目前,此库支持除身份验证之外的所有端点!

入门指南

查询数据库示例


use notion_client::endpoints::{
    databases::query::request::{QueryDatabaseRequest, Sort, SortDirection, Timestamp},
    Client,
};

const NOTION_DB_ID: &str = ""; // ⚠️ Set your DB id which can be accessible from API
const NOTION_TOKEN: &str = ""; // ⚠️ Set your notion token

#[tokio::main]
async fn main() {
    // Initialize client
    let client = Client::new(NOTION_TOKEN.to_string(), None);
    let Ok(client) = client else {
        panic!("error");
    };

    // Set up request parameters
    let request = QueryDatabaseRequest {
        sorts: Some(vec![Sort::Timestamp {
            timestamp: Timestamp::CreatedTime,
            direction: SortDirection::Ascending,
        }]),
        ..Default::default()
    };

    // Send request
    let res = client
        .databases
        .query_a_database(NOTION_DB_ID, request)
        .await;

    // See result
    print!("{:#?}", res);
}

更多示例 示例

待办事项

  • 支持线程安全
  • 添加更多示例
  • 支持块端点
  • 支持页面端点
  • 支持数据库端点
  • 支持用户端点
  • 支持评论端点
  • 支持搜索端点
  • 支持身份验证端点
  • 为块端点添加测试
  • 为页面端点添加测试
  • 为数据库端点添加测试
  • 为用户端点添加测试
  • 为评论端点添加测试
  • 为搜索端点添加测试
  • 支持构建器模式

贡献

欢迎贡献!如果您有任何想法,最好在我们开始工作之前提出,以确保不会浪费任何努力。如果有针对此问题的开放问题,请务必提出。

如果您有任何问题,请随时使用 讨论。请随时提问!

依赖关系

~6–18MB
~270K SLoC