zammadoo


Namezammadoo JSON
Version 0.3.0.post0 PyPI version JSON
download
home_pagehttps://github.com/flashdagger/zammadoo
Summaryan object-oriented REST API client for zammad
upload_time2024-07-25 10:44:52
maintainerNone
docs_urlNone
authorflashdagger
requires_python<4.0,>=3.8
licenseMIT
keywords zammad rest api
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            .. image:: https://github.com/flashdagger/zammadoo/assets/17416271/a442afd7-c682-41dd-9de9-4ec7fcc62c06
  :alt: zammadoo logo

========
zammadoo
========

.. image:: https://img.shields.io/badge/python-3.8%2B-blue?logo=python&logoColor=white
   :target: https://python.org/
   :alt: [Python versions]

.. image:: https://img.shields.io/badge/pypi-v0.3.0%20(beta)-orange
   :target: https://pypi.python.org/pypi/zammadoo/
   :alt: PyPI

.. image:: https://img.shields.io/pypi/l/zammadoo.svg
    :target: https://github.com/flashdagger/zammadoo/blob/main/LICENSE
    :alt: PyPI license

.. image:: https://github.com/flashdagger/zammadoo/actions/workflows/core-tests.yml/badge.svg?event=push
    :target: https://github.com/flashdagger/zammadoo/actions/workflows/core-tests.yml
    :alt: Core Tests

.. image:: https://readthedocs.org/projects/zammadoo/badge/?version=latest
    :target: https://zammadoo.readthedocs.io/en/latest/?badge=latest
    :alt: Documentation Status

.. image:: https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fflashdagger%2F1a66c9e88a9e4267f7e0b1d185be98f4%2Fraw
    :target: https://gist.github.com/flashdagger/1a66c9e88a9e4267f7e0b1d185be98f4
    :alt: Coverage

.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
    :target: https://github.com/ambv/black/
    :alt: Code Style Black


An object-oriented REST API client for the `Zammad helpdesk sytem <https://zammad.org/>`_.

.. note::
    Not to be confused with "Zammadoo" - a registered trademark and social networking app
    for leisure activities.


Find the full documentation under https://zammadoo.readthedocs.io.


Real life examples
------------------

.. code-block:: python

    from zammadoo import Client

    client = Client("https://myhost.com/api/v1/", http_auth=("<username>", "<mysecret>"))
    # or use an API token created via https://myhost.com/#profile/token_access
    client = Client("https://myhost.com/api/v1/", http_token="<token>")

    # I have a new ticket with id 17967 and need to download the attachment file
    path = client.tickets(17967).articles[0].attachments[0].download()
    print(f"The downloaded file is {path}")

    # I need to append a new ticket article with attached files
    client.ticket(17967).create_article("Server down again. See logfiles.", files=["kern.log", "syslog"])

    # I want to close all tickets with the tag "deprecated" and remove the tag
    for ticket in client.tickets.search("tags:deprecated"):
        ticket.update(state="closed")
        ticket.remove_tags("deprecated")


Design principles
-----------------

This library provides a fluent workflow. Since the resources are wrapped in its own type,
your IDE can show you many of the available properties and methods. Furthermore you can ensure
type safety with Python's static type checkers like `mypy <https://www.mypy-lang.org/>`_.

