Skip to main content

Yet another unofficial Notion API client.

Project description

Nothion

Yet another unofficial Notion API client.

Installation

pip install nothion

Usage

from nothion import NotionClient

client = NotionClient(auth_secret="your_auth_token",
                      tasks_db_id: str | None = None,
                      stats_db_id: str | None = None,
                      notes_db_id: str | None = None,
                      expenses_db_id: str | None = None)
client.tasks.get_active_tasks()

Features

Tasks Handler

  • get_active_tasks()
  • get_task(ticktick_task: Task)
  • get_notion_id(ticktick_task: Task)
  • is_task_already_created(task: Task)
  • create(task: Task)
  • update_task(task: Task)
  • complete(task: Task)
  • delete(task: Task)

Notes Handler

  • is_page_already_created(title: str, page_type: str)
  • create_page(title: str, page_type: str, page_subtype: tuple[str], date: datetime, content: str)

Stats Handler

  • get_incomplete_dates(limit_date: datetime) -> List[str]
  • update(stat_data: PersonalStats, overwrite_stats: bool = False)
  • get_between_dates(start_date: datetime, end_date: datetime) -> List[PersonalStats]

Expenses Handler

  • add_expense_log(expense_log: ExpenseLog)

Blocks Handler

  • get_all_children(block_id: str) -> list

Data Models

PersonalStats

This package uses a custom attrs model to store personal stats:

  • date: str
  • focus_total_time: float | None
  • focus_active_time: float | None
  • work_time: float | None
  • leisure_time: float | None
  • sleep_time_amount: float | None
  • sleep_deep_amount: float | None
  • fall_asleep_time: float | None
  • sleep_score: float | None
  • weight: float | None
  • steps: float | None
  • water_cups: int | None

ExpenseLog

This package uses a custom attrs model to store expense log data:

  • date: str
  • expense: float
  • product: str

Environment Variables

  • NT_AUTH: Notion auth token, for example secret_t1Cd...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nothion-0.4.6.tar.gz (12.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nothion-0.4.6-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file nothion-0.4.6.tar.gz.

File metadata

  • Download URL: nothion-0.4.6.tar.gz
  • Upload date:
  • Size: 12.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for nothion-0.4.6.tar.gz
Algorithm Hash digest
SHA256 34d6501cc2a88fa61ee3cd8dbadc2166b571fa63cfcec3f5859ec1e4b4497bed
MD5 7c01ae3075cfddcca3085bff74490c2c
BLAKE2b-256 0730807675440d34146ed5ddb34adbdc7b9a61ac02c216243097207b04db985f

See more details on using hashes here.

File details

Details for the file nothion-0.4.6-py3-none-any.whl.

File metadata

  • Download URL: nothion-0.4.6-py3-none-any.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for nothion-0.4.6-py3-none-any.whl
Algorithm Hash digest
SHA256 cc16b98703d2e8815fff562b99f776a645896bd22b5fe151417849788cbb33be
MD5 baf2be1d694393d730c1709ba3ca8fa7
BLAKE2b-256 fb927b92cbc5678102ebdaec642067b5e63378f866f6ff5a2b56de8c943c8ad9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page