unofficial-tabdeal-api


Nameunofficial-tabdeal-api JSON
Version 0.3.3 PyPI version JSON
download
home_pageNone
SummaryA Package to communicate with the Tabdeal platform
upload_time2025-07-08 18:34:30
maintainerMohsenHNSJ
docs_urlNone
authorMohsenHNSJ
requires_python>=3.11
licenseMIT
keywords tabdeal api unofficial
VCS
bugtrack_url
requirements aiohttp pydantic
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ======================
Unofficial Tabdeal API
======================
..
    Badges section

.. list-table::
    :stub-columns: 1

    * - Package
      - |version| |status| |supported-python-versions| |poetry| |release-to-pypi| |implementation| |wheel| |pydantic-badge|
    * - Quality Assurance
      - |sonar-quality-gate| |sonar-reliability| |sonar-maintainability| |sonar-technical-debt| |sonar-bugs| |sonar-code-smells|
    * - Stats
      - |contributors| |stars| |issues| |pull-requests| |sonar-lines-of-code| |repository-size|
    * - Tests
      - |nox| |codspeed| |pre-commit-ci| |types| |codecov| |scorecard|
    * - Security
      - |synk| |sonar-security| |sonar-vulnerabilities| |openssf|
    * - Linters
      - |ruff| |pre-commit| |megalinter| |mypy| |pylint|
    * - Activity
      - |maintenance| |commit-activity| |downloads|
    * - Misc
      - |contributor-covenant| |doi| |skeleton|
    * - Documentation
      - |documentation|
    * - License
      - |license|


๐Ÿงญ Project overview
--------------------

Unofficial Tabdeal API is a modern, fully asynchronous Python wrapper for the Tabdeal_ cryptocurrency trading platform. Built from the ground up to replace the outdated and limited `official package`_, this library leverages Tabdeal's new backend API to offer safer and developer-friendly access to all available features.

This package supports both public and private endpoints ( such as placing orders, fetching balances, and managing trades ) and is designed with clarity, security, and performance in mind,
therefore, ideal for developers and algo traders who need reliable, complete, and secure access to Tabdeal's trading features.

โœ… Key features
~~~~~~~~~~~~~~~~

* ๐Ÿš€ Async-first: Designed to work efficiently in modern Python async environments.

* ๐Ÿ›ก๏ธ Safer interface: Raises clear, informative exceptions instead of vague errors.

* ๐Ÿ”ง Complete coverage: Aims to support all endpoints exposed by the new Tabdeal API.

* ๐Ÿงช Fully typed: Clean type hints across the codebase for better IDE support and readability.

* โœ”๏ธ Unit tested: Each function is tested to ensure reliability and correct behavior.

* ๐Ÿงน Linted and secure: Codebase follows modern Python best practices with multiple linters and security checks.


๐Ÿ› ๏ธ Technical overview
----------------------

