# Часто задаваемые вопросы и решения (FAQ)

Ниже представлены распространенные проблемы при использовании API **Mefree.NET** и рекомендации по их решению, чтобы помочь вам быстро разобраться с возникшими трудностями.

***

#### **1. Проблемы с аккаунтом и правами доступа**

**1.1 Почему мой API-ключ не работает?**

**Причины:**

* API-ключ мог быть отключён или удалён.

**Решение:**

* Авторизуйтесь в **боте Telegram Mefree** ([@SuperXCoinBot](https://t.me/SuperXCoinBot)) и проверьте статус вашего API-ключа в личном кабинете.

***

**1.2 Как настроить доступ к API-ключу только с определённых IP-адресов?**

**Решение:**

* При создании или редактировании API-ключа укажите IP-адреса, с которых разрешены запросы.
* После настройки API-ключ будет принимать запросы только с указанных IP-адресов, что повышает безопасность.

***

#### **2. Проблемы с подписью и аутентификацией**

**2.1 Почему возвращается ошибка 401 Unauthorized?**

**Причины:**

* Неправильные **MF-ACCESS-KEY** или **MF-ACCESS-SIGN**.
* Ошибки при генерации подписи.
* Разница между вашим временем и временем сервера превышает 5 секунд.

**Решение:**

1. Проверьте, совпадает ли **MF-ACCESS-KEY** с вашим API-ключом.
2. Убедитесь, что подпись сгенерирована в соответствии с **правилами подписи**.
3. Используйте UTC-время и убедитесь, что разница с серверным временем не превышает 5 секунд.

***

**2.2 Как проверить корректность подписи?**

**Решение:**

1. Выведите строку для подписи (формат: `timestamp + method + requestPath`).
2. Сравните сгенерированную подпись с локально вычисленной.
3. Используйте инструменты (например, Postman или Curl) для ручного тестирования подписи.

***

#### **3. Проблемы с запросами и ответами**

**3.1 Почему возвращается ошибка 400 Bad Request?**

**Причины:**

* Ошибки в параметрах запроса (например, отсутствует обязательное поле или неверный формат данных).
* Неправильный путь к API.

**Решение:**

* Проверьте документацию API и убедитесь, что все параметры запроса указаны верно.
* Убедитесь, что заголовок `Content-Type` установлен как `application/json`.
* Проверьте, правильно ли отформатирован JSON в теле запроса.

***

**3.2 Почему возвращается ошибка 429 Too Many Requests?**

**Причины:**

* Частота запросов превышает лимит API.

**Решение:**

* Ознакомьтесь с документацией API, чтобы узнать лимиты запросов.
* Реализуйте в коде ограничение скорости (например, не превышать количество запросов в секунду).
* Если вы используете распределённую систему, убедитесь, что общая частота запросов не превышает допустимый лимит.

***

**3.3 Почему возвращается ошибка 500 Internal Server Error?**

**Причины:**

* На сервере API могут возникать временные проблемы.

**Решение:**

1. Проверьте соединение с сетью, чтобы убедиться, что запрос отправлен корректно.
2. Повторите запрос через несколько секунд.
3. Если проблема сохраняется, обратитесь в **техническую поддержку Mefree**.

***

#### **4. Проблемы с конкретными методами API**

**4.1 Почему невозможно создать заказ?**

**Причины:**

* Недостаточно средств на счёте.
* Ошибки в параметрах заказа (например, неверное количество или срок).
* Аккаунт не имеет права создавать заказы.

**Решение:**

1. Проверьте, хватает ли средств на вашем счёте.
2. Убедитесь, что параметры заказа соответствуют требованиям, указанным в документации.
3. Убедитесь, что у аккаунта есть права на размещение заказов.

***

#### **5. Проблемы с разработкой и отладкой**

**5.1 Как справиться с тайм-аутами?**

**Причины:**

* Слабое соединение с интернетом или нестабильная сеть.

**Решение:**

1. Установите более длительное время ожидания для запросов (например, `timeout=30`).
2. Для критически важных операций настройте повторные попытки (например, 2-3 раза).
3. Проверьте соединение между вашим сервером и API **Mefree**.

***

**5.2 Как обрабатывать ответы API?**

**Решение:**

* Ответы API **Mefree** обычно представлены в формате JSON с такой структурой:

```json
{
  "code": "0",
  "msg": "",
  "data": {
    "key": "value"
  }
}
```

* **Описание полей:**
  * `code`: Код ответа, `0` — успешный запрос, любое другое значение — ошибка.
  * `msg`: Описание ошибки (только при ошибке).
  * `data`: Основная информация (например, детали заказа или баланс).

***

#### **6. Прочие проблемы**

**6.1 Почему возникают ошибки с временной меткой?**

**Причины:**

* Локальное время отличается от серверного UTC.

**Решение:**

* Используйте метод `datetime.utcnow()` в Python для получения UTC-времени.

***

**6.2 Как справляться с обновлениями API?**

**Решение:**

1. Подпишитесь на **объявления для разработчиков Mefree**, чтобы быть в курсе изменений API.
2. Регулярно обновляйте ваш код, чтобы соответствовать новой версии API.
3. Используйте версионирование API (например, `/v1/`), чтобы избежать проблем с совместимостью при обновлениях.

***

#### **7. Техническая поддержка**

Если вы не можете самостоятельно решить проблему, воспользуйтесь одним из следующих способов для связи с **техподдержкой Mefree**:

* **Подать заявку**: через центр поддержки Mefree.
* **Документация для разработчиков**: [официальная документация API](https://mefree.net/api-docs).
* **Связь через Telegram**: напишите в чат [**@mefreenet**](https://t.me/mefreenet).

***

Надеемся, что этот FAQ поможет вам быстро разобраться с проблемами при использовании **API Mefree.NET**. Если у вас возникнут дополнительные вопросы, не стесняйтесь обращаться в поддержку или задавать их здесь!


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mefree.net/ru/getting-started/faq.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
