跳转到主要内容

Todoist REST API的官方Python SDK。

项目描述

Todoist API Python客户端

这是Todoist REST API的官方Python API客户端。

安装

可以将仓库作为Poetry依赖项包含在pyproject.toml中。最好与发布标签集成,以确保稳定的依赖关系

[tool.poetry.dependencies]
todoist-api-python = "^v2.0.0"

支持的Python版本

Python 3.9得到完全支持和测试,尽管它可能与其他Python 3版本兼容,但我们并未对其进行测试。

用法

初始化API客户端并获取用户的任务的示例

from todoist_api_python.api_async import TodoistAPIAsync
from todoist_api_python.api import TodoistAPI

# Fetch tasks asynchronously
async def get_tasks_async():
    api = TodoistAPIAsync("YOURTOKEN")
    try:
        tasks = await api.get_tasks()
        print(tasks)
    except Exception as error:
        print(error)

# Fetch tasks synchronously
def get_tasks_sync():
    api = TodoistAPI("my token")
    try:
        tasks = api.get_tasks()
        print(tasks)
    except Exception as error:
        print(error)

分页遍历已完成项目任务的示例

def get_all_completed_items(original_params: dict):
    params = original_params.copy()
    results = []

    while True:
        response = api.get_completed_items(**(params | {"limit": 100}))
        results.append(response.items)

        if not response.has_more:
            break

        params["cursor"] = response.next_cursor

    # flatten the results
    return [item for sublist in results for item in sublist]

items = get_all_completed_items({"project_id": 123})

文档

有关更详细的参考文档,请参阅包含 Python 示例的API 文档

开发

要安装 Python 依赖项

$ poetry install

要安装 pre-commit

$ poetry run pre-commit install

您可以通过运行以下命令尝试您的更改

$ poetry run python

然后,您可以在不创建文件的情况下,按照使用说明导入库。如果您决定使用 TodoistAPIAsync,请注意您必须 import asyncio 并运行 asyncio.run(yourmethod()) 来使异步方法按预期运行。

版本发布

此 API 客户端是公开的,可在 PyPI 仓库中找到。

通过在格式为 vX.Y.Zv<主版本>.<次版本>.<修订版本>)的标签中创建版本,GitHub Actions 会自动发布新更新。

API 客户端用户可以在他们的 pyproject.toml 文件中更新到新版本。

反馈

有关错误、问题、评论等的任何反馈,都可以在此存储库中报告为 问题,并由 Doist 处理。

贡献

我们欢迎在此存储库中以 拉取请求 的形式贡献。

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

todoist_api_python-2.1.7.tar.gz (13.1 kB 查看哈希值)

上传时间

构建分发

todoist_api_python-2.1.7-py3-none-any.whl (12.6 kB 查看哈希值)

上传时间 Python 3

由以下机构支持