1. Введение
Приложение dm-cli - интерфейс командной строки для доступа к функциям модуля сделок (dm) сервиса обработки bitcoin платежей BitDeals. Приложение должно предоставлять доступ к основной функциональности dm через командную строку.
Ресурсы:
-
Исходный код модуля сделок: https://git.bitdeals.org/private/apostol-dm/.
-
Docker образ модуля сделок:
docker pull registry.bitdeals.org/apostol-dm -
Документация API модуля сделок: https://git.bitdeals.org/private/apostol-dm/src/branch/master/doc/REST-API-ru.md
-
Веб интерфейс модуля сделок: https://testnet-dm2.bitdeals.org/dm/.
-
Доступные пользователи bitdeals для работы с учётными данными и сделками при выполнении ТЗ:
mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp(продавец);mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC(покупатель);mynFyJJkRhsbB6y1Q5kTgDGckVz2m9NKH8(пользователь модуля сделок).
2. Общие требования
-
В режиме работы
--debugприложение должно дополнительно выводить данные API запросов и ответов. -
Значение параметра
--addressприложения должно принимать IP адрес и порт, или URL путь, напримерhttps://testnet-dm2.bitdeals.org/dm/.
3. Функции dm-cli
3.1. Документация по использованию
-
Приложение должно выводить справку по использованию приложения по ключу
-hили--help -
Если переменная в значении:
LANG=ru_RU.UTF-8, то справка должна быть на русском языке.Пример сообщения 'dm-cli --help':На английском:
Usage: dm-cli [global] <group> [<args>] Global options: --debug print debug information, input and output API requests --address <ip:port> address of the bitdeals dm, default: 127.0.0.1:4999 --help print condensed help for all subcommands --version print version string dm-cli account status <bitcoin_address> Show account data details dm-cli account update [options] Update your account data dm-cli deal create Create a new deal dm-cli deal status Show deal data details dm-cli deal complete Complete deal dm-cli deal cancel Cancel deal dm-cli deal negative Leave negative feedbackНа русском:
Использование: dm-cli [глобальные параметры] <группа> [<аргументы>] Глобальные параметры: --debug выводить отладочную информацию, входные и выходные API-запросы --address <ip:port> адрес модуля сделок (dm), по умолчанию: 127.0.0.1:4999 --help вывести краткую справку по всем подкомандам --version вывести строку версии dm-cli account status <биткоин адрес> Показать учётные данные аккаунта dm-cli account update [параметры] Изменить учётные данные аккаунта dm-cli deal create Создать новую сделку dm-cli deal status Показать данные сделки dm-cli deal complete Завершить сделку dm-cli deal cancel Отменить сделку dm-cli deal negative Оставить негативный отзыв
3.2. Запрос данных пользователей
-
Запрос должен происходить в соответствии с синтаксисом:
Пример сообщения 'dm-cli account status --help':На английском:
Usage: dm-cli account status [options] <bitcoin_address> Show info about a bitdeals user. -f|--feedbacks [p|n] Show last 1K received feedbacks. Use p or n to filter only positive or negative feedbacks. -i|--info Show user account details. -r|--rating Show user rating information. -s|--status Show user account status (default action).На русском:
Использование: dm-cli account status [параметры] <биткоин адрес> Показать информацию о пользователе bitdeals. -f|--feedbacks [p|n] Показать последнюю 1 тыс. полученных отзывов. Используй p или n для фильтрации только позитивных или негативных отзывов. -i|--info Показать данные учётной записи. -r|--rating Показать данные рейтинга. -s|--status Показать статус пользователя (действие по умолчанию). -
Примеры входных и выходных данных.
-
Запрос статуса (
--status) пользователяmnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp:curl "https://testnet-dm.bitdeals.org/api/v1/account/status?address=mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp"Пример ответа:{ "id": "c381f540d48c1d34", "action": "Status", "address": "mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp", "result": { "success": true, "message": "Open" }, "payload": "PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+CiAgICA8bWV0YSBuYW1lPSJhdXRob3IiIGNvbnRlbnQ9IkJpdERlYWxzIFBheW1lbnQgU2VydmljZSI+CjwvaGVhZD4KPGJvZHk+CjxwcmU+SGVsbG8sIDxiPm1udW1IczlIUU1ydzJRMWlLTE5ueDlOekV4UzduTUxteXA8L2I+IQoKWW91ciBhY2NvdW50IHN0YXR1czogPGI+T3BlbjwvYj4KCi0tLS0tIEJJVENPSU4gUFVCTElDIEtFWSAtLS0tLQoKPGI+MDI0ZjIyNmNkMzdhYjdlNzY4ZGU3YjY4OTQ2ZDY2MWQwNjdlZjFkNThhMTgzMjU0MjI1YTRmOTFmNmFlODkxOGVlPC9iPgoKLS0tLS0gUEdQIFBVQkxJQyBLRVkgLS0tLS0KCjxiPnB1YiAgMTAyNFIvNDlkZmNjYjk3YjkwNzRjNiAyMDI1LTA4LTA0Cgp1aWQgQWNjb3VudF9VUkwgKGh0dHBzOi8vZXhhbXBsZS0zMjA4OTI4MTIzLmNvbSkKc2lnICBzaWcgICA0OWRmY2NiOTdiOTA3NGM2IDIwMjUtMDgtMDQgICAgICAgICAgICAgICAgICAgIAoKc3ViICAxMDI0Ui80MDYwZjlkNDdkMzgyZGUyIDIwMjUtMDgtMDQKc2lnIHNiaW5kICA0OWRmY2NiOTdiOTA3NGM2IDIwMjUtMDgtMDQgICAgICAgICAgICAgICAgICAgIAo8L2I+Ci0tLS0tIEFDQ09VTlQgVVJMIExJU1QgLS0tLS0KCjxhIGhyZWY9Imh0dHBzOi8vZXhhbXBsZS0zMjA4OTI4MTIzLmNvbSI+aHR0cHM6Ly9leGFtcGxlLTMyMDg5MjgxMjMuY29tPC9hPgoKLS0tLS0gVFJVU1RFRCBVUkwgTElTVCAtLS0tLQoKPGEgaHJlZj0iaHR0cDovLzE3MC43NS4xNzMuNzA6NDk5OSI+aHR0cDovLzE3MC43NS4xNzMuNzA6NDk5OTwvYT4KPGEgaHJlZj0iaHR0cHM6Ly9wbGFjYXJkLnpyLWNvZGUuY29tIj5odHRwczovL3BsYWNhcmQuenItY29kZS5jb208L2E+CjxhIGhyZWY9Imh0dHBzOi8vdGVzdG5ldC5iaXRkZWFscy5vcmciPmh0dHBzOi8vdGVzdG5ldC5iaXRkZWFscy5vcmc8L2E+CjxhIGhyZWY9Imh0dHA6Ly9wbGFjYXJkLnpyLWNvZGUuY29tIj5odHRwOi8vcGxhY2FyZC56ci1jb2RlLmNvbTwvYT4KPGEgaHJlZj0iaHR0cDovL3Rlc3RuZXQtZG0uYml0ZGVhbHMub3JnIj5odHRwOi8vdGVzdG5ldC1kbS5iaXRkZWFscy5vcmc8L2E+CjxhIGhyZWY9Imh0dHBzOi8vdGVzdG5ldC1kbTIuYml0ZGVhbHMub3JnIj5odHRwczovL3Rlc3RuZXQtZG0yLmJpdGRlYWxzLm9yZzwvYT4KPGEgaHJlZj0iaHR0cDovL3Rlc3RuZXQtZG0yLmJpdGRlYWxzLm9yZyI+aHR0cDovL3Rlc3RuZXQtZG0yLmJpdGRlYWxzLm9yZzwvYT4KPGEgaHJlZj0iaHR0cDovL2xvY2FsaG9zdDo0OTk5Ij5odHRwOi8vbG9jYWxob3N0OjQ5OTk8L2E+CjxhIGhyZWY9Imh0dHA6Ly90ZXN0bmV0LmJpdGRlYWxzLm9yZyI+aHR0cDovL3Rlc3RuZXQuYml0ZGVhbHMub3JnPC9hPgo8YSBocmVmPSJodHRwOi8vcGxhY2FyZC5iaXRkZWFscy5vcmciPmh0dHA6Ly9wbGFjYXJkLmJpdGRlYWxzLm9yZzwvYT4KPGEgaHJlZj0iaHR0cHM6Ly9wbGFjYXJkLmJpdGRlYWxzLm9yZyI+aHR0cHM6Ly9wbGFjYXJkLmJpdGRlYWxzLm9yZzwvYT4KPGEgaHJlZj0iaHR0cHM6Ly90ZXN0bmV0LWRtLmJpdGRlYWxzLm9yZyI+aHR0cHM6Ly90ZXN0bmV0LWRtLmJpdGRlYWxzLm9yZzwvYT4KPGEgaHJlZj0iaHR0cHM6Ly90ZXN0bmV0Mi5iaXRkZWFscy5vcmciPmh0dHBzOi8vdGVzdG5ldDIuYml0ZGVhbHMub3JnPC9hPgo8YSBocmVmPSJodHRwOi8vdGVzdG5ldDIuYml0ZGVhbHMub3JnIj5odHRwOi8vdGVzdG5ldDIuYml0ZGVhbHMub3JnPC9hPgo8YSBocmVmPSJodHRwczovL3BsYWNhcmQyLmJpdGRlYWxzLm9yZyI+aHR0cHM6Ly9wbGFjYXJkMi5iaXRkZWFscy5vcmc8L2E+CjxhIGhyZWY9Imh0dHA6Ly9wbGFjYXJkMi5iaXRkZWFscy5vcmciPmh0dHA6Ly9wbGFjYXJkMi5iaXRkZWFscy5vcmc8L2E+CjxhIGhyZWY9Imh0dHBzOi8vZXhhbXBsZS0zMjA4OTI4MTIzLmNvbSI+aHR0cHM6Ly9leGFtcGxlLTMyMDg5MjgxMjMuY29tPC9hPgoKCi0tLS0tClRoYW5rIHlvdSwKQml0RGVhbHMuPC9wcmU+CjwvYm9keT4KPC9odG1sPgo=" } -
Запрос информации (
--info) о пользователеmraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC:curl -X POST "https://testnet-dm2.bitdeals.org/api/v1/user/profile" \ -H "Content-Type: application/json" -d '{"code":"mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC"}'Пример ответа:{ "id": "65380112-e797-4041-8254-0c8878ea36e2", "userid": "fdbde2fe-d7c4-42d4-a6fd-39c58a17afac", "created": "2023-03-15T17:03:32.192766+03:00", "code": "mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC", "address": "mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC", "bitmessages": [ "BM-2cWUG4jmW9CwKtNYv6nrJFTiNL4f8Ys8Dd" ], "module": "mynFyJJkRhsbB6y1Q5kTgDGckVz2m9NKH8", "btckey": "02128188a04564583a8540bcd584116d7de1d04dbbcc79c8fd5d45e6a1a65c7031", "pgpkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmI0EaByQKQEEAMfwUb7ErrEBDLkjYNwxFvzqdekC3+gR/GpyKOz55kNX/Cwm6ohS\nkNJGVlTR73pXSrQV0c14Dwzgf+HCBFamx1toOCW72GytX71aom2uXHLy8JOzc7bk\naQ+wLti0ghx+cdwvgRuJV5co2tlTxh87iariasP3Dgas4wtRrNvDcQNNABEBAAG0\nJEFjY291bnRfVVJMIChodHRwOi8vcmFuZG9tLXNpdGUuY29tKYjOBBMBCgA4FiEE\nnvbbPXqkDv91aLC/44t8noXtKDgFAmgckCkCGwMFCwkIBwMFFQoJCAsFFgIDAQAC\nHgECF4AACgkQ44t8noXtKDhovwP/eSVEE4234FPSAbI04DFSwt+TtwTqlFHV4O0d\nIzoGHNrQDB/jROugZtRsYR5mQtKbRuSSZTxZZikoJAufG3GBaq4JbDVsYQWRYl/G\ncxmOlS3u+qzjLCDKnn7VDDer+Ewbj2Cc4feH4eJe5vk7TOlXRAfPjV+Mm1gxTVUg\ncw44f624jQRoHJApAQQAu1u/UED5BYEblglb399KDyWHWRPSgM7yQvQHSUxUG4y9\nvzyDC303Hj238RI3AsYRF61EoriHlwAibf2d5LXwPpQrBuKyAzOPus3AIsVPqerK\naQB9poEpdHFr6qhDBumm1uHDKeFMhMcObI0Spz1Y5vUfJq5bMV3KGoYcxlac5bEA\nEQEAAYi2BBgBCgAgFiEEnvbbPXqkDv91aLC/44t8noXtKDgFAmgckCkCGwwACgkQ\n44t8noXtKDj1uwP+IS11c2N2dGLzpTHdujN1NVrvPxGur3lAxIidG57fGwK76RYm\nCrXws6SHORphBUw8nYzE1k9ZTOaZ4c/cNYYpDv6sxYqbFcco5WB1BnGUqtXUj4eK\n8vtje+VeZ+DOPmjUIEd3lMcTJo9sUXzLUxwiFIk89IGXSieOJ5QL+8M/M38=\n=4NLS\n-----END PGP PUBLIC KEY BLOCK-----", "urlaccount": [ "https://testnet.bitdeals.org", "http://random-site.com" ], "urltrusted": [ "https://testnet.bitdeals.org", "http://170.75.173.70:4999", "https://placard.zr-code.com", "http://testnet-dm.bitdeals.org:4999", "http://placard.zr-code.com", "http://testnet-dm.bitdeals.org", "https://testnet-dm2.bitdeals.org", "http://testnet-dm2.bitdeals.org", "http://testnet.bitdeals.org", "https://testnet-dm.bitdeals.org", "https://placard.bitdeals.org", "http://placard.bitdeals.org", "http://testnet2.bitdeals.org", "https://testnet2.bitdeals.org", "http://placard2.bitdeals.org", "https://placard2.bitdeals.org", "http://random-site.com" ], "seller": { "count": 11, "positive": 5 }, "customer": { "count": 604, "positive": 36 }, "state": "2565936d-6798-4035-b30d-9b1d388f40a6", "statecode": "enabled", "statelabel": "Open" } -
Запрос списка отзывов (
--feedbacks) пользователяmraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC:curl -X POST "https://testnet-dm2.bitdeals.org/api/v1/deal/feedback/list" \ -H "Content-Type: application/json" \ -d '{"search":[{"field":"sellercode","compare":"EQL","value":"mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC"}],"orderby":["date DESC"],"reclimit":1000,"recoffset":0}'Пример ответа:[ { "deal": "d63350a1-8483-4c0f-87d2-8a4920f7bdba", "date": "2025-09-17T11:40:11", "sum": 0.002, "seller": "65380112-e797-4041-8254-0c8878ea36e2", "sellercode": "mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC", "customer": "65380112-e797-4041-8254-0c8878ea36e2", "customercode": "mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC", "leave_before": "2025-09-17T13:00:00", "status": null, "statustext": "none", "comments": "cancel deal test comment message 3", "refund": null }, { "deal": "7e82e9c3-0e85-4635-8b53-6da7e541e6e3", "date": "2025-09-17T11:29:35", "sum": 0.002, "seller": "65380112-e797-4041-8254-0c8878ea36e2", "sellercode": "mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC", "customer": "65380112-e797-4041-8254-0c8878ea36e2", "customercode": "mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC", "leave_before": "2025-09-17T12:50:01", "status": -1, "statustext": "negative", "comments": "negative comment text for test", "refund": null }, { "deal": "3f989f08-b5a0-4ceb-80a5-acd18a6559d4", "date": "2025-09-17T11:28:28", "sum": 0.002, "seller": "65380112-e797-4041-8254-0c8878ea36e2", "sellercode": "mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC", "customer": "65380112-e797-4041-8254-0c8878ea36e2", "customercode": "mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC", "leave_before": "2025-09-17T12:50:01", "status": 0, "statustext": "neutral", "comments": null, "refund": "50" } ]
-
-
Примеры вывода команд
dm-cli account:dm-cli account status mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp:Hello, mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp! Your account status: Open ----- BITCOIN PUBLIC KEY ----- 024f226cd37ab7e768de7b68946d661d067ef1d58a183254225a4f91f6ae8918ee ----- PGP PUBLIC KEY ----- pub 1024R/49dfccb97b9074c6 2025-08-04 uid Account_URL (https://example-3208928123.com) sig sig 49dfccb97b9074c6 2025-08-04 sub 1024R/4060f9d47d382de2 2025-08-04 sig sbind 49dfccb97b9074c6 2025-08-04 ----- ACCOUNT URL LIST ----- https://example-3208928123.com ----- TRUSTED URL LIST ----- http://170.75.173.70:4999 https://placard.zr-code.com https://testnet.bitdeals.org http://placard.zr-code.com http://testnet-dm.bitdeals.org https://testnet-dm2.bitdeals.org http://testnet-dm2.bitdeals.org http://localhost:4999 http://testnet.bitdeals.org http://placard.bitdeals.org https://placard.bitdeals.org https://testnet-dm.bitdeals.org https://testnet2.bitdeals.org http://testnet2.bitdeals.org https://placard2.bitdeals.org http://placard2.bitdeals.org https://example-3208928123.com ----- Thank you, BitDeals.dm-cli account --info mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC:bitcoin: mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC btckey: 02128188a04564583a8540bcd584116d7de1d04dbbcc79c8fd5d45e6a1a65c7031 bitmessage: BM-2cWUG4jmW9CwKtNYv6nrJFTiNL4f8Ys8Dd pgpkey: | -----BEGIN PGP PUBLIC KEY BLOCK----- mI0EaByQKQEEAMfwUb7ErrEBDLkjYNwxFvzqdekC3+gR/GpyKOz55kNX/Cwm6ohS kNJGVlTR73pXSrQV0c14Dwzgf+HCBFamx1toOCW72GytX71aom2uXHLy8JOzc7bk aQ+wLti0ghx+cdwvgRuJV5co2tlTxh87iariasP3Dgas4wtRrNvDcQNNABEBAAG0 JEFjY291bnRfVVJMIChodHRwOi8vcmFuZG9tLXNpdGUuY29tKYjOBBMBCgA4FiEE nvbbPXqkDv91aLC/44t8noXtKDgFAmgckCkCGwMFCwkIBwMFFQoJCAsFFgIDAQAC HgECF4AACgkQ44t8noXtKDhovwP/eSVEE4234FPSAbI04DFSwt+TtwTqlFHV4O0d IzoGHNrQDB/jROugZtRsYR5mQtKbRuSSZTxZZikoJAufG3GBaq4JbDVsYQWRYl/G cxmOlS3u+qzjLCDKnn7VDDer+Ewbj2Cc4feH4eJe5vk7TOlXRAfPjV+Mm1gxTVUg cw44f624jQRoHJApAQQAu1u/UED5BYEblglb399KDyWHWRPSgM7yQvQHSUxUG4y9 vzyDC303Hj238RI3AsYRF61EoriHlwAibf2d5LXwPpQrBuKyAzOPus3AIsVPqerK aQB9poEpdHFr6qhDBumm1uHDKeFMhMcObI0Spz1Y5vUfJq5bMV3KGoYcxlac5bEA EQEAAYi2BBgBCgAgFiEEnvbbPXqkDv91aLC/44t8noXtKDgFAmgckCkCGwwACgkQ 44t8noXtKDj1uwP+IS11c2N2dGLzpTHdujN1NVrvPxGur3lAxIidG57fGwK76RYm CrXws6SHORphBUw8nYzE1k9ZTOaZ4c/cNYYpDv6sxYqbFcco5WB1BnGUqtXUj4eK 8vtje+VeZ+DOPmjUIEd3lMcTJo9sUXzLUxwiFIk89IGXSieOJ5QL+8M/M38= =4NLS -----END PGP PUBLIC KEY BLOCK-----dm-cli account --feedbacks p mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp:- deal: ff5f337f-e0ab-4515-857f-3a0c8530dcd3 date: '2025-10-05T15:29:23' statustext: positive comments: positive comment about the deal - deal: b7657c83-1502-4a33-8d35-4317a8d5e086 date: '2025-09-17T10:44:50' statustext: positive comments: null - deal: 1a79222f-401c-4a73-8f3f-3f0184db3fbb date: '2025-08-04T10:42:36' statustext: positive comments: null - deal: ecc50f4c-4477-4eee-84b7-f8b2ba3755a3 date: '2025-08-04T08:42:46' statustext: positive comments: null - deal: aa7ff721-8b15-42f4-8de0-a79bdf47fd55 date: '2025-08-01T08:46:16' statustext: positive comments: null - deal: 34010ce2-6775-474d-8316-3bbcea736d8e date: '2025-08-01T08:14:23' statustext: positive comments: nulldm-cli account --rating mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC:created: 2023-03-15 seller: count: 11 positive: 5 customer: count: 604 positive: 36
3.3. Изменение учётных данных пользователя
-
Запрос должен происходить в соответствии с синтаксисом:
Пример сообщения 'dm-cli account update --help':На английском:
Usage: dm-cli account update [options] <bitcoin_address> Update user account data. To change the account data you should sign the current date and new user data with your bitcoin private key. For example, current date, new bitmessage, signature: 2020-01-01 BM-2cUuxYUFWLCrtpKRMdHCpU1QKEuFtHh7vu IEF1ysyhu8ps0m5xSJaZZg/5hBylmcWQQggkGO7yNN8iMf/EA2O287kxi58xCDDtxvdsC0TWqylVE5MT5CouamU= -d|--date <yyyy-mm-dd> Current date. -s|--signature <sig> Bitcoin signature. -p|--pgp <pgp> Set up an armored RSA pgp key. -u|--url [+/-]<url> Add/remove an url to trusted list. -b|--bitmessage Change bitmessage address.На русском:
Использование: dm-cli account update [параметры] <биткоин адрес> Изменить учётные данные пользователя. Для изменения учётных данных вы должны подписать текущую дату и новые данные пользователя вашим приватным биткоин ключом. Например, текущая дата, новый битмессадж, подпись: 2020-01-01 BM-2cUuxYUFWLCrtpKRMdHCpU1QKEuFtHh7vu IEF1ysyhu8ps0m5xSJaZZg/5hBylmcWQQggkGO7yNN8iMf/EA2O287kxi58xCDDtxvdsC0TWqylVE5MT5CouamU= -d|--date <yyyy-mm-dd> Текущая дата. -s|--signature <sig> Биткоин подпись. -p|--pgp <pgp> Установить armored RSA pgp ключ. -u|--url [+/-]<url> Добавить/удалить url в trusted список. -b|--bitmessage Изменить битмессадж адрес. -
Примеры входных и выходных данных.
-
Добавлиение url в trusted список пользователя
mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp:curl -X POST "https://testnet-dm2.bitdeals.org/api/v1/client/update" \ -H "Content-Type: application/json" \ -d '{"address":"mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp","date":"2025-10-21","url":["https://testnet-dm2.bitdeals.org"],"sign":"IAGHICUSCxUrcWTMSL9j94vRufb9l5nBckahT+RznlHMPx9LTPpDHsozxVyxkpjtgrhC8eCyJKNaOw8U/v56pL0="}'Пример ответа:{"id": "2838be66674f610b06746deb3654a641cf25cc73cb", "action": "Update", "address": "mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp", "result": {"success": true, "message": "Account updated"}, "payload": "PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+CiAgICA8bWV0YSBuYW1lPSJhdXRob3IiIGNvbnRlbnQ9IkJpdERlYWxzIFBheW1lbnQgU2VydmljZSI+CjwvaGVhZD4KPGJvZHk+CjxwcmU+SGVsbG8sIDxiPm1udW1IczlIUU1ydzJRMWlLTE5ueDlOekV4UzduTUxteXA8L2I+IQoKPGZvbnQgY29sb3I9IiMxNDVBMzIiPjxiPkFjY291bnQgdXBkYXRlZDwvYj48L2ZvbnQ+CgpBY3Rpb246IDxiPlVwZGF0ZTwvYj4KCkluIG1lc3NhZ2UgYm9keSBmb3VuZDoKClRoZSBzaWduYXR1cmUgaXMgPGZvbnQgY29sb3I9IiMxNDVBMzIiPjxiPnZhbGlkLjwvYj48L2ZvbnQ+CgpWZXJpZmljYXRpb24gZGF0ZTogPGI+WWVzPC9iPgpCaXRjb2luIHB1YmxpYyBrZXk6IDxiPk5vPC9iPgpQR1AgcHVibGljIGtleTogPGI+Tm88L2I+ClRydXN0ZWQgVVJMIGNvdW50OiA8Yj4xPC9iPgoKLS0tLS0KVGhhbmsgeW91LApCaXREZWFscy48L3ByZT4KPC9ib2R5Pgo8L2h0bWw+Cg=="}
-
-
Пример вывода команды
dm-cli account update:dm-cli account update -d 2025-10-21 -s "IAGH…pL0=" -u "https://testnet-dm2.bitdeals.org" mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp:success: true message: Account updated -
Команда должна производить изменение данных пользователя:
-
PGP ключа
-
Списка Trusted URL
-
Bitmessage адреса
-
3.4. Создание сделки
-
Запрос должен происходить в соответствии с синтаксисом:
Пример сообщения 'dm-cli deal create --help':На английском:
Usage: dm-cli deal create [options] Create a new deal [smhd] means seconds, minutes, hours, days. For example: --leave-before 2020-01-01, or --leave-before 10d. -a|--at Deal site -s|--seller Seller user in deal -c|--customer Customer user in deal -t|--type [prepayment|postpayment] Deal type -s|--sum Deal sum in BTC -l|--leave-before { <yyyy-mm-dd> [hh:mm:ss UTC] | <time>[smhd] } Deal end date (deal duration); default: 14d -p|--pay { <yyyy-mm-dd> [hh:mm:ss UTC] | <time>[smhd] } Time for make payment; default: 1dНа русском:
Использование: dm-cli deal create [параметры] Создать новую сделку [smhd] означает секунды, минуты, часы, дни. Например: --leave-before 2020-01-01, or --leave-before 10d. -a|--at Сайт проведения сделки -s|--seller Продавец в сделке -c|--customer Покупатель в сделке -t|--type [prepayment|postpayment] Тип сделки -s|--sum Сумма сделки в BTC -l|--leave-before { <гггг-мм-дд> [чч:мм:сс UTC] | <время>[smhd] } Время окончания сделки (длительность сделки), по умолчанию: 14d -p|--pay { <гггг-мм-дд> [чч:мм:сс UTC] | <время>[smhd] } Время для оплаты сделки; по умолчанию: 1d -
Примеры входных и выходных данных.
-
Запрос создания сделки:
curl -X POST "https://testnet-dm2.bitdeals.org/api/v1/deal/create" \ -H "Content-Type: application/json" \ -d '{"at":"https://testnet-dm2.bitdeals.org","type":"Prepayment","seller":{"address": "mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp"},"customer":{"address":"mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC"},"payment":{"sum":"0.01000000"}}'Пример ответа:{"id": "f38bfeeb1ddac852", "action": "Created", "address": "mynFyJJkRhsbB6y1Q5kTgDGckVz2m9NKH8", "deal": {"order": "Created", "type": "Prepayment", "code": "ae6d226b2fe5ce009f252e65fcf66fd079729ac8", "at": "https://testnet-dm2.bitdeals.org", "date": "2025-10-21 09:08:12 UTC", "salt": "343c82c2", "seller": {"address": "mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp", "rating": "0+, 32%"}, "customer": {"address": "mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC", "rating": "0+, 45%"}, "payment": {"address": "2N7gRqGakSZaowyqSHSULaPzp7Fy2KKUQQ7", "until": "2025-10-22 09:08:12 UTC", "sum": "0.01 tBTC"}, "feedback": {"leave_before": "2025-11-04 09:08:12 UTC"}}, "result": {"success": true, "message": "New deal created"}, "payload": "LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQpIYXNoOiBTSEE1MTIKCmRlYWw6CiAgb3JkZXI6IENyZWF0ZQogIHR5cGU6IFByZXBheW1lbnQKICBhdDogaHR0cHM6Ly90ZXN0bmV0LWRtMi5iaXRkZWFscy5vcmcKICBkYXRlOiAyMDI1LTEwLTIxIDA5OjA4OjEyIFVUQwogIHNhbHQ6IDM0M2M4MmMyCiAgc2VsbGVyOgogICAgYWRkcmVzczogbW51bUhzOUhRTXJ3MlExaUtMTm54OU56RXhTN25NTG15cAogICAgcmF0aW5nOiAwKywgMzIlCiAgY3VzdG9tZXI6CiAgICBhZGRyZXNzOiBtcmFYeDdKcm1BbXVLeXBkSjF2c2VRQlh5U3NkUlpFNUFDCiAgICByYXRpbmc6IDArLCA0NSUKICBwYXltZW50OgogICAgYWRkcmVzczogMk43Z1JxR2FrU1phb3d5cVNIU1VMYVB6cDdGeTJLS1VRUTcKICAgIHVudGlsOiAyMDI1LTEwLTIyIDA5OjA4OjEyIFVUQwogICAgc3VtOiAwLjAxIHRCVEMKICBmZWVkYmFjazoKICAgIGxlYXZlLWJlZm9yZTogMjAyNS0xMS0wNCAwOTowODoxMiBVVEMKLS0tLS1CRUdJTiBQR1AgU0lHTkFUVVJFLS0tLS0KVmVyc2lvbjogY2MKCndwd0VBUUVLQUFZRkFtajNUWUFBQ2drUURqa3UwOE9pdDFJR1NnUCtMQWR4aUYrNkpISFpDWHJaNlFHdHhZdTQKeGdGeXJub3FmQ3pxaU0xVlF1MDhsbERtUnZ1aFRMTDBQTUxxUGdXUUYvRTBKckt0T0d1YmRVYlBCaWpKbm04eApiVWJjczRaOEtIcjZOOERhRXdnOU9MQVNYbnpVRGVzMGhCUDJsNEViK1JwWmFRdjhUMUFUeW1aVEt3bjNtbTI5CjZoL0hLQnVHS0hXY1U2MG5nQ2c9Cj1kUXdGCi0tLS0tRU5EIFBHUCBTSUdOQVRVUkUtLS0tLQ=="}
-
-
Пример вывода команды
dm-cli deal create:Пример вывода команды 'dm-cli deals create -t prepayment -s mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp -c mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC -s 0.01:-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 deal: order: Confirmed type: Prepayment at: https://testnet-dm2.bitdeals.org date: 2025-10-21 09:08:12 UTC salt: 343c82c2 seller: address: mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp rating: 600+, 32% customer: address: mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC rating: 600+, 36% payment: address: 2N7gRqGakSZaowyqSHSULaPzp7Fy2KKUQQ7 until: 2025-10-22 09:08:12 UTC sum: 0.01 tBTC feedback: leave-before: 2025-11-04 09:08:12 UTC status: None -----BEGIN PGP SIGNATURE----- Version: cc wpwEAQEKAAYFAmj3UBgACgkQDjku08Oit1JLogQA0PofMslTfBrNCKFfdlAgj/8A 03lXiHPRd36PVzaa8lK6tHmdfs0EFrp28InXLswfksXD/0Hj9SBKrDQz1qxwqXqZ rGC1RiXqRpHxl++3/lx3AguPPX5QydjDEwKSA3lL2pnsnnqe2edqUttJzunz9LYy mhdbFlS1jaFzO0w25Ww= =1TmH -----END PGP SIGNATURE----- -
Команда должна создавать сделку с учётом указанных параметров:
-
Место (сайт) проведения сделки [
deal.at]; -
Стороны сделки [
seller,customer]; -
Тип сделки [
Prepayment,Postpayment]; -
Сумма сделки в BTC [
payment.sum]; -
Длительность сделки [
feedback.leave-before]; -
Время для оплаты сделки [
payment.until];
-
3.5. Статус сделки
-
Запрос должен происходить в соответствии с синтаксисом:
Пример сообщения 'dm-cli deal status --help':На английском:
Usage: dm-cli deal status { <bitcoin_address>|<deal_code> } Show a deal data details To show a deal details use a bitcoin payment address or a deal code. -i|--is-paid Check a deal is Paid. Returns an exit code 0 if deal is Paid, or non-zero otherwise.На русском:
Использование: dm-cli deal status { <биткоин адрес>|<код сделки> } Показать детали сделки Чтобы показать детали сделки используйте адрес оплаты сделки или код сделки. -i|--is-paid Проверить является ли сделка оплаченной. Возвращает exit code 0 если сделка является оплаченной, или не ноль в других случаях. -
Примеры входных и выходных данных.
-
Запрос статуса сделки:
curl -X POST "https://testnet-dm2.bitdeals.org/api/v1/deal/status" \ -H "Content-Type: application/json" \ -d '{"address":"3e251d8fdcfa80adf5a3050064fc4ecb01d304d1"}'Пример ответа:{"id": "207022ea5d39ebb2", "action": "Status", "deal": {"order": "Confirmed", "type": "Prepayment", "code": "3e251d8fdcfa80adf5a3050064fc4ecb01d304d1", "at": "https://testnet-dm2.bitdeals.org", "date": "2025-10-21 09:02:11 UTC", "salt": "fd986961", "seller": {"address": "mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp", "rating": "0+, 32%"}, "customer": {"address": "mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC", "rating": "0+, 36%"}, "payment": {"address": "2NCBgmt37qw97ujZFjgmPEWuoYweR4BWT9g", "until": "2025-10-22 09:02:11 UTC", "sum": "0.01 tBTC"}, "feedback": {"leave_before": "2025-11-04 09:02:11 UTC"}}, "result": {"success": true, "message": "Deal status"}, "payload": "LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQpIYXNoOiBTSEE1MTIKCmRlYWw6CiAgb3JkZXI6IENvbmZpcm1lZAogIHR5cGU6IFByZXBheW1lbnQKICBhdDogaHR0cHM6Ly90ZXN0bmV0LWRtMi5iaXRkZWFscy5vcmcKICBkYXRlOiAyMDI1LTEwLTIxIDA5OjAyOjExIFVUQwogIHNhbHQ6IGZkOTg2OTYxCiAgc2VsbGVyOgogICAgYWRkcmVzczogbW51bUhzOUhRTXJ3MlExaUtMTm54OU56RXhTN25NTG15cAogICAgcmF0aW5nOiA2MDArLCAzMiUKICBjdXN0b21lcjoKICAgIGFkZHJlc3M6IG1yYVh4N0pybUFtdUt5cGRKMXZzZVFCWHlTc2RSWkU1QUMKICAgIHJhdGluZzogNjAwKywgMzYlCiAgcGF5bWVudDoKICAgIGFkZHJlc3M6IDJOQ0JnbXQzN3F3OTd1alpGamdtUEVXdW9Zd2VSNEJXVDlnCiAgICB1bnRpbDogMjAyNS0xMC0yMiAwOTowMjoxMSBVVEMKICAgIHN1bTogMC4wMSB0QlRDCiAgZmVlZGJhY2s6CiAgICBsZWF2ZS1iZWZvcmU6IDIwMjUtMTEtMDQgMDk6MDI6MTEgVVRDCiAgICBzdGF0dXM6IE5vbmUKLS0tLS1CRUdJTiBQR1AgU0lHTkFUVVJFLS0tLS0KVmVyc2lvbjogY2MKCndwd0VBUUVLQUFZRkFtajNZc0VBQ2drUURqa3UwOE9pdDFLWHpnUC9jd2YrcXI2NGFnSnFrdDBNd2orTzlhb0EKYXE4QndlQXdjc1B0ZEgzMGlhZGZ0c3RidlpmN3Rsc1ppVUxJbHhaTnBRR0VEdUp4czROcVdHTnhwaFlIQ2ZuMAp1T1VRRkZVeTJubmVEUElGSFJhM2I2TFMzQXd3ZGxkWjI1K1ozUmozOU5rQ3BCeGJEMWxWRGJQNWtoOEtwQlVwClNPMnNLRWZIT2hhOXBieHNvWU09Cj1SSUZOCi0tLS0tRU5EIFBHUCBTSUdOQVRVUkUtLS0tLQ=="}
-
-
Пример вывода команды
dm-cli deal status:Пример вывода команды dm-cli deal status 2N7gRqGakSZaowyqSHSULaPzp7Fy2KKUQQ7:-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 deal: order: Create type: Prepayment at: https://testnet-dm2.bitdeals.org date: 2025-10-21 09:08:12 UTC salt: 343c82c2 seller: address: mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp rating: 0+, 32% customer: address: mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC rating: 0+, 45% payment: address: 2N7gRqGakSZaowyqSHSULaPzp7Fy2KKUQQ7 until: 2025-10-22 09:08:12 UTC sum: 0.01 tBTC feedback: leave-before: 2025-11-04 09:08:12 UTC -----BEGIN PGP SIGNATURE----- Version: cc wpwEAQEKAAYFAmj3TYAACgkQDjku08Oit1IGSgP+LAdxiF+6JHHZCXrZ6QGtxYu4 xgFyrnoqfCzqiM1VQu08llDmRvuhTLL0PMLqPgWQF/E0JrKtOGubdUbPBijJnm8x bUbcs4Z8KHr6N8DaEwg9OLASXnzUDes0hBP2l4Eb+RpZaQv8T1ATymZTKwn3mm29 6h/HKBuGKHWcU60ngCg= =dQwF -----END PGP SIGNATURE----- -
Проверка
--is-paidдолжна проверять состояние оплаты сделки на основе полученного текста деталей сделки. Дляorder: Paid,order: Completed,order: Executed- сделка оплачена, соответсвенно, exit code команды должен быть равен 0.
3.6. Завершение сделки
-
Запрос должен происходить в соответствии с синтаксисом:
Пример сообщения 'dm-cli deal complete --help':На английском:
Usage: dm-cli deal complete [options] { <bitcoin_address>|<deal_code> } Complete a deal -p|--positive Complete deal with positive feedback. (default action) -r|--refund <num> Refund % number of a deal sum to the customer. Format: 100.00[%]На русском:
Использование: dm-cli deal complete [параметры] { <биткоин адес>|<код сделки> } Завершить сделку -p|--positive Завершить сделку с позитивным отзывом. (действие по умолчанию) -r|--refund <num> Возврат % от суммы сделки покупателю. Формат: 100.00[%] -
Примеры входных и выходных данных.
-
Запрос завершения сделки:
curl -X POST "https://testnet-dm2.bitdeals.org/api/v1/deal/complete" \ -H "Content-Type: application/json" \ -d '{"order":"Paid","type":"Postpayment","code":"d87cc05dd42bf4fb6cc5d231388a254de94b787a","at":"https://testnet-dm2.bitdeals.org","date":"2025-10-21 11:36:26 UTC","salt":"8f489443","seller":{"address":"mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp","rating":"600+, 32%"},"customer":{"address":"mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC","rating":"600+, 36%"},"payment":{"address":"2Mvh1UozwwUwuFcmeCqQm7UEKAxnV4ANhAS","until":"2025-10-22 11:36:26 UTC","sum":"0.01 tBTC"},"feedback":{"leave_before":"2025-11-04 11:36:26 UTC","status":"Neutral","refund":45}}'Пример ответа:{"id": "f1c94f5a62e005b4", "action": "Complete", "deal": {"order": "Complete", "type": "Postpayment", "code": "d87cc05dd42bf4fb6cc5d231388a254de94b787a", "at": "https://testnet-dm2.bitdeals.org", "date": "2025-10-21 11:36:26 UTC", "salt": "8f489443", "seller": {"address": "mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp", "rating": "0+, 32%"}, "customer": {"address": "mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC", "rating": "0+, 36%"}, "payment": {"address": "2Mvh1UozwwUwuFcmeCqQm7UEKAxnV4ANhAS", "until": "2025-10-22 11:36:26 UTC", "sum": "0.01 tBTC"}, "feedback": {"leave_before": "2025-11-04 11:36:26 UTC", "status": "Neutral"}}, "result": {"success": true, "message": "Completion command accepted"}, "payload": "CgotLS0tLSBSRVBPUlQgLS0tLS0KClBHUCBzaWduYXR1cmU6IDxmb250IGNvbG9yPSIjMTQ1QTMyIj48Yj52YWxpZC4KPC9iPjwvZm9udD5Nb2R1bGU6IG15bkZ5SkprUmhzYkI2eTFRNWtUZ0RHY2tWejJtOU5LSDgKCkZlZTogMSU="}
-
-
Пример вывода команды
dm-cli deal complete:Пример вывода команды dm-cli deal complete -r 45 2Mvh1UozwwUwuFcmeCqQm7UEKAxnV4ANhAS:success: true message: Completion command accepted
3.7. Отмена сделки
-
Запрос должен происходить в соответствии с синтаксисом:
Пример сообщения 'dm-cli deal cancel --help':На английском:
Usage: dm-cli deal cancel [options] <bitcoin_address> Cancel a deal To cancel a deal you should sign the deal payment address and feeback text message with the seller bitcoin private key. For example, address, feedback, signature: 2NEVoXnRgUeb3j17s7pP6DoFHBVHMb94gF5 seller random cancel reason text IEOGJ5q/a2cWJPMosQmCHNN6RsXF8Xy/UgaazIoY2i5udbw/v38g1/PdWs451dvFr9Iq/Bq5YL2YdpUFTuijQ60= -m|--message <text> Deal cancel reason text message -s|--signature <sig> Bitcoin signature.На русском:
Использование: dm-cli deal cancel [параметры] <биткоин адрес> Отменить сделку Для отмены сделки вы должны подписать адрес оплаты сделки и текст отзыва биткоин ключом продавца. Например, адрес, отзыв, подпись: 2NEVoXnRgUeb3j17s7pP6DoFHBVHMb94gF5 seller random cancel reason text IEOGJ5q/a2cWJPMosQmCHNN6RsXF8Xy/UgaazIoY2i5udbw/v38g1/PdWs451dvFr9Iq/Bq5YL2YdpUFTuijQ60= -m|--message <text> Текст сообщения с причино отмены сделки -s|--signature <sig> Биткоин подпись. -
Примеры входных и выходных данных.
-
Запрос завершения сделки:
curl --location 'https://testnet-dm2.bitdeals.org/api/v1/deal/cancel' \ --form 'type="Postpayment"' \ --form 'at="https://testnet-dm2.bitdeals.org"' \ --form 'date="2025-10-21 11:59:41 UTC"' \ --form 'salt="98b00a5e"' \ --form 'seller_address="mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp"' \ --form 'seller_rating="600+, 32%"' \ --form 'seller_signature="IERJW29usD99pIkyJktK7z24fxdWncr9GoN/bBvfeHELDNj2aMSOC0JzNqQbnnsT3ETA9mEB9gj5YF+AD4ACuwE="' \ --form 'customer_address="mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC"' \ --form 'customer_rating="600+, 36%"' \ --form 'payment_address="2Mt7UW5RqXUaEN7Y93jo67ZgixcLNPDgvvk"' \ --form 'payment_until="2025-10-22 11:59:41 UTC"' \ --form 'payment_sum="0.01 tBTC"' \ --form 'feedback_leave_before="2025-11-04 11:59:41 UTC"' \ --form 'feedback_status="None"' \ --form 'feedback_comments="Cancellation comments"'Пример ответа:{"id": "3f1b2d6409bfa4bd", "action": "Cancelled", "address": "mynFyJJkRhsbB6y1Q5kTgDGckVz2m9NKH8", "deal": {"order": "Cancelled", "type": "Postpayment", "code": "6e7fa8bdd6f406bf3f5d253b67730523ea62b03f", "at": "https://placard.bitdeals.org", "date": "2024-10-23 10:34:09 UTC", "salt": "6cbf5879", "seller": {"address": "mnumHs9HQMrw2Q1iKLNnx9NzExS7nMLmyp", "rating": "0, 0%"}, "customer": {"address": "mraXx7JrmAmuKypdJ1vseQBXySsdRZE5AC", "rating": "0, 0%"}, "payment": {"address": "2NFgvA4f8ibA5jJ6hca1dX9HvBguNTgP6eR", "until": "2024-10-23 15:34:09 UTC", "sum": "0.00519519 tBTC"}, "feedback": {"leave_before": "2025-07-10 10:34:09 UTC", "status": "Positive", "comments": "random deal cancel message"}}, "result": {"success": true, "message": "Deal cancelled"}, "payload": "CgotLS0tLSBSRVBPUlQgLS0tLS0KClBHUCBzaWduYXR1cmU6IDxmb250IGNvbG9yPSIjMTQ1QTMyIj48Yj52YWxpZC4KPC9iPjwvZm9udD5Nb2R1bGU6IG15bkZ5SkprUmhzYkI2eTFRNWtUZ0RHY2tWejJtOU5LSDgKCkZlZTogMSU="}
-
-
Пример вывода команды
dm-cli deal cancel:Пример вывода команды dm-cli deal cancel -m "Cancellation comments" -s "CgoL…MSU=" 2Mt7UW5RqXUaEN7Y93jo67ZgixcLNPDgvvk:success: true message: Deal cancelled
3.8. Оставление негативного отзыва
-
Запрос должен происходить в соответствии с синтаксисом:
Пример сообщения 'dm-cli deal negative --help':На английском:
Usage: dm-cli deal negative [options] <bitcoin_address> Leave a negative feedback To leave a negative feedback you should sign the deal payment address and feeback text message with the customer bitcoin private key. For example, address, feedback, signature: 2NEVoXnRgUeb3j17s7pP6DoFHBVHMb94gF5 customer random feedback text H1u44C5cyEeKjHqnNnn09B8mIRMdqgR8PD9AeF8mv+cCEqM9HPkcWLrc8a/v2po2YmXJSeya6uy0XaLnmmmO/1o= -m|--message <text> Deal feedback text message -s|--signature <sig> Bitcoin signature.На русском:
Использование: dm-cli deal negative [options] <биткоин адрес> Оставить негативный отзыв Для оставления негативного отзыва ва должны подписать адрес оплаты сделки и текст отзыва биткоин ключом покупателя. Например, адрес, отзыв, подпись: 2NEVoXnRgUeb3j17s7pP6DoFHBVHMb94gF5 customer random feedback text H1u44C5cyEeKjHqnNnn09B8mIRMdqgR8PD9AeF8mv+cCEqM9HPkcWLrc8a/v2po2YmXJSeya6uy0XaLnmmmO/1o= -m|--message <text> Текст сообщения отзыва -s|--signature <sig> Биткоин подпись. -
Примеры входных и выходных данных.
-
Запрос завершения сделки:
Пример ответа:
-
-
Пример вывода команды
dm-cli deal negative:Пример вывода команды dm-cli deal negative: -
В результате исполнения команды, указанная сделка должна получить негативный отзыв (status: Negative).