TL; DR; -- Документация находится здесь: https://github.com/Paymium/Paytunia-API-v1-documentation
Я получил кучу интересных вопросов от кого-то хочет потреблять API Bitcoin-Central.net/Paytunia.com и думал, что это может быть полезно поделиться публично.
Если вам посчастливилось иметь вопросы по API, не стесняйтесь спросить или прокомментировать здесь.
Paytunia и Bitcoin-Central в основном две разные передние концы с тем же приложением, они обслуживаются одним и тем же кодом, и они сидят на одной и той же базе данных. Основное отличие заключается в пользовательском интерфейсе. Кроме того, некоторые API вызовы, и особенно тех из них, связанные с торговлей доступны только при использовании URI, на основе Bitcoin-Central.
Может показаться, вид с ума от внешней точки зрения, но есть хорошая причина, она была установлена таким образом. Причина заключается в том, что просто мы пытались получить Paytunia iPhone приложение одобрено некоторое время назад, и для того, чтобы получить его одобрил, мы чувствовали, что мы не должны упоминать любую торговлю вообще на приложение или на веб-сайте Paytunia вообще.
Вот почему Paytunia в значительной степени имеет только функциональность кошелька Bitcoin-Central.
Короче говоря: использование https://bitcoin-central.net как основа для всех * * вашего API вызовов.
Если вы хотите, чтобы французские локализованы человеческие струны использовать https://fr.bitcoin-central.net, (Вы можете также использовать https://en.bitcoin-central.net но английский язык по-умолчанию это на самом деле не имеет смысла).
котировка
В настоящее время я пытаюсь добавить платформу к моей программе, но я затрудняюсь прочитать вам инструкцию API. Говорят, что я должен использовать API из paytunia.com и есть путь для конкретных запросов данных. Я предполагаю, что один путь может быть https://paytunia.com/order_book. Но когда я ввести этот адрес в браузере, я не получаю объект JSON.
Что вы испытываете по заказу клиентов совершенно нормально, с RESTful API вы запрашиваете ресурс, и если вы не сказать серверу, какой формат должен быть использован для ответа по умолчанию будет использоваться в HTML. Если вы хотите, ресурс возвращается в JSON необходимо указать сервер. Для этого у вас есть два варианта: либо добавить .json extenstion в конце URL-адреса (при использовании браузера, например), или добавить заголовок HTTP "Accept: приложения / JSON", Это объясняется в "Обязательные заголовки HTTP" часть документации.котировка
Я хочу, чтобы добавить свою торговую платформу для моего бота. Говорят, что я должен дать идентификатор учетной записи и пароль в качестве параметров для аутентификации, но имена, что параметры не указаны.
Что касается подлинности вызовов, не существует каких-либо конкретных полей вы должны пройти в теле вашего запроса, на самом деле механизм аутентификации является стандартом HTTP Basic аутентификации (см: http://en.wikipedia.org/wiki/Basic_access_authentication). Учетные данные передаются в заголовке. Любой приличный HTTP библиотека доступа будет иметь эта функциональность уже встроены. Проверьте вашу библиотеку, если таковой имеется, в противном случае просто добавьте заголовок, как описано на странице Википедии. Например, если вы используете Curl просто передать «пользователя: пароль» -u вместе с командой.котировка
Когда я хочу, чтобы удалить заказ, я должен поставить код заказа в URL. Когда я хочу, чтобы разместить заказ, я должен послать строку JSON. Почему, почему вы не просто использовать одно: параметры, URL ИЛИ JSon строки. И если вы спросите меня: отправка JSON строки худший из трех, я думаю, что есть причина, почему никакая другая торговая платформа использует это.
Наш API является RESTful, то есть он основан на URI, HTTP ресурсов и глаголов. Например, с торговым порядком, если вы выдаете запрос GET против порядка URI вы будете данным представление заказа, либо в формате HTML или в формате JSON, в зависимости от того, что вы просите, вы можете также выдавать запросы DELETE против того же URI для отменить. Если вы хотите сделать заказ, вы можете просто POST на URI коллекции порядка (/ счет / trade_orders IIRC) для того, чтобы добавить заказ в коллекцию. Это просто REST парадигма. Много API, работают таким образом. Что касается того, что вы должны представить строку JSON, вы можете также передать параметры в URL следующим образом: POST / счет / trade_orders trade_order [сумма] = 30?&trade_order [валюта] = EUR&... или как размещены данные формы, это на самом деле не имеет значения, он будет получать разобраны таким же образом. Посмотрите здесь для получения дополнительной информации о RESTful веб-сервисов: http://en.wikipedia.org/wiki/Representational_state_transfer#RESTful_web_servicesкотировка
Говорят, что Преуспевающий вызов возвращает HTTP 200 или 201, но это не говорит, который возвращается, когда !?
Всякий раз, когда ресурс будет создаваться (проводка порядка торговли, создание денежных переводов и т.д.), вы получите 201. Для всех других успешных ответов вы получите 200.котировка
я пытаюсь https://paytunia.com/ticker?currency=LRUSD чтобы увидеть, если это является подходящей URL для получения ответов. Я получаю HTTP 500
Да, это ошибка в документации, вы должны запросить /ticker.json (с дополнительным параметром валюты). Вы получаете сообщение об ошибке, потому что вы неявно запрашиваете HTML, но нет конкретного HTML представления линеечки. (Мы исправим в документации)котировка
Внутри строки JSON есть "ппц", Означает ли это, что цена за монету? Почему бы вам не определить такие имена?
Да, мы должны определить их лучше. Но я думаю, на примере это довольно прозрачно, не так ли?котировка
Существует возможность дать тип заказа, в данном примере это лимитный ордер. Какие другие типы есть и как они работают?
Вы можете также разместить заказы рынка. Рыночные ордера, как лимитных ордеров, за исключением они не имеют предельную цену и будет выполнять в любой доступной рыночной цене. Посмотрите на форме создания торгового заказа, вы найдете ссылку на объяснение в глубине.котировка
Coincidally я увидел, что есть possibilty активировать заказ, который был размещен с unsufficent средств. Если есть такая возможность, почему не существует никакого объяснения, как это работает?
Это потому, что я хочу, чтобы удалить эту функцию и упростить логику вокруг выполнения торгового заказа. Сейчас, как это работает, что вы не можете сделать заказ, если у вас нет достаточно средств (BTC или валюту), чтобы почтить его полностью, если вы размещаете свой заказ, а затем вывести валюту или BTC, ведущую к состоянию, когда вам «повторно не в состоянии выполнить заказ полностью он получает инактивированный. Если затем добавить средства порядок остается неактивным, если это было не так, пользователи могут прийти к точке, где у них есть старые невыполненные заказы, которые внезапно выполнить, когда они добавляют средства, по ценам, которые не соответствуют с двигающейся ценой Bitcoins.котировка
Могу ли я разместить заказ и удалить ее немедленно, когда у меня нет достаточно средств?
Нет, в настоящее время, если у вас нет достаточно средств, система не позволит Вам разместить заказ.Эта логика должна быть изменена, потому что это не очень интуитивным и простым.