Skip to main content

Async Yandex Tracker Client

Project description

Yandex Tracker Client (or Yet Another Tracker Client)

Async Yandex Tracker Client based on aiohttp and pydantic

Python Code linter: ruff Linters


You can read API documentation for more information or API specification in OpenAPI format.

Installation

With pip:

pip install ya_tracker_client

With poetry:

poetry add ya_tracker_client

With uv:

uv add ya_tracker_client

Usage

import os
from asyncio import run

from dotenv import load_dotenv

from ya_tracker_client import YaTrackerClient


load_dotenv()
# from registered application at Yandex OAuth - https://oauth.yandex.ru/
API_TOKEN = os.getenv("API_TOKEN")
# from admin panel at Yandex Tracker - https://tracker.yandex.ru/admin/orgs
API_ORGANISATION_ID = os.getenv("API_ORGANISATION_ID")


async def main() -> None:
    # init client
    client = YaTrackerClient(
        organisation_id=API_ORGANISATION_ID,
        oauth_token=API_TOKEN,
    )

    # create issue
    new_issue = await client.create_issue('New issue', 'TRACKER-QUEUE')

     # get issue
    issue = await client.get_issue('KEY-1')

    # update issue (just pass kwargs)
    issue = await client.edit_issue('KEY-1', description='Hello World')

    # don't forget to close tracker on app shutdown
    await client.stop()


if __name__ == "__main__":
    run(main())

Explanations about naming

  • All self properties renamed to url cause it's incompatible with Python;
  • All camelCase properties renamed to pythonic_case;
  • All datetime values converted to python's datetime.datetime objects;
  • Methods named by author, cause Yandex API has no clear method names.

Current library capabilities

  • Working with queues
  • Getting information about issues, priorities and transitions
  • Working with issue relationships
  • Getting user information

More info about work status here: https://github.com/danfimov/ya_tracker_client/milestone/1

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

ya_tracker_client-0.1.0.tar.gz (22.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ya_tracker_client-0.1.0-py3-none-any.whl (42.5 kB view details)

Uploaded Python 3

File details

Details for the file ya_tracker_client-0.1.0.tar.gz.

File metadata

  • Download URL: ya_tracker_client-0.1.0.tar.gz
  • Upload date:
  • Size: 22.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.6.13

File hashes

Hashes for ya_tracker_client-0.1.0.tar.gz
Algorithm Hash digest
SHA256 28c8f413c252aa9217a7a7aaf529b94af83658a110c5266c18da1d5bff5c4f5c
MD5 b7b0642407beba75a1c18c68c31b79ca
BLAKE2b-256 750c9f474a957bca4f275a2c488edad092e7bc237295d984cdd7e4de2070eed7

See more details on using hashes here.

File details

Details for the file ya_tracker_client-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for ya_tracker_client-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f601c3e101a3bb3766222b9e8fc220ab1c6784bcc2ce22ed636ddb048d96babb
MD5 c8d5e570d904e8041572a7896b1f4b33
BLAKE2b-256 39a9934fa317d5fd89835bc609b97a040eb58806e2044a5782aa4c3646155531

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