For easy use notion-sdk-py
Project description
Table of Contents
notion_kit
Is for easier use notion-sdk-py.
-
Because Notion_sdk_py Usage documentation is less, cumbersome to use, and too many dictionary operations.
-
In order to make it easier to use Notion API, a lot of functions that may not be used have been created. :)
Usage
Install
- pypi
pip install notion-kit
- Github
pip install git+https://github.com/bluewhitep/notion_kit.git
- Refer to the ./examples fold for details on usage
Quicky start
- Following the instruction for get token: Notion Authorization
- Use the token. [Recommend: Use environment variable]
token = os.environ["NOTION_TOKEN"]
- Initalize notion_kit
from notion_kit import kit as nkit notion_client = nkit.Client(token=token)
- Get id from notion url
notion_url = "<Notion url>" notion_id = nkit.get_id(url=notion_url)
- Get data
page = nkit.Page.get_data(notion_id) # or database = nkit.Database.get_data(notion_id)
Object
- Notion_kit use class object operations
- object to dict
data_dict = data_object.Dict # or data_dict = data_object.asdict()
- object to dict
- Special cases:
PropertyType
object can use.full_dict()
to get{Property_name: Property_type_value}
dict.data_dict = data_object.full_dict()
PropertyType
object can use.label_dict()
to get short info dict.data_dict = data_object.label_dict() # short info dict: # {'name': Property_name, # 'type': Property_type, # 'id': Property_id # }
Functions
- Database
- ⭕️ Create a new database
- ⭕️ Retrieve databse [Get page list in database]
- ⭕️ Query database [Get database data]
- ⭕️ Create / Update property
- ❌ Delete database [Notion api not support]
- Page
- ⭕️ Create page in database / page
- ⭕️ Retrieve (get page data)
- ⭕️ Update property [ ** Page in Database]
- ⭕️ Block [add / update / delete block]
- ❌ Delete page [Notion api not support]
- Block
- ⭕️ Create
- ⭕️ Retrieve (get block data and block childrens)
- ⭕️ Update (rename function from notion_sdk_py)
- ⭕️ Delete block
- User
- ⭕️ Get user list
- ⭕️ Get user data by user_id
- ⭕️ who am i: Get bot user data
Tips
Database non-create properties
status
can't be updated, because notion api not support it.By notion api document,
title
,rich_text
,number
,select
,multi_select
,date
,people
,files
,checkbox
,url
,email
,phone_number
,formula
,relation
,rollup
,created_time
,created_by
,last_edited_time
,last_edited_by
can be updated.rollup
can't be updated on items.
Requirements
This package supports the following minimum versions:
- Python >= 3.10
Reference
License
- MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
notion_kit-1.0.2.tar.gz
(31.2 kB
view hashes)
Built Distribution
notion_kit-1.0.2-py3-none-any.whl
(34.3 kB
view hashes)
Close
Hashes for notion_kit-1.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 40f4409422f829bfacc2f5c963514e6bdd20d66b99e0323c2b2ff78c705655aa |
|
MD5 | 532c9366522d290cbd99d1d71e773ca8 |
|
BLAKE2b-256 | beb54b0c46b5eae3bb72f95acfc9dbfb5707fa5b2dec84e23887e3cc4319e821 |