This package uses the website backend to communicate with the Tabdeal platform (``https://api-web.tabdeal.org``) rather than the original API at (``https://api1.tabdeal.org/api/v1``).

This enables more stable and reliable access to Tabdeal's features, as the new backend is designed to be more robust and feature-rich.

There are also exclusive features that aren't available in the original API, such as setting stop loss/take profit points and 60x margin leverage.

๐Ÿงฐ Tech stack
~~~~~~~~~~~~~~

* aiohttp_ 3.12.13

* pydantic_ 2.9.2

๐Ÿ Getting started
-------------------

๐Ÿ“‹ Prerequisites
~~~~~~~~~~~~~~~~~

You need ``Authorization`` key and ``user-hash`` to use this package.

To obtain these credentials, follow these steps:

#. On a computer, open your internet browser and log-in to Tabdeal website

#. Navigate to settings page

#. Press F12 to open Developer tools

#. Navigate to Network panel

#. Refresh the website page and the network section should populate with many entries

#. Find the entry with ``wallet/`` name

#. Select it and in ``Headers`` section, under ``Request Headers``, you should find them

๐Ÿ“ฆ Installation
~~~~~~~~~~~~~~~~

You can install *unofficial tabdeal api* via pip_ from PyPI_, requirements will be met automatically:

.. code-block:: sh

    pip install unofficial-tabdeal-api

โš™๏ธ Usage
---------

#. Import ``TabdealClient`` from the package.

#. Initialize the ``TabdealClient`` with your ``Authorization`` key and ``user-hash`` information

#. Run your desired commands

.. code-block:: python

    # Import TabdealClient
    from unofficial_tabdeal_api import TabdealClient

    async def main():

        # Initialize a TabdealClient object
        my_client: TabdealClient = TabdealClient(USER_HASH, USER_AUTHORIZATION_KEY)

        # Run your desired commands, remember to `await` the methods as all of them (except a few) are asynchronous
        bomeusdt_asset_id = await my_client.get_margin_asset_id("BOMEUSDT")

Learn more in the Documentation_.

๐Ÿ› Issues
----------

If you encounter any problems,
please `file an issue`_ along with a detailed description.

โš–๏ธ License
-----------

Distributed under the terms of the `MIT license`_, *unofficial tabdeal api* is free and open source software.

๐Ÿค Contributing
----------------

Any contributions to this project are highly valued and appreciated. For detailed guidelines on how to contribute, please refer to the `Contributor Guide`_.

๐ŸŒŸ Credits
-----------

This project was created with the help of `@cjolowicz`_'s `Hypermodern Python Cookiecutter`_ template and `@fpgmaas`_'s `Cookiecutter Poetry`_ template.

..
    Badges


.. |codecov| image:: https://codecov.io/gh/MohsenHNSJ/unofficial_tabdeal_api/graph/badge.svg?token=QWCOB4VHEP
    :target: CodeCov_
    :alt: Coverage status

.. |codspeed| image:: https://img.shields.io/endpoint?url=https://codspeed.io/badge.json
    :target: CodSpeed_
    :alt: CodSpeed

.. |commit-activity| image:: https://img.shields.io/github/commit-activity/m/MohsenHNSJ/unofficial_tabdeal_api?logo=git
    :target: `Commit Activity`_
    :alt: GitHub commit activity

.. |contributor-covenant| image:: https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg?logo=contributorcovenant
    :target: `Code of Conduct`_
    :alt: Contributor Covenant

.. |contributors| image:: https://img.shields.io/github/contributors/MohsenHNSJ/unofficial_tabdeal_api.svg
    :target: Contributors_
    :alt: Contributors

.. |documentation| image:: https://readthedocs.org/projects/unofficial-tabdeal-api/badge/?version=latest
    :target: Read-The-Docs_
    :alt: Documentation Status

.. |doi| image:: https://zenodo.org/badge/917705429.svg
    :target: DOI_
    :alt: Digital Object Identifier

.. |downloads| image:: https://static.pepy.tech/badge/unofficial_tabdeal_api
    :target: `Total Downloads`_
    :alt: Total Downloads

.. |implementation| image:: https://img.shields.io/pypi/implementation/unofficial-tabdeal_api?logo=python
    :alt: PyPI - Implementation

.. |issues| image:: https://img.shields.io/github/issues/MohsenHNSJ/unofficial_tabdeal_api
    :target: Issues-link_
    :alt: GitHub Issues

.. |license| image:: https://img.shields.io/pypi/l/unofficial-tabdeal-api
    :target: `MIT License`_
    :alt: License

.. |maintenance| image:: https://img.shields.io/badge/Maintenance%20Intended-โœ”-green.svg
    :target: Unmaintained_
    :alt: Maintenance - intended

.. |megalinter| image:: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/actions/workflows/mega-linter.yml/badge.svg?branch=main
    :target: MegaLinter-Status_
    :alt: MegaLinter status

.. |mypy| image:: https://img.shields.io/badge/MyPy-Checked-blue
    :target: mypy-docs_
    :alt: Checked with MyPy

.. |nox| image:: https://img.shields.io/badge/%F0%9F%A6%8A-Nox-D85E00.svg
    :target: Nox_
    :alt: Nox

.. |openssf| image:: https://www.bestpractices.dev/projects/10685/badge
    :target: openssf-status_
    :alt: Open Source Security Foundation Best Practices Badge

.. |poetry| image:: https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json
    :target: poetry-website_
    :alt: Poetry

.. |pre-commit| image:: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit
    :target: Pre-commit_
    :alt: pre-commit

.. |pre-commit-ci| image:: https://results.pre-commit.ci/badge/github/MohsenHNSJ/unofficial_tabdeal_api/main.svg
    :target: Pre-commit-ci_
    :alt: pre-commit.ci status

.. |pull-requests| image:: https://img.shields.io/github/issues-pr/MohsenHNSJ/unofficial_tabdeal_api
    :target: `Pull Requests`_
    :alt: GitHub Pull Requests

.. |pydantic-badge| image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/pydantic/pydantic/main/docs/badge/v2.json
    :target: pydantic_
    :alt: Pydantic

.. |pylint| image:: https://img.shields.io/badge/linting-pylint-yellowgreen
    :target: pylint-website_
    :alt: Linting with Pylint

.. |release-to-pypi| image:: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/actions/workflows/release-packge.yml/badge.svg
    :target: `Release to PyPI`_
    :alt: Release to PyPI status

.. |repository-size| image:: https://img.shields.io/github/repo-size/MohsenHNSJ/unofficial_tabdeal_api?color=BE81F7
    :alt: Repository Size

.. |ruff| image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json&style=flat-square
    :target: Ruff_
    :alt: Ruff

.. |scorecard| image:: https://api.scorecard.dev/projects/github.com/MohsenHNSJ/unofficial_tabdeal_api/badge
    :target: scorecard-rating_
    :alt: OpenSSF Scorecard

.. |skeleton| image:: https://img.shields.io/badge/skeleton-2025-informational?color=000000
    :target: Skeleton_
    :alt: Skeleton

.. |sonar-bugs| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=bugs
    :target: sonar-qube-page_
    :alt: SonarQube Bugs

.. |sonar-code-smells| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=code_smells
    :target: sonar-qube-page_
    :alt: SonarQube Code Smells

.. |sonar-lines-of-code| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=ncloc
    :target: sonar-qube-page_
    :alt: SonarQube Lines of Code

.. |sonar-maintainability| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=sqale_rating
    :target: sonar-qube-page_
    :alt: SonarQube Maintainability Rating

.. |sonar-quality-gate| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=alert_status
    :target: sonar-qube-page_
    :alt: SonarQube Quality Gate

.. |sonar-qube| image:: https://sonarcloud.io/images/project_badges/sonarcloud-dark.svg
    :target: sonar-qube-page_
    :alt: SonarQube Cloud

.. |sonar-reliability| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=reliability_rating
    :target: sonar-qube-page_
    :alt: SonarQube Reliability Rating

.. |sonar-security| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=security_rating
    :target: sonar-qube-page_
    :alt: SonarQube Security Rating

.. |sonar-technical-debt| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=sqale_index
    :target: sonar-qube-page_
    :alt: SonarQube Technical Debt

.. |sonar-vulnerabilities| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=vulnerabilities
    :target: sonar-qube-page_
    :alt: SonarQube Vulnerabilities

.. |stars| image:: https://img.shields.io/github/stars/MohsenHNSJ/unofficial_tabdeal_api?style=social
    :target: Stars_
    :alt: Stars

.. |status| image:: https://img.shields.io/pypi/status/unofficial-tabdeal-api.svg
    :target: package-url_
    :alt: Status

.. |supported-python-versions| image:: https://img.shields.io/pypi/pyversions/unofficial-tabdeal-api?logo=python
    :target: package-url_
    :alt: Python Version

.. |synk| image:: https://img.shields.io/badge/Synk-white?logo=snyk&color=4C4A73
    :target: synk-website_
    :alt: Analyzed with Synk

.. |types| image:: https://img.shields.io/pypi/types/unofficial-tabdeal-api
    :alt: PyPI - Types

.. |version| image:: https://img.shields.io/pypi/v/unofficial-tabdeal-api.svg?logo=pypi
    :target: package-url_
    :alt: PyPI

.. |wheel| image:: https://img.shields.io/pypi/wheel/unofficial-tabdeal-api
    :alt: PyPI - Wheel


..
    Links
..
    Badges-links

.. _CodeCov: https://codecov.io/gh/MohsenHNSJ/unofficial_tabdeal_api
.. _CodSpeed: https://codspeed.io/MohsenHNSJ/unofficial_tabdeal_api
.. _Commit Activity: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/graphs/commit-activity
.. _Contributors: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/graphs/contributors
.. _DOI: https://doi.org/10.5281/zenodo.15035227
.. _Issues-link: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/issues
.. _MegaLinter-Status: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/actions?query=workflow%3AMegaLinter+branch%3Amain
.. _Nox: https://github.com/wntrblm/nox
.. _openssf-status: https://www.bestpractices.dev/projects/10685
.. _package-url: https://pypi.org/project/unofficial-tabdeal-api/
.. _poetry-website: https://python-poetry.org/
.. _Pre-commit: https://github.com/pre-commit/pre-commit
.. _Pre-commit-ci: https://results.pre-commit.ci/latest/github/MohsenHNSJ/unofficial_tabdeal_api/main
.. _Pull Requests: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/pulls
.. _pydantic: https://pydantic.dev
.. _pylint-website: https://github.com/pylint-dev/pylint
.. _Read-The-Docs: https://unofficial-tabdeal-api.readthedocs.io/en/latest/?badge=latest
.. _Release to PyPI: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/actions
.. _Ruff: https://github.com/astral-sh/ruff
.. _scorecard-rating: https://scorecard.dev/viewer/?uri=github.com/MohsenHNSJ/unofficial_tabdeal_api
.. _Skeleton: https://blog.jaraco.com/skeleton
.. _sonar-qube-page: https://sonarcloud.io/summary/new_code?id=MohsenHNSJ_unofficial_tabdeal_api
.. _Stars: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/stargazers
.. _synk-website: https://snyk.io/
.. _Total Downloads: https://pepy.tech/project/unofficial_tabdeal_api
.. _Unmaintained: http://unmaintained.tech/
.. _mypy-docs: https://mypy.readthedocs.io/en/stable/

..
    Project-overview-links

.. _official package: https://pypi.org/project/tabdeal-python/
.. _Tabdeal: https://tabdeal.org/

..
    Technical-overview-links

.. _aiohttp: https://docs.aiohttp.org/en/stable/

..
    Installation-links

.. _pip: https://pypi.org/project/pip/
.. _PyPI: https://pypi.org/

..
    Issues-links

.. _file an issue: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/issues/new

..
    Credits-links

.. _@cjolowicz: https://github.com/cjolowicz
.. _@fpgmaas: https://github.com/fpgmaas
.. _Cookiecutter Poetry: https://github.com/fpgmaas/cookiecutter-poetry
.. _Hypermodern Python Cookiecutter: https://github.com/cjolowicz/cookiecutter-hypermodern-python

..
    Ignore-in-readthedocs
.. _Code of Conduct: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/blob/main/CODE_OF_CONDUCT.rst
.. _Contributor Guide: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/blob/main/CONTRIBUTING.rst
.. _Documentation: https://unofficial-tabdeal-api.readthedocs.io/en/latest/
.. _MIT License: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/blob/main/LICENSE


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "unofficial-tabdeal-api",
    "maintainer": "MohsenHNSJ",
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": "mohsenhasannezhad@outlook.com",
    "keywords": "tabdeal, api, unofficial",
    "author": "MohsenHNSJ",
    "author_email": "mohsenhasannezhad@outlook.com",
    "download_url": "https://files.pythonhosted.org/packages/ae/d1/4ca188b95d5a3aa893a05e20c2a4b918862b61a80777b526fc8ed1ac9b0c/unofficial_tabdeal_api-0.3.3.tar.gz",
    "platform": null,
    "description": "======================\nUnofficial Tabdeal API\n======================\n..\n    Badges section\n\n.. list-table::\n    :stub-columns: 1\n\n    * - Package\n      - |version| |status| |supported-python-versions| |poetry| |release-to-pypi| |implementation| |wheel| |pydantic-badge|\n    * - Quality Assurance\n      - |sonar-quality-gate| |sonar-reliability| |sonar-maintainability| |sonar-technical-debt| |sonar-bugs| |sonar-code-smells|\n    * - Stats\n      - |contributors| |stars| |issues| |pull-requests| |sonar-lines-of-code| |repository-size|\n    * - Tests\n      - |nox| |codspeed| |pre-commit-ci| |types| |codecov| |scorecard|\n    * - Security\n      - |synk| |sonar-security| |sonar-vulnerabilities| |openssf|\n    * - Linters\n      - |ruff| |pre-commit| |megalinter| |mypy| |pylint|\n    * - Activity\n      - |maintenance| |commit-activity| |downloads|\n    * - Misc\n      - |contributor-covenant| |doi| |skeleton|\n    * - Documentation\n      - |documentation|\n    * - License\n      - |license|\n\n\n\ud83e\udded Project overview\n--------------------\n\nUnofficial Tabdeal API is a modern, fully asynchronous Python wrapper for the Tabdeal_ cryptocurrency trading platform. Built from the ground up to replace the outdated and limited `official package`_, this library leverages Tabdeal's new backend API to offer safer and developer-friendly access to all available features.\n\nThis package supports both public and private endpoints ( such as placing orders, fetching balances, and managing trades ) and is designed with clarity, security, and performance in mind,\ntherefore, ideal for developers and algo traders who need reliable, complete, and secure access to Tabdeal's trading features.\n\n\u2705 Key features\n~~~~~~~~~~~~~~~~\n\n* \ud83d\ude80 Async-first: Designed to work efficiently in modern Python async environments.\n\n* \ud83d\udee1\ufe0f Safer interface: Raises clear, informative exceptions instead of vague errors.\n\n* \ud83d\udd27 Complete coverage: Aims to support all endpoints exposed by the new Tabdeal API.\n\n* \ud83e\uddea Fully typed: Clean type hints across the codebase for better IDE support and readability.\n\n* \u2714\ufe0f Unit tested: Each function is tested to ensure reliability and correct behavior.\n\n* \ud83e\uddf9 Linted and secure: Codebase follows modern Python best practices with multiple linters and security checks.\n\n\n\ud83d\udee0\ufe0f Technical overview\n----------------------\n\nThis package uses the website backend to communicate with the Tabdeal platform (``https://api-web.tabdeal.org``) rather than the original API at (``https://api1.tabdeal.org/api/v1``).\n\nThis enables more stable and reliable access to Tabdeal's features, as the new backend is designed to be more robust and feature-rich.\n\nThere are also exclusive features that aren't available in the original API, such as setting stop loss/take profit points and 60x margin leverage.\n\n\ud83e\uddf0 Tech stack\n~~~~~~~~~~~~~~\n\n* aiohttp_ 3.12.13\n\n* pydantic_ 2.9.2\n\n\ud83c\udfc1 Getting started\n-------------------\n\n\ud83d\udccb Prerequisites\n~~~~~~~~~~~~~~~~~\n\nYou need ``Authorization`` key and ``user-hash`` to use this package.\n\nTo obtain these credentials, follow these steps:\n\n#. On a computer, open your internet browser and log-in to Tabdeal website\n\n#. Navigate to settings page\n\n#. Press F12 to open Developer tools\n\n#. Navigate to Network panel\n\n#. Refresh the website page and the network section should populate with many entries\n\n#. Find the entry with ``wallet/`` name\n\n#. Select it and in ``Headers`` section, under ``Request Headers``, you should find them\n\n\ud83d\udce6 Installation\n~~~~~~~~~~~~~~~~\n\nYou can install *unofficial tabdeal api* via pip_ from PyPI_, requirements will be met automatically:\n\n.. code-block:: sh\n\n    pip install unofficial-tabdeal-api\n\n\u2699\ufe0f Usage\n---------\n\n#. Import ``TabdealClient`` from the package.\n\n#. Initialize the ``TabdealClient`` with your ``Authorization`` key and ``user-hash`` information\n\n#. Run your desired commands\n\n.. code-block:: python\n\n    # Import TabdealClient\n    from unofficial_tabdeal_api import TabdealClient\n\n    async def main():\n\n        # Initialize a TabdealClient object\n        my_client: TabdealClient = TabdealClient(USER_HASH, USER_AUTHORIZATION_KEY)\n\n        # Run your desired commands, remember to `await` the methods as all of them (except a few) are asynchronous\n        bomeusdt_asset_id = await my_client.get_margin_asset_id(\"BOMEUSDT\")\n\nLearn more in the Documentation_.\n\n\ud83d\udc1b Issues\n----------\n\nIf you encounter any problems,\nplease `file an issue`_ along with a detailed description.\n\n\u2696\ufe0f License\n-----------\n\nDistributed under the terms of the `MIT license`_, *unofficial tabdeal api* is free and open source software.\n\n\ud83e\udd1d Contributing\n----------------\n\nAny contributions to this project are highly valued and appreciated. For detailed guidelines on how to contribute, please refer to the `Contributor Guide`_.\n\n\ud83c\udf1f Credits\n-----------\n\nThis project was created with the help of `@cjolowicz`_'s `Hypermodern Python Cookiecutter`_ template and `@fpgmaas`_'s `Cookiecutter Poetry`_ template.\n\n..\n    Badges\n\n\n.. |codecov| image:: https://codecov.io/gh/MohsenHNSJ/unofficial_tabdeal_api/graph/badge.svg?token=QWCOB4VHEP\n    :target: CodeCov_\n    :alt: Coverage status\n\n.. |codspeed| image:: https://img.shields.io/endpoint?url=https://codspeed.io/badge.json\n    :target: CodSpeed_\n    :alt: CodSpeed\n\n.. |commit-activity| image:: https://img.shields.io/github/commit-activity/m/MohsenHNSJ/unofficial_tabdeal_api?logo=git\n    :target: `Commit Activity`_\n    :alt: GitHub commit activity\n\n.. |contributor-covenant| image:: https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg?logo=contributorcovenant\n    :target: `Code of Conduct`_\n    :alt: Contributor Covenant\n\n.. |contributors| image:: https://img.shields.io/github/contributors/MohsenHNSJ/unofficial_tabdeal_api.svg\n    :target: Contributors_\n    :alt: Contributors\n\n.. |documentation| image:: https://readthedocs.org/projects/unofficial-tabdeal-api/badge/?version=latest\n    :target: Read-The-Docs_\n    :alt: Documentation Status\n\n.. |doi| image:: https://zenodo.org/badge/917705429.svg\n    :target: DOI_\n    :alt: Digital Object Identifier\n\n.. |downloads| image:: https://static.pepy.tech/badge/unofficial_tabdeal_api\n    :target: `Total Downloads`_\n    :alt: Total Downloads\n\n.. |implementation| image:: https://img.shields.io/pypi/implementation/unofficial-tabdeal_api?logo=python\n    :alt: PyPI - Implementation\n\n.. |issues| image:: https://img.shields.io/github/issues/MohsenHNSJ/unofficial_tabdeal_api\n    :target: Issues-link_\n    :alt: GitHub Issues\n\n.. |license| image:: https://img.shields.io/pypi/l/unofficial-tabdeal-api\n    :target: `MIT License`_\n    :alt: License\n\n.. |maintenance| image:: https://img.shields.io/badge/Maintenance%20Intended-\u2714-green.svg\n    :target: Unmaintained_\n    :alt: Maintenance - intended\n\n.. |megalinter| image:: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/actions/workflows/mega-linter.yml/badge.svg?branch=main\n    :target: MegaLinter-Status_\n    :alt: MegaLinter status\n\n.. |mypy| image:: https://img.shields.io/badge/MyPy-Checked-blue\n    :target: mypy-docs_\n    :alt: Checked with MyPy\n\n.. |nox| image:: https://img.shields.io/badge/%F0%9F%A6%8A-Nox-D85E00.svg\n    :target: Nox_\n    :alt: Nox\n\n.. |openssf| image:: https://www.bestpractices.dev/projects/10685/badge\n    :target: openssf-status_\n    :alt: Open Source Security Foundation Best Practices Badge\n\n.. |poetry| image:: https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json\n    :target: poetry-website_\n    :alt: Poetry\n\n.. |pre-commit| image:: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit\n    :target: Pre-commit_\n    :alt: pre-commit\n\n.. |pre-commit-ci| image:: https://results.pre-commit.ci/badge/github/MohsenHNSJ/unofficial_tabdeal_api/main.svg\n    :target: Pre-commit-ci_\n    :alt: pre-commit.ci status\n\n.. |pull-requests| image:: https://img.shields.io/github/issues-pr/MohsenHNSJ/unofficial_tabdeal_api\n    :target: `Pull Requests`_\n    :alt: GitHub Pull Requests\n\n.. |pydantic-badge| image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/pydantic/pydantic/main/docs/badge/v2.json\n    :target: pydantic_\n    :alt: Pydantic\n\n.. |pylint| image:: https://img.shields.io/badge/linting-pylint-yellowgreen\n    :target: pylint-website_\n    :alt: Linting with Pylint\n\n.. |release-to-pypi| image:: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/actions/workflows/release-packge.yml/badge.svg\n    :target: `Release to PyPI`_\n    :alt: Release to PyPI status\n\n.. |repository-size| image:: https://img.shields.io/github/repo-size/MohsenHNSJ/unofficial_tabdeal_api?color=BE81F7\n    :alt: Repository Size\n\n.. |ruff| image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json&style=flat-square\n    :target: Ruff_\n    :alt: Ruff\n\n.. |scorecard| image:: https://api.scorecard.dev/projects/github.com/MohsenHNSJ/unofficial_tabdeal_api/badge\n    :target: scorecard-rating_\n    :alt: OpenSSF Scorecard\n\n.. |skeleton| image:: https://img.shields.io/badge/skeleton-2025-informational?color=000000\n    :target: Skeleton_\n    :alt: Skeleton\n\n.. |sonar-bugs| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=bugs\n    :target: sonar-qube-page_\n    :alt: SonarQube Bugs\n\n.. |sonar-code-smells| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=code_smells\n    :target: sonar-qube-page_\n    :alt: SonarQube Code Smells\n\n.. |sonar-lines-of-code| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=ncloc\n    :target: sonar-qube-page_\n    :alt: SonarQube Lines of Code\n\n.. |sonar-maintainability| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=sqale_rating\n    :target: sonar-qube-page_\n    :alt: SonarQube Maintainability Rating\n\n.. |sonar-quality-gate| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=alert_status\n    :target: sonar-qube-page_\n    :alt: SonarQube Quality Gate\n\n.. |sonar-qube| image:: https://sonarcloud.io/images/project_badges/sonarcloud-dark.svg\n    :target: sonar-qube-page_\n    :alt: SonarQube Cloud\n\n.. |sonar-reliability| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=reliability_rating\n    :target: sonar-qube-page_\n    :alt: SonarQube Reliability Rating\n\n.. |sonar-security| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=security_rating\n    :target: sonar-qube-page_\n    :alt: SonarQube Security Rating\n\n.. |sonar-technical-debt| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=sqale_index\n    :target: sonar-qube-page_\n    :alt: SonarQube Technical Debt\n\n.. |sonar-vulnerabilities| image:: https://sonarcloud.io/api/project_badges/measure?project=MohsenHNSJ_unofficial_tabdeal_api&metric=vulnerabilities\n    :target: sonar-qube-page_\n    :alt: SonarQube Vulnerabilities\n\n.. |stars| image:: https://img.shields.io/github/stars/MohsenHNSJ/unofficial_tabdeal_api?style=social\n    :target: Stars_\n    :alt: Stars\n\n.. |status| image:: https://img.shields.io/pypi/status/unofficial-tabdeal-api.svg\n    :target: package-url_\n    :alt: Status\n\n.. |supported-python-versions| image:: https://img.shields.io/pypi/pyversions/unofficial-tabdeal-api?logo=python\n    :target: package-url_\n    :alt: Python Version\n\n.. |synk| image:: https://img.shields.io/badge/Synk-white?logo=snyk&color=4C4A73\n    :target: synk-website_\n    :alt: Analyzed with Synk\n\n.. |types| image:: https://img.shields.io/pypi/types/unofficial-tabdeal-api\n    :alt: PyPI - Types\n\n.. |version| image:: https://img.shields.io/pypi/v/unofficial-tabdeal-api.svg?logo=pypi\n    :target: package-url_\n    :alt: PyPI\n\n.. |wheel| image:: https://img.shields.io/pypi/wheel/unofficial-tabdeal-api\n    :alt: PyPI - Wheel\n\n\n..\n    Links\n..\n    Badges-links\n\n.. _CodeCov: https://codecov.io/gh/MohsenHNSJ/unofficial_tabdeal_api\n.. _CodSpeed: https://codspeed.io/MohsenHNSJ/unofficial_tabdeal_api\n.. _Commit Activity: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/graphs/commit-activity\n.. _Contributors: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/graphs/contributors\n.. _DOI: https://doi.org/10.5281/zenodo.15035227\n.. _Issues-link: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/issues\n.. _MegaLinter-Status: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/actions?query=workflow%3AMegaLinter+branch%3Amain\n.. _Nox: https://github.com/wntrblm/nox\n.. _openssf-status: https://www.bestpractices.dev/projects/10685\n.. _package-url: https://pypi.org/project/unofficial-tabdeal-api/\n.. _poetry-website: https://python-poetry.org/\n.. _Pre-commit: https://github.com/pre-commit/pre-commit\n.. _Pre-commit-ci: https://results.pre-commit.ci/latest/github/MohsenHNSJ/unofficial_tabdeal_api/main\n.. _Pull Requests: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/pulls\n.. _pydantic: https://pydantic.dev\n.. _pylint-website: https://github.com/pylint-dev/pylint\n.. _Read-The-Docs: https://unofficial-tabdeal-api.readthedocs.io/en/latest/?badge=latest\n.. _Release to PyPI: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/actions\n.. _Ruff: https://github.com/astral-sh/ruff\n.. _scorecard-rating: https://scorecard.dev/viewer/?uri=github.com/MohsenHNSJ/unofficial_tabdeal_api\n.. _Skeleton: https://blog.jaraco.com/skeleton\n.. _sonar-qube-page: https://sonarcloud.io/summary/new_code?id=MohsenHNSJ_unofficial_tabdeal_api\n.. _Stars: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/stargazers\n.. _synk-website: https://snyk.io/\n.. _Total Downloads: https://pepy.tech/project/unofficial_tabdeal_api\n.. _Unmaintained: http://unmaintained.tech/\n.. _mypy-docs: https://mypy.readthedocs.io/en/stable/\n\n..\n    Project-overview-links\n\n.. _official package: https://pypi.org/project/tabdeal-python/\n.. _Tabdeal: https://tabdeal.org/\n\n..\n    Technical-overview-links\n\n.. _aiohttp: https://docs.aiohttp.org/en/stable/\n\n..\n    Installation-links\n\n.. _pip: https://pypi.org/project/pip/\n.. _PyPI: https://pypi.org/\n\n..\n    Issues-links\n\n.. _file an issue: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/issues/new\n\n..\n    Credits-links\n\n.. _@cjolowicz: https://github.com/cjolowicz\n.. _@fpgmaas: https://github.com/fpgmaas\n.. _Cookiecutter Poetry: https://github.com/fpgmaas/cookiecutter-poetry\n.. _Hypermodern Python Cookiecutter: https://github.com/cjolowicz/cookiecutter-hypermodern-python\n\n..\n    Ignore-in-readthedocs\n.. _Code of Conduct: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/blob/main/CODE_OF_CONDUCT.rst\n.. _Contributor Guide: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/blob/main/CONTRIBUTING.rst\n.. _Documentation: https://unofficial-tabdeal-api.readthedocs.io/en/latest/\n.. _MIT License: https://github.com/MohsenHNSJ/unofficial_tabdeal_api/blob/main/LICENSE\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A Package to communicate with the Tabdeal platform",
    "version": "0.3.3",
    "project_urls": {
        "Bug": "https://github.com/MohsenHNSJ/unofficial_tabdeal_api/issues",
        "Changelog": "https://github.com/MohsenHNSJ/unofficial_tabdeal_api/releases",
        "Documentation": "https://unofficial-tabdeal-api.readthedocs.io/en/latest/",
        "Repository": "https://github.com/MohsenHNSJ/unofficial_tabdeal_api"
    },
    "split_keywords": [
        "tabdeal",
        " api",
        " unofficial"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9097463b7ba2365827495959ce4a2ae87d9f2daf90b3779e56c8f54d49966c41",
                "md5": "be536e944b83c66f4fc1fe3403ef2efc",
                "sha256": "d68a60cc8d8dd9cda244a510d64e940bc66ec5f4cb339edf006a2bde48f4247b"
            },
            "downloads": -1,
            "filename": "unofficial_tabdeal_api-0.3.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "be536e944b83c66f4fc1fe3403ef2efc",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 31082,
            "upload_time": "2025-07-08T18:34:28",
            "upload_time_iso_8601": "2025-07-08T18:34:28.685213Z",
            "url": "https://files.pythonhosted.org/packages/90/97/463b7ba2365827495959ce4a2ae87d9f2daf90b3779e56c8f54d49966c41/unofficial_tabdeal_api-0.3.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "aed14ca188b95d5a3aa893a05e20c2a4b918862b61a80777b526fc8ed1ac9b0c",
                "md5": "589dab732324e2faa1fedaea6cd95b77",
                "sha256": "11e4a95289dd1f88e1cf58189b5cdb9ef8a478062b2ca7a268f90bd35dfc19b5"
            },
            "downloads": -1,
            "filename": "unofficial_tabdeal_api-0.3.3.tar.gz",
            "has_sig": false,
            "md5_digest": "589dab732324e2faa1fedaea6cd95b77",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 31928,
            "upload_time": "2025-07-08T18:34:30",
            "upload_time_iso_8601": "2025-07-08T18:34:30.485404Z",
            "url": "https://files.pythonhosted.org/packages/ae/d1/4ca188b95d5a3aa893a05e20c2a4b918862b61a80777b526fc8ed1ac9b0c/unofficial_tabdeal_api-0.3.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-08 18:34:30",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "MohsenHNSJ",
    "github_project": "unofficial_tabdeal_api",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "aiohttp",
            "specs": [
                [
                    "==",
                    "3.12.13"
                ]
            ]
        },
        {
            "name": "pydantic",
            "specs": [
                [
                    "==",
                    "2.9.2"
                ]
            ]
        }
    ],
    "lcname": "unofficial-tabdeal-api"
}
        
Elapsed time: 1.89867s