Документация Exwell API

Все запросы содержат query-параметр key — API-ключ из партнёрского кабинета. Формат ключа: 32 символа A–Z a–z 0–9. Без ключа или с неверным ключом API отвечает 401.

API URI https://exwell.io/v1/api — то же, что https://api.exwell.io/partner/v1/
Ответ json, кроме XML-фида курсов
Авторизация только key. Параметр refId с сайта API не читает
Комиссия начисляется, только если в кабинете задан Partner Fee Rate. Иначе обмен пройдёт, начисления не будет
Ошибки 401 — нет key (Key parameter is required!) или ключ не найден (User does not exist!). Остальные коды — у метода

Обмен

Порядок вызовов

  1. /currencies — какие монеты есть
  2. /pairs — какие пары открыты
  3. /rate — курс и лимиты на сумму
  4. /validate-address — адрес получения
  5. /exchange-create — заявка, депозитный адрес
  6. Пользователь отправляет депозит
  7. /exchange-status — поллинг до финального статуса

GET /currencies — Список валют

Список доступных монет, сетей, min/max и memo/tag.

https://exwell.io/v1/api/currencies?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN

Дополнительных параметров нет.

Ответ 200

{
  "XMR": {
    "coinName": "Monero",
    "minamount": 20.01,
    "maxamount": 23724,
    "tagname": "",
    "network": "Monero",
    "available": true
  },
  "XRP": {
    "coinName": "XRP",
    "minamount": 6180.12,
    "maxamount": 7343941,
    "tagname": "TAG",
    "network": "Ripple",
    "available": true
  }
}

Если tagname не пустой — тэг обязателен (destinationTag / refundTag).

GET /pairs — Список пар

Доступные пары: ключ — валюта «откуда», значение — массив «куда».

https://exwell.io/v1/api/pairs?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN

Дополнительных параметров нет.

Ответ 200

{
  "ZEC": ["BTC", "USDT", "USDC", "ETH", "BTCLIGHTNING", "USDTTRC20"],
  "DASH": ["USDC", "BTC", "ETH", "USDCTRC20"]
}

GET /rate — Курс на сумму

Текущий курс пары. Ставка не включает комиссию майнера за вывод.

https://exwell.io/v1/api/rate?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN&from=ZEC&to=BTC&amount=1000

Параметры

Параметр Тип Пример
from string ZEC
to string BTC
amount float 1000
fix optional boolean false (по умолчанию)

Ответ 200

{
  "minamount": 100.4,
  "maxamount": 121334,
  "rate": 0.9835947505534923,
  "withdrawalFee": "0.002 BTC",
  "fix": false,
  "result": true
}

withdrawalFee — ориентировочная комиссия за вывод, плавает.

GET /validate-address — Валидация адреса

Проверяет, что адрес подходит для валюты получения.

https://exwell.io/v1/api/validate-address?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN&currency=USDT&address=0x651bf10b18d1ecaf7753cfe2457ac1aa23de540b

Параметры

Параметр Тип Пример
currency string USDT
address string 0x651bf10b18d1ecaf7753cfe2457ac1aa23de540b

Ответ 200

{
  "result": true
}

GET /exchange-create — Создание обмена

Создаёт заявку. Все поля — в query (GET).

https://exwell.io/v1/api/exchange-create?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN&from=XMR&to=BTC&amount=26.4509&fix=false&destinationAddress=33NWPY7z4vHzMnuyzRJg6hUvMXDw5Y7v9o&refundAddress=87mEgetMnPSMMKsAFRRf7UMKLSdzdke99Rk63PYZv5hYeUmx29gEd9PKbwiQ7ZsYv7AJMKZ3515E

Параметры

Параметр Тип Пример
from string XMR
to string BTC
amount float 26.4509
fix boolean false
destinationAddress string 33NWPY7z4vHzMnuyzRJg6hUvMXDw5Y7v9o
destinationTag optional string
refundAddress optional string 87mEgetMnPSMMKsAFRRf7UMKLSdzdke99Rk63PYZv5hYeUmx29gEd9PKbwiQ7ZsYv7AJMKZ3515E
refundTag optional string

