Metadata-Version: 2.2
Name: ApiModkey
Version: 0.2.3
Summary: Библиотека для использования апи от Modkey.space
Home-page: https://modkey.space/
Author: MAKCNMOB
Author-email: support@gmail.com
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests==2.32.3
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary


![Лого](https://i.ibb.co/zhP8MptB/IMG-20250301-153001-834.jpg)

### 📚 **Документация для библиотеки `apimodkey`**

Библиотека `apimodkey` предоставляет удобные методы для взаимодействия с API Modkey.space. С её помощью вы можете создавать ключи, изменять их статус и управлять ими, передавая API-ключ прямо в коде вашего проекта.

---

#### ⚙️ **Метод: `create_key`**

Этот метод позволяет создать новый ключ с заданными параметрами.

**Описание**:
- Метод создает ключ с указанным сроком действия, количеством устройств и типом ключа.
- Возвращает строку с результатом или ошибкой.

**Параметры**:
- `api_key` (str): Ваш API-ключ.
- `days` (int): Количество дней действия ключа.
- `devices` (int): Количество устройств, на которые можно активировать ключ.
- `key_type` (str): Тип ключа (например, 'APK' или 'INJECTOR').

**Возвращаемое значение**:
- Строка с результатом создания ключа или ошибкой.

---

**Пример использования**:

```python
from apimodkey import create_key

# Указываем API-ключ
api_key = "YOUR_API_KEY"

# Создаем ключ на 30 дней для 3 устройств с типом 'APK'
result = create_key(api_key, 30, 3, 'APK')

# Выводим результат
print(result)
```

**Пример вывода**:
```
Ключ успешно создан!
Ваш ключ: abc123xyz
```

---

#### 🔧 **Метод: `edit_key_status`**

Этот метод позволяет изменить статус уже существующего ключа.

**Описание**:
- Метод изменяет статус ключа на новый.
- Выводит старый и новый статус ключа, если операция прошла успешно.

**Параметры**:
- `api_key` (str): Ваш API-ключ.
- `key` (str): Ключ, для которого нужно изменить статус.
- `new_status` (str): Новый статус ключа ('block' или 'active').

**Возвращаемое значение**:
- None, но выводит в консоль старый и новый статус ключа.

---

**Пример использования**:

```python
from apimodkey import edit_key_status

# Указываем API-ключ
api_key = "YOUR_API_KEY"

# Изменяем статус ключа на 'inactive'
edit_key_status(api_key, 'your_key', 'inactive')
```

**Пример вывода**:
```
Статус ключа успешно изменен!
Старый статус: active
Новый статус: inactive
```

---

#### 💡 **Метод: `edit_key_max_devices`**

Этот метод позволяет изменить максимальное количество устройств, на которые можно активировать ключ.

**Описание**:
- Метод изменяет максимальное количество устройств для указанного ключа.
- Возвращает старое и новое значение максимального количества устройств.

**Параметры**:
- `api_key` (str): Ваш API-ключ.
- `key` (str): Ключ, для которого нужно изменить количество устройств.
- `new_max_devices` (int): Новое максимальное количество устройств.

**Возвращаемое значение**:
- None, но выводит старое и новое количество устройств.

---

**Пример использования**:

```python
from apimodkey import edit_key_max_devices

# Указываем API-ключ
api_key = "YOUR_API_KEY"

# Изменяем максимальное количество устройств на 5
edit_key_max_devices(api_key, 'your_key', 5)
```

**Пример вывода**:
```
Максимальное количество устройств успешно изменено!
Старое количество: 3
Новое количество: 5
```

---

#### 🆕 **Метод: `edit_user_key`**

Этот метод позволяет изменить название или значение ключа для пользователя.

**Описание**:
- Метод изменяет значение/название ключа для пользователя.
- Возвращает новый ключ или ошибку.

**Параметры**:
- `api_key` (str): Ваш API-ключ.
- `key` (str): Ключ, который нужно изменить.
- `new_user_key` (str): Новое название или значение ключа.

**Возвращаемое значение**:
- Новый ключ или ошибка, если операция не удалась.

---

**Пример использования**:

```python
from apimodkey import edit_user_key

# Указываем API-ключ
api_key = "YOUR_API_KEY"

# Изменяем название ключа на новое
result = edit_user_key(api_key, 'your_key', 'new_key_name')

# Выводим результат
print(result)
```

**Пример вывода**:
```
Название ключа успешно изменено на 'new_key_name'.
```

---

#### 💡 **Как использовать?**

Чтобы использовать методы из этой библиотеки, вам нужно:
1. Установить библиотеку через `pip`.
2. В вашем коде передать API-ключ в качестве аргумента для каждого метода.

---

### 🚀 **Установка библиотеки**

Для установки библиотеки используйте команду:

```bash
pip install apimodkey
```

---

#### 📝 **Пример с полной документацией**:

```python
from apimodkey import create_key, edit_key_status, edit_key_max_devices, edit_user_key

# Указываем свой API-ключ
api_key = "YOUR_API_KEY"

#СОЗДАНИЕ КЛЮЧА 
created_key = create_key(api_key, days=30, devices=5, key_type='INJECTOR') #в кей тип либо APK или INJECTOR

#Редактирование ключа
if created_key:
	edit_key_status(api_key, created_key, new_status='active')  # или 'active'

#измение количество максимальных устройств
if created_key:
	edit_key_max_devices(api_key, created_key, new_max_devices=10)

#изменение ключа
if created_key:
	edit_user_key(api_key, created_key, new_user_key='Test')

```
---
#### **Пример с интеграцией в бота**
```python
import telebot
from apimodkey import create_key, edit_key_status, edit_key_max_devices, edit_user_key

api = "ВАШ_ТОКЕН_ИЗ_МОДКЕЙ"


bot = telebot.TeleBot('YOUR_TELEGRAM_BOT_TOKEN')


@bot.message_handler(commands=['start'])
def send_welcome(message):
    bot.reply_to(message, "Привет! Я бот для работы с API ModKey. Используй /help для списка команд.")


@bot.message_handler(commands=['help'])
def send_help(message):
    help_text = """
Доступные команды:
/createkey <days> <devices> <type> - Создать новый ключ
/editstatus <key> <new_status> - Изменить статус ключа
/editmaxdevices <key> <new_max_devices> - Изменить максимальное количество устройств
/edituserkey <key> <new_user_key> - Изменить пользовательский ключ
"""
    bot.reply_to(message, help_text)


@bot.message_handler(commands=['createkey'])
def create_key_command(message):
    try:
        _, days, devices, key_type = message.text.split()
        key = create_key(api, int(days), int(devices), key_type)
        if key:
            bot.reply_to(message, f"Ключ создан: {key}")
        else:
            bot.reply_to(message, "Ошибка при создании ключа")
    except Exception as e:
        bot.reply_to(message, f"Ошибка: {str(e)}")


@bot.message_handler(commands=['editstatus'])
def edit_key_status_command(message):
    try:
        _, key, new_status = message.text.split()
        new_status = edit_key_status(api, key, new_status)
        if new_status:
            bot.reply_to(message, f"Статус ключа изменен: {new_status}")
        else:
            bot.reply_to(message, "Ошибка при изменении статуса ключа")
    except Exception as e:
        bot.reply_to(message, f"Ошибка: {str(e)}")


@bot.message_handler(commands=['editmaxdevices'])
def edit_key_max_devices_command(message):
    try:
        _, key, new_max_devices = message.text.split()
        new_max_devices = edit_key_max_devices(api, key, int(new_max_devices))
        if new_max_devices:
            bot.reply_to(message, f"Максимальное количество устройств изменено: {new_max_devices}")
        else:
            bot.reply_to(message, "Ошибка при изменении максимального количества устройств")
    except Exception as e:
        bot.reply_to(message, f"Ошибка: {str(e)}")


@bot.message_handler(commands=['edituserkey'])
def edit_user_key_command(message):
    try:
        _, key, new_user_key = message.text.split()
        new_user_key = edit_user_key(api, key, new_user_key)
        if new_user_key:
            bot.reply_to(message, f"Пользовательский ключ изменен: {new_user_key}")
        else:
            bot.reply_to(message, "Ошибка при изменении пользовательского ключа")
    except Exception as e:
        bot.reply_to(message, f"Ошибка: {str(e)}")


bot.polling()
```
---

#### 🎉 **Твой первый ключ уже создан!**

Используя эти простые методы, вы можете легко создавать и управлять ключами в Modkey.space. Наслаждайтесь работой с API! 🎉

---

### 📜 **Рекомендации по безопасности**:
- **Не раскрывайте свой API-ключ**! Он должен храниться в надежном месте и передаваться в коде в безопасных условиях.
- Используйте переменные окружения или конфигурационные файлы для дополнительной безопасности при передаче ключа.

#### Work
>Владельцем проекта(modkey.space) является [CATPoN](https://t.me/EXPERT_CATPON)
>Разработчик проекта modkey.space [Wardex](https://t.me/Autoritetion)

>**Над библиотекой и документацией работал [@MAKCNMOB](https://t.me/MAKCNMOB)**
