toggl-api-wrapper


Nametoggl-api-wrapper JSON
Version 1.6.0 PyPI version JSON
download
home_pageNone
SummarySimple Toggl API wrapper for non-premium features.
upload_time2024-12-19 13:31:54
maintainerNone
docs_urlNone
authorDavid Kasakaitis
requires_python<4.0,>=3.10
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Python Toggl API Wrapper

<a href="https://pypi.org/project/toggl-api-wrapper">![PyPI - Version](https://img.shields.io/pypi/v/toggl-api-wrapper?link=https%3A%2F%2Fpypi.org%2Fproject%2Ftoggl-api-wrapper%2F)</a>
<a href="https://pypi.org/project/toggl-api-wrapper">![PyPI - Python Version](https://img.shields.io/pypi/pyversions/toggl-api-wrapper)</a>
<a href="https://github.com/ddkasa/toggl-api-wrapper/actions/workflows/publish.yaml">![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/ddkasa/toggl-api-wrapper/publish.yaml)</a>
<a href="https://app.codecov.io/gh/ddkasa/toggl-api-wrapper">![Codecov](https://img.shields.io/codecov/c/github/ddkasa/toggl-api-wrapper)</a>
<a href="https://pypistats.org/packages/toggl-api-wrapper">![PyPI - Downloads](https://img.shields.io/pypi/dm/toggl-api-wrapper)</a>

> Simple Toggl API wrapper for non-premium features primarily focused on creating a cached framework for developing custom commands.

---

## Installation

Install with pip:

```bash
pip install toggl-api-wrapper
```

Or if using SQLite cache:

```bash
pip install "toggl-api-wrapper[sqlite]"
```

## Usage

- Currently supports interacting with Trackers, Projects, Clients, Tags, Reports and some extras.
- Designed to be rudimentary to allow simple development of custom commands.

## Examples

<details>
  <summary>Tracker Endpoint</summary>

```python
from datetime import timedelta
from pathlib import Path

from toggl_api import (
    TrackerBody,
    TrackerEndpoint,
    generate_authentication,
    JSONCache
)

WORKSPACE_ID = 2313123123
AUTH = generate_authentication()
cache = JSONCache(Path("cache"), timedelta(hours=24))
endpoint = TrackerEndpoint(WORKSPACE_ID, AUTH, cache)

body = TrackerBody("My First Tracker", tags=["My First Tag"])
tracker = endpoint.add(body)
print(tracker)
```

<strong>Outputs:</strong>

```python
>>> TogglTracker(
        id=3482231563,
        name="My First Tracker",
        workspace=2313123123,
        start=datetime.datetime(2024, 6, 10, 14, 59, 20, tzinfo=datetime.timezone.utc),
        duration=datetime.timedelta(seconds=1, microseconds=179158),
        stop=None,
        project=None,
        tags=[],
    )
```

</details>

<details>
  <summary>User Endpoint</summary>

```python
from datetime import timedelta
from pathlib import Path

from toggl_api import (
    UserEndpoint,
    generate_authentication,
    JSONCache,
)
from toggl_api.config import retrieve_workspace_id

WORKSPACE_ID = retrieve_workspace_id()
AUTH = generate_authentication()
cache = JSONCache(Path("cache"), timedelta(weeks=1))
endpoint = UserEndpoint(workspace_id, AUTH, CACHE)

tracker = endpoint.get(3482231563, refresh=True)
print(tracker)
```

<strong>Outputs:</strong>

```python
>>> TogglTracker(
        id=3482231563,
        name="My First Tracker",
        workspace=2313123123,
        start=datetime.datetime(2024, 6, 10, 14, 59, 20, tzinfo=datetime.timezone.utc),
        duration=datetime.timedelta(seconds=1, microseconds=179158),
        stop=None,
        project=None,
        tags=[],
    )
```

</details>

## Documentation

- [Examples](https://ddkasa.github.io/toggl-api-wrapper/user-guide/examples.html)
- [API Documentation](https://ddkasa.github.io/toggl-api-wrapper/api-guide/)
- [User Guide](https://ddkasa.github.io/toggl-api-wrapper/index.html)
- [Changelog](https://ddkasa.github.io/toggl-api-wrapper/CHANGELOG.html)

## Contributing

See [CONTRIBUTING](CONTRIBUTING.md).

## License

MIT. Check [LICENSE](LICENSE.md) for more information.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "toggl-api-wrapper",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.10",
    "maintainer_email": null,
    "keywords": null,
    "author": "David Kasakaitis",
    "author_email": "davidkasakaitis@proton.me",
    "download_url": "https://files.pythonhosted.org/packages/b5/13/78ca7c62371822b6eddd69825c060a0adf13811993b5ebe87fba6c1ba740/toggl_api_wrapper-1.6.0.tar.gz",
    "platform": null,
    "description": "# Python Toggl API Wrapper\n\n<a href=\"https://pypi.org/project/toggl-api-wrapper\">![PyPI - Version](https://img.shields.io/pypi/v/toggl-api-wrapper?link=https%3A%2F%2Fpypi.org%2Fproject%2Ftoggl-api-wrapper%2F)</a>\n<a href=\"https://pypi.org/project/toggl-api-wrapper\">![PyPI - Python Version](https://img.shields.io/pypi/pyversions/toggl-api-wrapper)</a>\n<a href=\"https://github.com/ddkasa/toggl-api-wrapper/actions/workflows/publish.yaml\">![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/ddkasa/toggl-api-wrapper/publish.yaml)</a>\n<a href=\"https://app.codecov.io/gh/ddkasa/toggl-api-wrapper\">![Codecov](https://img.shields.io/codecov/c/github/ddkasa/toggl-api-wrapper)</a>\n<a href=\"https://pypistats.org/packages/toggl-api-wrapper\">![PyPI - Downloads](https://img.shields.io/pypi/dm/toggl-api-wrapper)</a>\n\n> Simple Toggl API wrapper for non-premium features primarily focused on creating a cached framework for developing custom commands.\n\n---\n\n## Installation\n\nInstall with pip:\n\n```bash\npip install toggl-api-wrapper\n```\n\nOr if using SQLite cache:\n\n```bash\npip install \"toggl-api-wrapper[sqlite]\"\n```\n\n## Usage\n\n- Currently supports interacting with Trackers, Projects, Clients, Tags, Reports and some extras.\n- Designed to be rudimentary to allow simple development of custom commands.\n\n## Examples\n\n<details>\n  <summary>Tracker Endpoint</summary>\n\n```python\nfrom datetime import timedelta\nfrom pathlib import Path\n\nfrom toggl_api import (\n    TrackerBody,\n    TrackerEndpoint,\n    generate_authentication,\n    JSONCache\n)\n\nWORKSPACE_ID = 2313123123\nAUTH = generate_authentication()\ncache = JSONCache(Path(\"cache\"), timedelta(hours=24))\nendpoint = TrackerEndpoint(WORKSPACE_ID, AUTH, cache)\n\nbody = TrackerBody(\"My First Tracker\", tags=[\"My First Tag\"])\ntracker = endpoint.add(body)\nprint(tracker)\n```\n\n<strong>Outputs:</strong>\n\n```python\n>>> TogglTracker(\n        id=3482231563,\n        name=\"My First Tracker\",\n        workspace=2313123123,\n        start=datetime.datetime(2024, 6, 10, 14, 59, 20, tzinfo=datetime.timezone.utc),\n        duration=datetime.timedelta(seconds=1, microseconds=179158),\n        stop=None,\n        project=None,\n        tags=[],\n    )\n```\n\n</details>\n\n<details>\n  <summary>User Endpoint</summary>\n\n```python\nfrom datetime import timedelta\nfrom pathlib import Path\n\nfrom toggl_api import (\n    UserEndpoint,\n    generate_authentication,\n    JSONCache,\n)\nfrom toggl_api.config import retrieve_workspace_id\n\nWORKSPACE_ID = retrieve_workspace_id()\nAUTH = generate_authentication()\ncache = JSONCache(Path(\"cache\"), timedelta(weeks=1))\nendpoint = UserEndpoint(workspace_id, AUTH, CACHE)\n\ntracker = endpoint.get(3482231563, refresh=True)\nprint(tracker)\n```\n\n<strong>Outputs:</strong>\n\n```python\n>>> TogglTracker(\n        id=3482231563,\n        name=\"My First Tracker\",\n        workspace=2313123123,\n        start=datetime.datetime(2024, 6, 10, 14, 59, 20, tzinfo=datetime.timezone.utc),\n        duration=datetime.timedelta(seconds=1, microseconds=179158),\n        stop=None,\n        project=None,\n        tags=[],\n    )\n```\n\n</details>\n\n## Documentation\n\n- [Examples](https://ddkasa.github.io/toggl-api-wrapper/user-guide/examples.html)\n- [API Documentation](https://ddkasa.github.io/toggl-api-wrapper/api-guide/)\n- [User Guide](https://ddkasa.github.io/toggl-api-wrapper/index.html)\n- [Changelog](https://ddkasa.github.io/toggl-api-wrapper/CHANGELOG.html)\n\n## Contributing\n\nSee [CONTRIBUTING](CONTRIBUTING.md).\n\n## License\n\nMIT. Check [LICENSE](LICENSE.md) for more information.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Simple Toggl API wrapper for non-premium features.",
    "version": "1.6.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/ddkasa/toggl-api-wrapper/issues",
        "Changelog": "https://ddkasa.github.io/toggl-api-wrapper/CHANGELOG.html",
        "Coverage": "https://app.codecov.io/gh/ddkasa/toggl-api-wrapper",
        "Documentation": "https://ddkasa.github.io/toggl-api-wrapper/api-guide/index.html",
        "Homepage": "https://ddkasa.github.io/toggl-api-wrapper/",
        "Source": "https://github.com/ddkasa/toggl-api-wrapper"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "469f202468772a69204defd873f5b8e722470c77bf91f7fd20f02c943f3dccf7",
                "md5": "8df292974636512ccf5655fc4032e52e",
                "sha256": "f206bb8220ef8fda81b0eabe5a24428b33136179c8841f9ef0a95cb1cf0f9073"
            },
            "downloads": -1,
            "filename": "toggl_api_wrapper-1.6.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8df292974636512ccf5655fc4032e52e",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.10",
            "size": 56630,
            "upload_time": "2024-12-19T13:31:52",
            "upload_time_iso_8601": "2024-12-19T13:31:52.366353Z",
            "url": "https://files.pythonhosted.org/packages/46/9f/202468772a69204defd873f5b8e722470c77bf91f7fd20f02c943f3dccf7/toggl_api_wrapper-1.6.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b51378ca7c62371822b6eddd69825c060a0adf13811993b5ebe87fba6c1ba740",
                "md5": "b752b84ce542d2066deb5eaf6e51648f",
                "sha256": "d5decefda847ec7f7c2d596bf131abbe3304fd87bf42bbbb9bb604fb7dae0d08"
            },
            "downloads": -1,
            "filename": "toggl_api_wrapper-1.6.0.tar.gz",
            "has_sig": false,
            "md5_digest": "b752b84ce542d2066deb5eaf6e51648f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.10",
            "size": 45214,
            "upload_time": "2024-12-19T13:31:54",
            "upload_time_iso_8601": "2024-12-19T13:31:54.977772Z",
            "url": "https://files.pythonhosted.org/packages/b5/13/78ca7c62371822b6eddd69825c060a0adf13811993b5ebe87fba6c1ba740/toggl_api_wrapper-1.6.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-19 13:31:54",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ddkasa",
    "github_project": "toggl-api-wrapper",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "toggl-api-wrapper"
}
        
Elapsed time: 0.63849s