Ответ 200

{
  "id": "43c393b8-1dc6-40e3-ad83-d721bf467ac1",
  "from": "XMR",
  "to": "BTC",
  "expectedAmountFrom": "26.4509",
  "expectedAmountTo": "0.24118351760777",
  "depositAddress": "87mEgetMnPSMMKsAFRRf7UMKLSdzdke99Rk63PYZv5hYeUmx29gEd9PKbwiQ7ZsYv7AJMKZ3515E",
  "depositTag": ""
}

GET /exchange-status — Статус обмена

Текущее состояние заявки. Опрашивайте, пока статус не финальный.

https://exwell.io/v1/api/exchange-status?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN&id=43c393b8-1dc6-40e3-ad83-d721bf467ac1

Параметры

Параметр Тип Пример
id string 43c393b8-1dc6-40e3-ad83-d721bf467ac1

Ответ 200

{
  "status": "deposit_received",
  "from": "XMR",
  "to": "BTC",
  "depositAddress": "87mEgetMnPSMMKsAFRRf7UMKLSdzdke99Rk63PYZv5hYeUmx29gEd9PKbwiQ7ZsYv7AJMKZ3515E",
  "depositTag": "",
  "depositTxId": "",
  "destinationAddress": "33NWPY7z4vHzMnuyzRJg6hUvMXDw5Y7v9o",
  "destinationTag": "",
  "refundAddress": "87mEgetMnPSMMKsAFRRf7UMKLSdzdke99Rk63PYZv5hYeUmx29gEd9PKbwiQ7ZsYv7AJMKZ3515E",
  "refundTag": "",
  "expectedAmountFrom": "26.4509",
  "expectedAmountTo": "0.24118351760777",
  "amountFrom": "26.4509",
  "date": "01.06.2023 10:24:30",
  "txId": null,
  "amountTo": null,
  "result": true
}

Статусы:
waiting_deposit — ожидание депозита
deposit_received — депозит получен
exchanging — обмен
sending — отправка
success — готово
time_expired — время ожидания депозита вышло
failed — ошибка
sending_failed — ошибка отправки
reverted — средства возвращены клиенту

Курсы в формате XML

Фид курсов всех открытых пар. Не путать с JSON /rate (одна пара и сумма). Ответ application/xml: корень <rates>, элементы <item>.

v1 и v2 отдают одни и те же данные. Отличие — имена тегов минимума и максимума (лимиты по валюте from):

v1 v2
URL https://exwell.io/v1/api/rate.xml https://api.exwell.io/partner/v2/rate.xml
минимум <minamount> <frommin>
максимум <maxamount> <frommax>

Остальные теги одинаковые: from, to, in, out, amount, param. Префикс сайта /v1/api на v2 не мапится.

Порядок

  1. Подставить key в URL фида
  2. Периодически забирать XML

GET /rate.xml — Курсы XML v1

Публичный URI — тот же префикс /v1/api.

https://exwell.io/v1/api/rate.xml?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN

Дополнительных параметров нет.

Ответ 200 application/xml

<rates>
  <item>
    <from>BTC</from>
    <to>USDTTRC20</to>
    <in>1</in>
    <out>68420.15</out>
    <minamount>0.001</minamount>
    <maxamount>5</maxamount>
    <amount>150000</amount>
    <param>floating</param>
  </item>
</rates>
Тег Тип Смысл
from string валюта отправки
to string валюта получения
in int входной коэффициент, всегда 1
out string курс: сколько to за in единиц from
minamount string минимум по from
maxamount string максимум по from
amount string резерв
param string всегда floating

GET /partner/v2/rate.xml — Курсы XML v2

Те же пары и значения, что у v1. Лимиты — теги frommin / frommax. Префикс сайта /v1/api сюда не мапится — вызывайте хост API.

https://api.exwell.io/partner/v2/rate.xml?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN

Дополнительных параметров нет.

Ответ 200 application/xml