.. image:: https://github.com/flashdagger/zammadoo/assets/17416271/aa81ab7c-1d57-4dac-82d8-7b5fdc5e8699
  :alt: zammadoo typing


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/flashdagger/zammadoo",
    "name": "zammadoo",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.8",
    "maintainer_email": null,
    "keywords": "zammad, rest, api",
    "author": "flashdagger",
    "author_email": null,
    "download_url": null,
    "platform": null,
    "description": ".. image:: https://github.com/flashdagger/zammadoo/assets/17416271/a442afd7-c682-41dd-9de9-4ec7fcc62c06\n  :alt: zammadoo logo\n\n========\nzammadoo\n========\n\n.. image:: https://img.shields.io/badge/python-3.8%2B-blue?logo=python&logoColor=white\n   :target: https://python.org/\n   :alt: [Python versions]\n\n.. image:: https://img.shields.io/badge/pypi-v0.3.0%20(beta)-orange\n   :target: https://pypi.python.org/pypi/zammadoo/\n   :alt: PyPI\n\n.. image:: https://img.shields.io/pypi/l/zammadoo.svg\n    :target: https://github.com/flashdagger/zammadoo/blob/main/LICENSE\n    :alt: PyPI license\n\n.. image:: https://github.com/flashdagger/zammadoo/actions/workflows/core-tests.yml/badge.svg?event=push\n    :target: https://github.com/flashdagger/zammadoo/actions/workflows/core-tests.yml\n    :alt: Core Tests\n\n.. image:: https://readthedocs.org/projects/zammadoo/badge/?version=latest\n    :target: https://zammadoo.readthedocs.io/en/latest/?badge=latest\n    :alt: Documentation Status\n\n.. image:: https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fflashdagger%2F1a66c9e88a9e4267f7e0b1d185be98f4%2Fraw\n    :target: https://gist.github.com/flashdagger/1a66c9e88a9e4267f7e0b1d185be98f4\n    :alt: Coverage\n\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n    :target: https://github.com/ambv/black/\n    :alt: Code Style Black\n\n\nAn object-oriented REST API client for the `Zammad helpdesk sytem <https://zammad.org/>`_.\n\n.. note::\n    Not to be confused with \"Zammadoo\" - a registered trademark and social networking app\n    for leisure activities.\n\n\nFind the full documentation under https://zammadoo.readthedocs.io.\n\n\nReal life examples\n------------------\n\n.. code-block:: python\n\n    from zammadoo import Client\n\n    client = Client(\"https://myhost.com/api/v1/\", http_auth=(\"<username>\", \"<mysecret>\"))\n    # or use an API token created via https://myhost.com/#profile/token_access\n    client = Client(\"https://myhost.com/api/v1/\", http_token=\"<token>\")\n\n    # I have a new ticket with id 17967 and need to download the attachment file\n    path = client.tickets(17967).articles[0].attachments[0].download()\n    print(f\"The downloaded file is {path}\")\n\n    # I need to append a new ticket article with attached files\n    client.ticket(17967).create_article(\"Server down again. See logfiles.\", files=[\"kern.log\", \"syslog\"])\n\n    # I want to close all tickets with the tag \"deprecated\" and remove the tag\n    for ticket in client.tickets.search(\"tags:deprecated\"):\n        ticket.update(state=\"closed\")\n        ticket.remove_tags(\"deprecated\")\n\n\nDesign principles\n-----------------\n\nThis library provides a fluent workflow. Since the resources are wrapped in its own type,\nyour IDE can show you many of the available properties and methods. Furthermore you can ensure\ntype safety with Python's static type checkers like `mypy <https://www.mypy-lang.org/>`_.\n\n.. image:: https://github.com/flashdagger/zammadoo/assets/17416271/aa81ab7c-1d57-4dac-82d8-7b5fdc5e8699\n  :alt: zammadoo typing\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "an object-oriented REST API client for zammad",
    "version": "0.3.0.post0",
    "project_urls": {
        "Documentation": "https://zammadoo.readthedocs.io/",
        "Homepage": "https://github.com/flashdagger/zammadoo",
        "Repository": "https://github.com/flashdagger/zammadoo.git"
    },
    "split_keywords": [
        "zammad",
        " rest",
        " api"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3875f514845984852660a0e94510d229885f1bed4fe88ebb45311b2a36a28099",
                "md5": "af5a0a2160f82df5c5e1fd40f8d1fc28",
                "sha256": "b6aa132c36d368fa72a766d2b7e973fec94e09716758b9b49ca6eeabdab16924"
            },
            "downloads": -1,
            "filename": "zammadoo-0.3.0.post0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "af5a0a2160f82df5c5e1fd40f8d1fc28",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.8",
            "size": 27359,
            "upload_time": "2024-07-25T10:44:52",
            "upload_time_iso_8601": "2024-07-25T10:44:52.334485Z",
            "url": "https://files.pythonhosted.org/packages/38/75/f514845984852660a0e94510d229885f1bed4fe88ebb45311b2a36a28099/zammadoo-0.3.0.post0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-07-25 10:44:52",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "flashdagger",
    "github_project": "zammadoo",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "zammadoo"
}
        
Elapsed time: 1.92972s