API

Публичные функции

Список активных ордеров

GET https://indacoin.com/api/orderbook?pair={pair}

Параметры:

  • pair - принимает значения: btc_usd, ltc_usd

Возвращает массив ордеров по {pair}. Каждый ордер является структурой со следующими полями:

  • price - цена ордера
  • amount - количество базовой валюты

Пример: https://indacoin.com/api/orderbook?pair=btc_usd

Список последних сделок

GET https://indacoin.com/api/trades/{pair}/{tid}

Параметры:

  • pair - принимает значения: btc_usd, ltc_usd
  • tid - номер сделки, начиная с которой выгружать список

Возвращает массив сделок по {pair}. Каждая сделка является структурой со следующими полями:

  • tid - номер сделки
  • price - цена сделки
  • amount - количество базовой валюты
  • date - время совершения сделки

Пример: https://indacoin.com/api/trades/btc_usd/23

Рыночная цена

GET https://indacoin.com/api/GetMarketPrice/{operation}/{pair}/{amount}

Параметры:

  • operation - принимает значения: sell, buy
  • pair - принимает значения: btc_usd, ltc_usd
  • amount - сумма в долларах. По-умолчанию: 50

Возвращает рыночную цену

Пример: https://indacoin.com/api/GetMarketPrice/buy/btc_usd/15

Тикер

GET https://indacoin.com/api/ticker

Без параметров.

Возвращает JSON-объект. Поля объекта - валютная пара, например 'BTC_USD'. Каждое поле - обьект, содержащий следующую информацию по валютной паре:

  • last_price - цена последней сделки
  • max_price - максимальная цена сделки за последние 24 часа
  • min_price - минимальная цена сделки за последние 24 часа
  • open_price - цена первой сделки за последние 24 часа
  • today_open_price - цена первой сделки, совершенной сегодня
  • volume_base - объем торгов за последние 24 часа в базовой валюте
  • volume_quote - объем торгов за последние 24 часа в рассчетной валюте

Partnership functions

Simple integration

The most simple integration could be by using the following link, that should include params like btc wallet address, amount, currency (CARDEUR or CARDUSD), your partner name and discount id. Link for example: https://indacoin.com/change?addrOut=1FeGgKxU5gjC562wZXd67VTVfwcSjpqv3Y&amount_pay=100&cur_from=CARDEUR&cur_to=BTC&partner=your_partner_name&discount=1000

Tight integration

Please describe your business, the size of your company and your interest in a co-operation with Indacoin. Get in touch with [email protected] to receive further information.

Logic