<rates>
  <item>
    <from>BTC</from>
    <to>USDTTRC20</to>
    <in>1</in>
    <out>68420.15</out>
    <frommin>0.001</frommin>
    <frommax>5</frommax>
    <amount>150000</amount>
    <param>floating</param>
  </item>
</rates>
Тег Тип Смысл
from string валюта отправки
to string валюта получения
in int входной коэффициент, всегда 1
out string курс: сколько to за in единиц from
frommin string минимум по from (в v1 — minamount)
frommax string максимум по from (в v1 — maxamount)
amount string резерв
param string всегда floating

Кошелёк

Адреса кабинета (main и test) и USDT-баланс внутри ресурса кошелька. Аренда TRX Energy списывается с этого баланса, не on-chain с адреса клиента. Тестовая сеть TRON — Nile (в ответе TESTNET).

Порядок, если нужна энергия

  1. GET /wallet — адреса MAINNET и TESTNET
  2. Депозит USDT TRC20 на адрес нужной сети
  3. GET /wallet/balance — хватает ли USDT
  4. Дальше — раздел TRX Energy

GET /wallet — Кошельки main и test

Адреса партнёра: MAINNET и TESTNET (Nile).

https://exwell.io/v1/api/wallet?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN

Дополнительных параметров нет.

Ответ 200

[
  {
    "address": "TExWKszFWYTKZH8LYiovAPKzS3L9MLZ4kw",
    "type": "MAIN",
    "blockchain": "TRON",
    "network": "MAINNET"
  },
  {
    "address": "TYsbVzAGJrDvDm8LxngY1uBYxHzpQKWzRv",
    "type": "MAIN",
    "blockchain": "TRON",
    "network": "TESTNET"
  }
]

GET /wallet/balance — Баланс

Доступный баланс внутри ресурса. address — свой, из GET /wallet.

https://exwell.io/v1/api/wallet/balance?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN&address=TExWKszFWYTKZH8LYiovAPKzS3L9MLZ4kw&asset=USDT

Параметры

Параметр Тип Пример
address string свой TRON-адрес
asset optional string USDT (по умолчанию)

Ответ 200

{
  "balance": 12.50,
  "asset": "USDT"
}

Ошибки: 404 — чужой адрес.

GET /wallet/transaction — Транзакции кошелька

Депозиты и списания. При аренде энергии сначала HOLD, затем SUCCESS.

https://exwell.io/v1/api/wallet/transaction?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN&address=TExWKszFWYTKZH8LYiovAPKzS3L9MLZ4kw&pageNumber=0&pageSize=10

Параметры

Параметр Тип Пример
address string свой TRON-адрес
pageNumber optional int 0
pageSize optional int 10

Ответ 200

{
  "content": [
    {
      "serviceType": "TRX_ENERGY",
      "amount": -0.86,
      "createdAt": "2026-08-26T12:00:00",
      "asset": "USDT",
      "status": "SUCCESS"
    }
  ],
  "totalElements": 1,
  "totalPages": 1,
  "number": 0,
  "size": 10
}

serviceType: DEPOSIT, TRX_ENERGY. status: HOLD, SUCCESS.

Ошибки: 404 — чужой адрес.

TRX Energy

Аренда энергии TRON. Списание с USDT-баланса кабинета. Query network=TESTNET — Nile; MAINNET или без network — основная сеть (оценка, аренда, список и статус заказа). Nile-заказ ищите с network=TESTNET.

Порядок вызовов

  1. /wallet/trx-energy/info — лимиты
  2. /wallet/trx-energy/energy-required — цена; address = получатель энергии
  3. POST /wallet/trx-energy — заказ, сразу PROCESS
  4. GET /wallet/trx-energy/{orderId} — поллинг PROCESSSUCCESS / ERROR

GET /wallet/trx-energy/info — Лимиты аренды

Периоды и min/max energy. Баланса здесь нет — смотрите /balance.

https://exwell.io/v1/api/wallet/trx-energy/info?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN

Дополнительных параметров нет.

Ответ 200

{
  "periods": ["H1", "D1", "D3", "D30"],
  "minEnergy": 10000,
  "maxEnergy": 1000000
}

