pypetkitapi


Namepypetkitapi JSON
Version 1.16.6 PyPI version JSON
download
home_pagehttps://github.com/Jezza34000/pypetkit
SummaryPython client for PetKit API
upload_time2025-07-14 14:47:42
maintainerNone
docs_urlNone
authorJezza34000
requires_python>=3.11
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Petkit API Client

---

[![Lifecycle:Maturing](https://img.shields.io/badge/Lifecycle-Stable-007EC6)](https://github.com/Jezza34000/py-petkit-api/)
[![Python Version](https://img.shields.io/pypi/pyversions/pypetkitapi)][python version] [![Actions status](https://github.com/Jezza34000/py-petkit-api/workflows/CI/badge.svg)](https://github.com/Jezza34000/py-petkit-api/actions)

[![PyPI](https://img.shields.io/pypi/v/pypetkitapi.svg)][pypi_] [![PyPI Downloads](https://static.pepy.tech/badge/pypetkitapi)](https://pepy.tech/projects/pypetkitapi)

---

[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=coverage)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api) [![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=ncloc)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)

[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)
[![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)
[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)
[![Bugs](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=bugs)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)
[![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=code_smells)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)
[![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=duplicated_lines_density)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)
[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=vulnerabilities)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)

[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)][pre-commit]
[![Black](https://img.shields.io/badge/code%20style-black-000000.svg)][black]
[![mypy](https://img.shields.io/badge/mypy-checked-blue)](https://mypy.readthedocs.io/en/stable/)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)

---

[pypi_]: https://pypi.org/project/pypetkitapi/
[python version]: https://pypi.org/project/pypetkitapi
[pre-commit]: https://github.com/pre-commit/pre-commit
[black]: https://github.com/psf/black

### Enjoying this library?

[![Sponsor Jezza34000][github-sponsor-shield]][github-sponsor] [![Static Badge][buymeacoffee-shield]][buymeacoffee]

---

## โ„น๏ธ Overview

PetKit Client is a Python library for interacting with the PetKit API. It allows you to manage your PetKit devices, retrieve account data, and control devices through the API.

## ๐Ÿš€ Features

- Login and session management
- Fetch account and device data
- Control PetKit devices (Feeder, Litter Box, Water Fountain, Purifiers)
- Fetch images & videos produced by devices
  > Pictures are available **with or without** Care+ subscription, Videos are only available **with** Care+ subscription

## โฌ‡๏ธ Installation

Install the library using pip:

```bash
pip install pypetkitapi
```

## ๐Ÿ’ก Usage Example:

Here is a simple example of how to use the library to interact with the PetKit API \
This example is not an exhaustive list of all the features available in the library.

```python
import asyncio
import logging
import aiohttp
from pypetkitapi.client import PetKitClient
from pypetkitapi.command import DeviceCommand, FeederCommand, LBCommand, DeviceAction, LitterCommand

logging.basicConfig(level=logging.DEBUG)

async def main():
    async with aiohttp.ClientSession() as session:
        client = PetKitClient(
            username="username",  # Your PetKit account username or id
            password="password",  # Your PetKit account password
            region="FR",  # Your region or country code (e.g. FR, US,CN etc.)
            timezone="Europe/Paris",  # Your timezone(e.g. "Asia/Shanghai")
            session=session,
        )

        await client.get_devices_data()

        # Lists all devices and pet from account

        for key, value in client.petkit_entities.items():
            print(f"{key}: {type(value).__name__} - {value.name}")

        # Select a device
        device_id = key
        # Read devices or pet information
        print(client.petkit_entities[device_id])

        # Send command to the devices
        ### Example 1 : Turn on the indicator light
        ### Device_ID, Command, Payload
        await client.send_api_request(device_id, DeviceCommand.UPDATE_SETTING, {"lightMode": 1})

        ### Example 2 : Feed the pet
        ### Device_ID, Command, Payload
        # simple hopper :
        await client.send_api_request(device_id, FeederCommand.MANUAL_FEED, {"amount": 1})
        # dual hopper :
        await client.send_api_request(device_id, FeederCommand.MANUAL_FEED, {"amount1": 2})
        # or
        await client.send_api_request(device_id, FeederCommand.MANUAL_FEED, {"amount2": 2})

        ### Example 3 : Start the cleaning process
        ### Device_ID, Command, Payload
        await client.send_api_request(device_id, LitterCommand.CONTROL_DEVICE, {DeviceAction.START: LBCommand.CLEANING})


if __name__ == "__main__":
    asyncio.run(main())
```

## ๐Ÿ’ก More example usage

Check at the usage in the Home Assistant integration : [here](https://github.com/Jezza34000/homeassistant_petkit)

## โ˜‘๏ธ Supported Devices

| **Category**     | **Name**                  | **Device**                                                                                                                                             |
| ---------------- | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **๐Ÿ— Feeders**   | โœ… Fresh Element          | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/feeder.png" width="40"/></a>     |
|                  | โœ… Fresh Element Mini Pro | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/feedermini.png" width="40"/></a> |
|                  | โœ… Fresh Element Infinity | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/d3.png" width="40"/></a>         |
|                  | โœ… Fresh Element Solo     | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/d4.png" width="40"/></a>         |
|                  | โœ… Fresh Element Gemini   | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/d4s.png" width="40"/></a>        |
|                  | โœ… YumShare Solo          | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/d4h.png" width="40"/></a>        |
|                  | โœ… YumShare Dual-hopper   | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/d4sh.png" width="40"/></a>       |
| **๐Ÿšฝ Litters**   | โœ… PuraX                  | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/t3.png" width="40"/></a>         |
|                  | โœ… PuraMax                | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/t4.1.png" width="40"/></a>       |
|                  | โœ… PuraMax 2              | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/t4.png" width="40"/></a>         |
|                  | โœ… Purobot Max Pro        | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/t5.png" width="40"/></a>         |
|                  | โœ… Purobot Ultra          | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/t6.png" width="40"/></a>         |
| **โ›ฒ Fountains** | โœ… Eversweet Solo 2       | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/5w5.png" width="40"/></a>        |
|                  | โœ… Eversweet 3 Pro        | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/4w5.png" width="40"/></a>        |
|                  | โœ… Eversweet 3 Pro UVC    | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/6w5.png" width="40"/></a>        |
|                  | โœ… Eversweet 5 Mini       | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/2w5.png" width="40"/></a>        |
|                  | โœ… Eversweet Max          | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/ctw3.png" width="40"/></a>       |
| **๐Ÿงด Purifiers** | โœ… Air Magicube           | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/k2.png" width="40"/></a>         |
|                  | โœ… Air Smart Spray        | <a href=""><img src="https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/k3.png" width="40"/></a>         |

## ๐Ÿ›Ÿ Help and Support

Developers? Want to help? Join us on our Discord channel dedicated to developers and contributors.

[![Discord][discord-shield]][discord]

## ๐Ÿ‘จโ€๐Ÿ’ป Contributing

Contributions are welcome!\
Please open an issue or submit a pull request.

## License

This project is licensed under the MIT License. See the LICENSE file for details.

---

[homeassistant_petkit]: https://github.com/Jezza34000/py-petkit-api
[commits-shield]: https://img.shields.io/github/commit-activity/y/Jezza34000/py-petkit-api.svg?style=flat
[commits]: https://github.com/Jezza34000/py-petkit-api/commits/main
[discord]: https://discord.gg/Va8DrmtweP
[discord-shield]: https://img.shields.io/discord/1318098700379361362.svg?style=for-the-badge&label=Discord&logo=discord&color=5865F2
[forum-shield]: https://img.shields.io/badge/community-forum-brightgreen.svg?style=for-the-badge&label=Home%20Assistant%20Community&logo=homeassistant&color=18bcf2
[forum]: https://community.home-assistant.io/t/petkit-integration/834431
[license-shield]: https://img.shields.io/github/license/Jezza34000/py-petkit-api.svg??style=flat
[maintenance-shield]: https://img.shields.io/badge/maintainer-Jezza34000-blue.svg?style=flat
[releases-shield]: https://img.shields.io/github/release/Jezza34000/py-petkit-api.svg?style=for-the-badge&color=41BDF5
[releases]: https://github.com/Jezza34000/py-petkit-api/releases
[github-sponsor-shield]: https://img.shields.io/badge/sponsor-Jezza34000-blue.svg?style=for-the-badge&logo=githubsponsors&color=EA4AAA
[github-sponsor]: https://github.com/sponsors/Jezza34000
[buymeacoffee-shield]: https://img.shields.io/badge/Donate-buy_me_a_coffee-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee
[buymeacoffee]: https://www.buymeacoffee.com/jezza

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/Jezza34000/pypetkit",
    "name": "pypetkitapi",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": null,
    "keywords": null,
    "author": "Jezza34000",
    "author_email": "info@mail.com",
    "download_url": "https://files.pythonhosted.org/packages/95/8f/308b4b0bfbd4d417c84676fb15ccd4638c4d1184f4b436fc1cfd21df20cc/pypetkitapi-1.16.6.tar.gz",
    "platform": null,
    "description": "# Petkit API Client\n\n---\n\n[![Lifecycle:Maturing](https://img.shields.io/badge/Lifecycle-Stable-007EC6)](https://github.com/Jezza34000/py-petkit-api/)\n[![Python Version](https://img.shields.io/pypi/pyversions/pypetkitapi)][python version] [![Actions status](https://github.com/Jezza34000/py-petkit-api/workflows/CI/badge.svg)](https://github.com/Jezza34000/py-petkit-api/actions)\n\n[![PyPI](https://img.shields.io/pypi/v/pypetkitapi.svg)][pypi_] [![PyPI Downloads](https://static.pepy.tech/badge/pypetkitapi)](https://pepy.tech/projects/pypetkitapi)\n\n---\n\n[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=coverage)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api) [![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=ncloc)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)\n\n[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)\n[![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)\n[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)\n[![Bugs](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=bugs)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)\n[![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=code_smells)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)\n[![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=duplicated_lines_density)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)\n[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=Jezza34000_py-petkit-api&metric=vulnerabilities)](https://sonarcloud.io/summary/new_code?id=Jezza34000_py-petkit-api)\n\n[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)][pre-commit]\n[![Black](https://img.shields.io/badge/code%20style-black-000000.svg)][black]\n[![mypy](https://img.shields.io/badge/mypy-checked-blue)](https://mypy.readthedocs.io/en/stable/)\n[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)\n\n---\n\n[pypi_]: https://pypi.org/project/pypetkitapi/\n[python version]: https://pypi.org/project/pypetkitapi\n[pre-commit]: https://github.com/pre-commit/pre-commit\n[black]: https://github.com/psf/black\n\n### Enjoying this library?\n\n[![Sponsor Jezza34000][github-sponsor-shield]][github-sponsor] [![Static Badge][buymeacoffee-shield]][buymeacoffee]\n\n---\n\n## \u2139\ufe0f Overview\n\nPetKit Client is a Python library for interacting with the PetKit API. It allows you to manage your PetKit devices, retrieve account data, and control devices through the API.\n\n## \ud83d\ude80 Features\n\n- Login and session management\n- Fetch account and device data\n- Control PetKit devices (Feeder, Litter Box, Water Fountain, Purifiers)\n- Fetch images & videos produced by devices\n  > Pictures are available **with or without** Care+ subscription, Videos are only available **with** Care+ subscription\n\n## \u2b07\ufe0f Installation\n\nInstall the library using pip:\n\n```bash\npip install pypetkitapi\n```\n\n## \ud83d\udca1 Usage Example:\n\nHere is a simple example of how to use the library to interact with the PetKit API \\\nThis example is not an exhaustive list of all the features available in the library.\n\n```python\nimport asyncio\nimport logging\nimport aiohttp\nfrom pypetkitapi.client import PetKitClient\nfrom pypetkitapi.command import DeviceCommand, FeederCommand, LBCommand, DeviceAction, LitterCommand\n\nlogging.basicConfig(level=logging.DEBUG)\n\nasync def main():\n    async with aiohttp.ClientSession() as session:\n        client = PetKitClient(\n            username=\"username\",  # Your PetKit account username or id\n            password=\"password\",  # Your PetKit account password\n            region=\"FR\",  # Your region or country code (e.g. FR, US,CN etc.)\n            timezone=\"Europe/Paris\",  # Your timezone(e.g. \"Asia/Shanghai\")\n            session=session,\n        )\n\n        await client.get_devices_data()\n\n        # Lists all devices and pet from account\n\n        for key, value in client.petkit_entities.items():\n            print(f\"{key}: {type(value).__name__} - {value.name}\")\n\n        # Select a device\n        device_id = key\n        # Read devices or pet information\n        print(client.petkit_entities[device_id])\n\n        # Send command to the devices\n        ### Example 1 : Turn on the indicator light\n        ### Device_ID, Command, Payload\n        await client.send_api_request(device_id, DeviceCommand.UPDATE_SETTING, {\"lightMode\": 1})\n\n        ### Example 2 : Feed the pet\n        ### Device_ID, Command, Payload\n        # simple hopper :\n        await client.send_api_request(device_id, FeederCommand.MANUAL_FEED, {\"amount\": 1})\n        # dual hopper :\n        await client.send_api_request(device_id, FeederCommand.MANUAL_FEED, {\"amount1\": 2})\n        # or\n        await client.send_api_request(device_id, FeederCommand.MANUAL_FEED, {\"amount2\": 2})\n\n        ### Example 3 : Start the cleaning process\n        ### Device_ID, Command, Payload\n        await client.send_api_request(device_id, LitterCommand.CONTROL_DEVICE, {DeviceAction.START: LBCommand.CLEANING})\n\n\nif __name__ == \"__main__\":\n    asyncio.run(main())\n```\n\n## \ud83d\udca1 More example usage\n\nCheck at the usage in the Home Assistant integration : [here](https://github.com/Jezza34000/homeassistant_petkit)\n\n## \u2611\ufe0f Supported Devices\n\n| **Category**     | **Name**                  | **Device**                                                                                                                                             |\n| ---------------- | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| **\ud83c\udf57 Feeders**   | \u2705 Fresh Element          | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/feeder.png\" width=\"40\"/></a>     |\n|                  | \u2705 Fresh Element Mini Pro | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/feedermini.png\" width=\"40\"/></a> |\n|                  | \u2705 Fresh Element Infinity | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/d3.png\" width=\"40\"/></a>         |\n|                  | \u2705 Fresh Element Solo     | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/d4.png\" width=\"40\"/></a>         |\n|                  | \u2705 Fresh Element Gemini   | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/d4s.png\" width=\"40\"/></a>        |\n|                  | \u2705 YumShare Solo          | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/d4h.png\" width=\"40\"/></a>        |\n|                  | \u2705 YumShare Dual-hopper   | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/d4sh.png\" width=\"40\"/></a>       |\n| **\ud83d\udebd Litters**   | \u2705 PuraX                  | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/t3.png\" width=\"40\"/></a>         |\n|                  | \u2705 PuraMax                | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/t4.1.png\" width=\"40\"/></a>       |\n|                  | \u2705 PuraMax 2              | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/t4.png\" width=\"40\"/></a>         |\n|                  | \u2705 Purobot Max Pro        | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/t5.png\" width=\"40\"/></a>         |\n|                  | \u2705 Purobot Ultra          | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/t6.png\" width=\"40\"/></a>         |\n| **\u26f2 Fountains** | \u2705 Eversweet Solo 2       | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/5w5.png\" width=\"40\"/></a>        |\n|                  | \u2705 Eversweet 3 Pro        | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/4w5.png\" width=\"40\"/></a>        |\n|                  | \u2705 Eversweet 3 Pro UVC    | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/6w5.png\" width=\"40\"/></a>        |\n|                  | \u2705 Eversweet 5 Mini       | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/2w5.png\" width=\"40\"/></a>        |\n|                  | \u2705 Eversweet Max          | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/ctw3.png\" width=\"40\"/></a>       |\n| **\ud83e\uddf4 Purifiers** | \u2705 Air Magicube           | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/k2.png\" width=\"40\"/></a>         |\n|                  | \u2705 Air Smart Spray        | <a href=\"\"><img src=\"https://raw.githubusercontent.com/Jezza34000/homeassistant_petkit/refs/heads/main/images/devices/k3.png\" width=\"40\"/></a>         |\n\n## \ud83d\udedf Help and Support\n\nDevelopers? Want to help? Join us on our Discord channel dedicated to developers and contributors.\n\n[![Discord][discord-shield]][discord]\n\n## \ud83d\udc68\u200d\ud83d\udcbb Contributing\n\nContributions are welcome!\\\nPlease open an issue or submit a pull request.\n\n## License\n\nThis project is licensed under the MIT License. See the LICENSE file for details.\n\n---\n\n[homeassistant_petkit]: https://github.com/Jezza34000/py-petkit-api\n[commits-shield]: https://img.shields.io/github/commit-activity/y/Jezza34000/py-petkit-api.svg?style=flat\n[commits]: https://github.com/Jezza34000/py-petkit-api/commits/main\n[discord]: https://discord.gg/Va8DrmtweP\n[discord-shield]: https://img.shields.io/discord/1318098700379361362.svg?style=for-the-badge&label=Discord&logo=discord&color=5865F2\n[forum-shield]: https://img.shields.io/badge/community-forum-brightgreen.svg?style=for-the-badge&label=Home%20Assistant%20Community&logo=homeassistant&color=18bcf2\n[forum]: https://community.home-assistant.io/t/petkit-integration/834431\n[license-shield]: https://img.shields.io/github/license/Jezza34000/py-petkit-api.svg??style=flat\n[maintenance-shield]: https://img.shields.io/badge/maintainer-Jezza34000-blue.svg?style=flat\n[releases-shield]: https://img.shields.io/github/release/Jezza34000/py-petkit-api.svg?style=for-the-badge&color=41BDF5\n[releases]: https://github.com/Jezza34000/py-petkit-api/releases\n[github-sponsor-shield]: https://img.shields.io/badge/sponsor-Jezza34000-blue.svg?style=for-the-badge&logo=githubsponsors&color=EA4AAA\n[github-sponsor]: https://github.com/sponsors/Jezza34000\n[buymeacoffee-shield]: https://img.shields.io/badge/Donate-buy_me_a_coffee-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee\n[buymeacoffee]: https://www.buymeacoffee.com/jezza\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Python client for PetKit API",
    "version": "1.16.6",
    "project_urls": {
        "Homepage": "https://github.com/Jezza34000/pypetkit"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "243c4a7d623d2b8f9802aab24831d5430b3fbe9d32442bb4ec6c642881779af1",
                "md5": "fde90663e6ee6eef3a6151ff38b15bde",
                "sha256": "a103cb6593016343358e86c814ac31fb5b00b27404a6d09eacd99a88813bc7ed"
            },
            "downloads": -1,
            "filename": "pypetkitapi-1.16.6-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fde90663e6ee6eef3a6151ff38b15bde",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 39860,
            "upload_time": "2025-07-14T14:47:41",
            "upload_time_iso_8601": "2025-07-14T14:47:41.271402Z",
            "url": "https://files.pythonhosted.org/packages/24/3c/4a7d623d2b8f9802aab24831d5430b3fbe9d32442bb4ec6c642881779af1/pypetkitapi-1.16.6-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "958f308b4b0bfbd4d417c84676fb15ccd4638c4d1184f4b436fc1cfd21df20cc",
                "md5": "7b7e0296d9ab90ec9c9a02b0be50db85",
                "sha256": "f72a7135e65ad43d368398fa35b199ac5893c512e2c43999e1690d478338f5d9"
            },
            "downloads": -1,
            "filename": "pypetkitapi-1.16.6.tar.gz",
            "has_sig": false,
            "md5_digest": "7b7e0296d9ab90ec9c9a02b0be50db85",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 38185,
            "upload_time": "2025-07-14T14:47:42",
            "upload_time_iso_8601": "2025-07-14T14:47:42.615978Z",
            "url": "https://files.pythonhosted.org/packages/95/8f/308b4b0bfbd4d417c84676fb15ccd4638c4d1184f4b436fc1cfd21df20cc/pypetkitapi-1.16.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-14 14:47:42",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Jezza34000",
    "github_project": "pypetkit",
    "github_not_found": true,
    "lcname": "pypetkitapi"
}
        
Elapsed time: 2.38377s