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.8.tar.gz (13.0 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.8-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nothion-0.4.8.tar.gz
  • Upload date:
  • Size: 13.0 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.8.tar.gz
Algorithm Hash digest
SHA256 0e67daf8812a067bbe9750f97ccdeb82edf2c25175a239f6b92638f4546282bc
MD5 0c256cb320fe02285fc80a4167035f57
BLAKE2b-256 ebdaf3c73ebdff7e59270114019916cf967d0f6dfa4f7581228f7a1d3c6c7d4b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nothion-0.4.8-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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 744ede1fbee3eaa83e4dc9de708d25fdc80d8a614820b85da3e98cf64664682c
MD5 36feb16e63f12dc4b3e6bbb320917b98
BLAKE2b-256 94c3800fa4addcd63ed54ee622fd4318a85fd67c509213642813ab59c1a10a76

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