# Купить энергию

##

{% openapi src="/files/S7ogLk319Rvo6RmEBDSD" path="/api/order" method="post" %}
[api.json](https://1536932170-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0I1cbqzAWyr7X8OzPW5s%2Fuploads%2Fgit-blob-f76b25fb15a5926f526148c882342481e1f412cf%2Fapi.json?alt=media)
{% endopenapi %}

#### **Основной API: Создание заказа (POST /order)**

При создании заказа через API **Mefree.net**, важно обратить внимание на три ключевых параметра в ответе API:

1. **`pay_hash` (хэш платежа/ID заказа)**\
   Уникальный идентификатор для каждого заказа.\
   С его помощью можно запросить подробную информацию о заказе через интерфейс `GET /order/{pay_hash}`.
2. **`status` (статус заказа)**\
   Показывает прогресс выполнения заказа.\
   Если статус **`DELEGATE_SUCCESS`**, это значит, что сделка по энергии была успешно отправлена в блокчейн Tron.\
   ⚠️ Примечание: существует небольшая вероятность (примерно 0.1%), что транзакция не попадёт в блокчейн.
3. **`confirm_status` (статус подтверждения на блокчейне)**\
   Отражает, была ли энергия успешно отправлена на целевой адрес.\
   Если **`confirm_status`** = `DELEGATION_CONFIRMED`, это значит, что энергия была успешно подтверждена и отправлена в блокчейне.

***

#### **Как убедиться, что энергия отправлена на целевой адрес?**

Используйте два способа проверки:

1. **Запрос к API блокчейна Tron для проверки баланса энергии на целевом адресе.**\
   Используйте Tron API или инструменты кошелька (например, TronLink) для проверки энергии на целевом адресе.

   Пример запроса к официальному API Tron:

   ```bash
   curl --request POST \
        --url https://api.trongrid.io/wallet/getaccountresource \
        --header 'accept: application/json' \
        --header 'content-type: application/json' \
        --data '
   {
     "address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
     "visible": true
   }
   '
   ```

   В ответе проверьте такие поля, как `energy_limit` и `energy_used`.
2. **Запрос статуса заказа через `GET /order/{pay_hash}`.**\
   Если **`confirm_status`** = `DELEGATION_CONFIRMED`, это значит, что энергия была успешно отправлена и подтверждена на блокчейне.

***

#### **Пример процесса работы**

**1. Создание заказа**

Пример запроса:

```http
POST /order?count=1&target_address=TRON_ADDRESS&period=1
Host: https://api.mefree.net
Headers: 
  Content-Type: application/json
  MF-ACCESS-KEY: {api_key}
  MF-ACCESS-SIGN: {signature}
  MF-ACCESS-TIMESTAMP: {timestamp}
```

Пример ответа:

```json
{
  "pay_hash": "abcd1234",
  "status": "DELEGATE_SUCCESS",
  "confirm_status": "UNCONFIRMED"
}
```

***

**2. Проверка статуса заказа**

Пример запроса:

```http
GET /order/abcd1234
Host: https://api.mefree.net
Headers: 
  Content-Type: application/json
  MF-ACCESS-KEY: {api_key}
  MF-ACCESS-SIGN: {signature}
  MF-ACCESS-TIMESTAMP: {timestamp}
```

Пример ответа:

```json
{
  "pay_hash": "abcd1234",
  "status": "DELEGATE_SUCCESS",
  "confirm_status": "DELEGATION_CONFIRMED"
}
```

***

**3. Подтверждение успешной отправки энергии**

* Если **`confirm_status` = `DELEGATION_CONFIRMED`**, энергия успешно отправлена.
* Для дополнительной проверки вы можете запросить баланс энергии на целевом адресе через Tron API.

***

#### **Часто задаваемые вопросы**

**Почему статус заказа `DELEGATE_SUCCESS`, но энергия не поступила?**

**Причина:**\
Транзакция могла не попасть в блокчейн (вероятность около 0.1%).

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

* Подождите некоторое время и снова запросите статус заказа.
* Проверьте транзакцию в блокчейне Tron с помощью соответствующего API.

***

**Почему задерживается зачисление энергии?**

**Причина:**\
Сеть блокчейна может быть перегружена.

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

* Убедитесь, что статус заказа **`DELEGATION_CONFIRMED`**, после чего энергия считается зачисленной.

***

#### **Советы для надежной работы**

* Обращайте внимание на поля **`pay_hash`** и **`confirm_status`**, чтобы отслеживать статус заказов.
* При необходимости проверяйте баланс целевого адреса через Tron API.

Если у вас возникают вопросы или сложности, свяжитесь с технической поддержкой **Mefree** через Telegram: [@mefreenet](https://t.me/mefreenet).


---

# 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/api/create-order.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.
