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


API docs: https://cloud.yandex.com/en/docs/tracker/about-api

Installation

pip install ya_tracker_client

or

poetry 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.0.3.tar.gz (21.2 kB view details)

Uploaded Source

Built Distribution

ya_tracker_client-0.0.3-py3-none-any.whl (41.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ya_tracker_client-0.0.3.tar.gz
  • Upload date:
  • Size: 21.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.0 CPython/3.11.4 Darwin/22.6.0

File hashes

Hashes for ya_tracker_client-0.0.3.tar.gz
Algorithm Hash digest
SHA256 7a60dc60a432b0251e496ea6918b4935fbd2d3c6422586590bb354c02fabb759
MD5 02e257f7b40a94e4b6fb158b46c6acb1
BLAKE2b-256 b5884ec1739ee8b27e1be70662f80f73f677026fba2468f3bb877a9460ff42c1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ya_tracker_client-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d9711681b9cb62eb3da697c778df9723ac90600ba187f4d3320136ddd5fcb759
MD5 2bf885ed30f20c0b1eaae411df54c77a
BLAKE2b-256 78cb97b292c9e292a227a28d034201fe735549c9cf151f4a083df7221e8a69b9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page