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.9.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.9-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nothion-0.4.9.tar.gz
  • Upload date:
  • Size: 13.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for nothion-0.4.9.tar.gz
Algorithm Hash digest
SHA256 64e6991569788c5203f27c1853e7dd7bd27c5a1f67afffb129b01b6f3f23a5f2
MD5 65b66e7a0bcbb213e03cc6b19d3725a5
BLAKE2b-256 e80e12fd8dc47ba4a815c10dcb64d8308c50f04179346eb0f1955244562b4f40

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for nothion-0.4.9-py3-none-any.whl
Algorithm Hash digest
SHA256 9d8e669fe300b92032239599ce5c141cb1f9a5d68be1fd0831b2d1a2ae8fe4e5
MD5 6dca29f53155edfc630e6abdface258c
BLAKE2b-256 32f2ec4f2e3000cab2a07b3388d559948caf808f28718a0b61747ac5244b1a0b

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