The logic is the following

  • Check the limit of the user (it will create one if he doesn't exist yet)
  • Further create transaction
  • Forward him to indacoin URL, the user will pay and passes verification
  • Either will pass or not until the end, you should show him URL for finishing verification
  • On your URL arrives a callback in case of failure or success of transaction

To verify that you have a signature - you need to send in headers 'gw-partner', 'gw-nonce', 'gw-sign'. Header gw-sign is formed as HMAC sha256 from partnerName + "_" + nonce

Singature for URL forms just like API's instead of nonce - transaction's ID and also in Base64 encoding

Example of payment form is https://indacoin.com/gw/payment_form?transaction_id=1154&partner=indacoin&cnfhash=Ny8zcXVWbCs5MVpGRFFXem44NWh5SE9xTitlajkydFpDTXhDOVMrOFdOOD0=

Minimum amounts for now is USD 15

Get price

GET https://indacoin.com/api/GetExchangerAmount/{Currency}/{Amount}/{PartnerName}

- receive amount user will get

Parameters in GET:

  • Currency string (usd, euro),
  • Amount - numeric_string,
  • PartnerName - string,

User limits

POST https://indacoin.com/api/exgw_getUserlimits

- receive user's limit (and create if non-existent)

Parameters in json:

  • user_id - string,
  • cur_in string (usd, eur),

Transactions

POST https://indacoin.com/api/exgw_getTransactions

- receive info about last transactions

Parameters in json:

  • user_id - string,
  • tx_id - string,
  • status - tx_status,
  • created_at - int/timestamp,
  • hash - string (or null),
  • cur_in - string (usd, eur),
  • cur_out - string (btc),
  • amount_in - numeric_string,
  • amount_out - numeric_string,
  • target_address - string,
  • limit - int,
  • offset - int

all parameters are optional

Transaction info

POST https://indacoin.com/api/exgw_gettransactioninfo

- receive transaction's info

Parameters in json:

  • transaction_id - numeric

Create transaction

POST https://indacoin.com/api/exgw_createTransaction

- create new transaction

Parameters in json:

  • user_id -string,
  • cur_in -string(eur,usd),
  • cur_out - string (btc),
  • target_address - string,
  • amount_in -decimal

Авторизация

Для успешного выполнения приватных запросов их необходимо снабжать дополнительными заголовками (headers):

  • API-Key
  • API-Sign
  • API-Nonce

Все параметры передаются в application/json формате.

API-Key

Специальный ключ, который вы можете получить в личном кабинете.

API-Sign

Подпись текста: method + nonce + API-key, созданная с помощью алгоритма ECDSA с хэш функцией sha-1, выданным приватным ключом на кривой sec256k1.

API-Nonce

nonce, стандартное криптографическое одноразовое увеличивающееся число (между запросами).

Приватные функции

getbalance

POST https://indacoin.com/api/getbalance

Без параметров.

Возвращает JSON-массив балансов не лежащих на ордерах.

openorders

POST https://indacoin.com/api/openorders

Без параметров.

Возвращает JSON-список отложенных ордеров. Каждый ордер содержит:

  • 1 - уникальный идентификатор ордера
  • 2 - пара, в которой создан ордер
  • 3 - тип ордера: на покупку или продажу
  • 4 - цена ордера
  • 5 - сумма, получаемая/потраченная во второй валюте пары
  • 6 - сумма, потраченная/получаемая в первой валюте пары
  • 7 - время создания ордера
  • 8 - комиссия во второй валюте ордера

gethistory

POST https://indacoin.com/api/gethistory

Параметры:

  • limit - количество записей истории, не обязательный. По-умолчанию: 100
  • offset - на сколько позиций сдвинуться от начала списка.
    По-умолчанию: 0

Возвращает массив записей истории, которые отсортированы в убывающем порядке по дате. Каждая запись представляет собой массив. В зависимости от нулевого элемента массива формируется оставшаяся часть записи.

Если он равен 'buy' или 'sell', то оставшиеся элементы характеризуют сделку покупки/продажи:

  • 1 - пара, в которой была совершена сделка: 'btc_usd' или 'ltc_usd'
  • 2 - цена, по которой была совершена сделка
  • 3 - количество базовой валюты
  • 4 - количество рассчетной валюты
  • 5 - комиссия по сделке
  • 6 - время совершения сделки

Если он равен 'in' или 'out', то оставшиеся элементы характеризуют операцию ввода/вывода средств:

  • 1 - номер операции
  • 2 - валюта: 'BTC', 'LTC' или 'USD'
  • 3 - количество валюты
  • 4 - время выполнения операции

buyorder

POST https://indacoin.com/api/buyorder

Параметры:

  • pair - принимает значения: btc_usd, ltc_usd
  • price - цена, по которой будет выставлен ордер
  • amount - количество криптовалюты, которое необходимо купить

Пример: {pair:'BTC_USD',price:'597.0100',amount:'0.02428171'}

Возвращает JSON-объект:

  • i - идентификатор ордера (нужен для последующего подтверждения сделки)
  • s - сумма во второй валюте, которая была потрачена на выполнение более выгодных ордеров
  • a - сумма в первой валюте, которая была получена при выполнении более выгодных ордеров
  • p - пара ордера
  • ot - тип ордера

Пример: {"i":173409,"s":0.00,"a":0.00000000,"p":"BTC_USD","ot":"BUY"}

sellorder

POST https://indacoin.com/api/sellorder

Параметры:

  • pair - принимает значения: btc_usd, ltc_usd
  • price - цена, по которой будет выставлен ордер
  • amount - количество криптовалюты, которое необходимо продать

Пример: {pair:'BTC_USD',price:'591.5584',amount:'0.03675761'}

Возвращает JSON-объект:

  • i - идентификатор ордера (нужен для последующего подтверждения сделки)
  • s - сумма во второй валюте, которая была потрачена на выполнение более выгодных ордеров
  • a - сумма в первой валюте, которая была получена при выполнении более выгодных ордеров
  • p - пара ордера
  • ot - тип ордера

Пример: {"i":173456,"s":0.00,"a":0.00000000,"p":"BTC_USD","ot":"SELL"}

cancelorder

POST https://indacoin.com/api/cancelorder

Параметры:

  • i - идентификатор отложенного ордера

Пример запроса: {i:'200389'}

Возвращает строку:

  • success - в случае успешного выполнения сделки
  • failed - в случае ошибки (просроченная или несуществующая сделка)