Поле periods — справочно. В теле аренды period нет.

GET /wallet/trx-energy/energy-required — Оценка

Цена аренды. address — адрес получателя энергии (не обязан быть кошельком партнёра). Без energyAmount система считает потребность этого адреса сама. Без network — MAINNET.

https://exwell.io/v1/api/wallet/trx-energy/energy-required?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN&address=TExWKszFWYTKZH8LYiovAPKzS3L9MLZ4kw&energyAmount=65000&network=MAINNET

Параметры

Параметр Тип Пример
address string TRON-адрес получателя
energyAmount optional int 65000
network optional string MAINNET или TESTNET

Ответ 200

{
  "recipientAddress": "TExWKszFWYTKZH8LYiovAPKzS3L9MLZ4kw",
  "energyRequired": 65000,
  "price": 0.86,
  "priceSymbol": "USDT"
}

price — к списанию, уже с наценкой.

Ошибки: 409 — битый адрес или объём вне лимитов.

POST /wallet/trx-energy — Аренда

Создаёт заказ. Ответ сразу со статусом PROCESS — дальше поллинг по id в той же сети (без network статус ищется в MAINNET).

https://exwell.io/v1/api/wallet/trx-energy?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN&network=MAINNET

Body application/json

{
  "recipients": [
    {
      "address": "TExWKszFWYTKZH8LYiovAPKzS3L9MLZ4kw",
      "energy": 65000
    }
  ]
}

Параметры

Параметр Тип Пример
network optional string MAINNET или TESTNET
recipients body object[] [{"address":"TAddr...","energy":65000}]

Ответ 200

[
  {
    "id": 48,
    "recipientAddress": "TExWKszFWYTKZH8LYiovAPKzS3L9MLZ4kw",
    "rentEnergy": 65000.0,
    "sellingPrice": 0.86,
    "sellingPriceSymbol": "USDT",
    "status": "PROCESS",
    "createdAt": "2026-08-26T12:00:00"
  }
]

Ошибки: 409 — мало баланса; объём вне лимитов (info); битый адрес; больше 10 получателей.

GET /wallet/trx-energy/{orderId} — Статус ордера

Поллинг одного заказа. Без network или MAINNET — основная сеть; Nile — network=TESTNET.

https://exwell.io/v1/api/wallet/trx-energy/48?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN

Параметры

Параметр Тип Пример
orderId path int 48
network optional string MAINNET или TESTNET

Ответ 200

{
  "id": 48,
  "recipientAddress": "TExWKszFWYTKZH8LYiovAPKzS3L9MLZ4kw",
  "rentEnergy": 65000.0,
  "sellingPrice": 0.86,
  "sellingPriceSymbol": "USDT",
  "status": "SUCCESS",
  "createdAt": "2026-08-26T12:00:00"
}

Статусы: PROCESS — делегируется, SUCCESS — энергия на адресе, ERROR — не получилось.

Ошибки: 404 или 409Order not found.

GET /wallet/trx-energy — Список ордеров

История аренды. Тот же путь, что у POST — метод GET. network=TESTNET — Nile; без network или MAINNET — основная сеть.

https://exwell.io/v1/api/wallet/trx-energy?key=Kq8WmP2nXrT5vLcYhB7jFdZuAs4gE9oN&pageNumber=0&pageSize=10&network=MAINNET

Параметры

Параметр Тип Пример
pageNumber optional int 0
pageSize optional int 10
network optional string MAINNET или TESTNET

Ответ 200

{
  "content": [
    {
      "id": 48,
      "recipientAddress": "TExWKszFWYTKZH8LYiovAPKzS3L9MLZ4kw",
      "rentEnergy": 65000.0,
      "sellingPrice": 0.86,
      "sellingPriceSymbol": "USDT",
      "status": "SUCCESS",
      "createdAt": "2026-08-26T12:00:00"
    }
  ],
  "totalElements": 1,
  "totalPages": 1,
  "number": 0,
  "size": 10
}

Если возникнут вопросы по интеграции, мы с радостью ответим.

© 2022-2026 exwell.io