Wallet Foreign API
Foreign API — это сторона кошелька, которую вызывают другие участники. Отправитель публикует слейт (slate) на этот эндпоинт и получает обратно частично подписанный слейт, инвойс плательщика возвращается финализированным, а майнинговый узел запрашивает у него сборку выхода (output) coinbase, который зачисляет средства в этот кошелёк.
- Эндпоинт:
http://127.0.0.1:3415/v2/foreign, запускается с помощьюepic-wallet listen - Протокол: JSON-RPC 2.0 поверх HTTP POST
- Учётные данные: отсутствуют
- Привязка по умолчанию:
api_listen_interface—127.0.0.1,api_listen_port— 3415 (config/src/types.rs:71)
Учётные данные здесь невозможны, поскольку контрагент, завершающий перевод, — незнакомец, которому должен быть открыт доступ к поверхности. Привязка по умолчанию — loopback, поэтому контрагенту, обращающемуся к этому кошельку по HTTP, необходимо расширить интерфейс или установить перед ним обратный прокси; ограничить доступ можно только на уровне того, что стоит перед кошельком. Приём через epicbox релей не требует открытого входящего порта вообще.
Те же шесть методов обслуживаются из owner listener, когда owner_api_include_foreign равно true (controller/src/controller.rs:151).
- Endpoint
http://127.0.0.1:3415/v2/foreign- Credential
- None. This is what a counterparty pays you through
- Methods here
- 6
- Documented against
- node 4.0.3, wallet 4.0.0
check_version
Read onlyReport the Foreign API and supported slate versions.
- Surface
/v2/foreignon port 3415- Parameters
- none
- Declared in
- api/src/foreign_rpc.rs:65
This method takes no parameters.
{
"jsonrpc": "2.0",
"id": 1,
"method": "check_version",
"params": []
}N/Abuild_coinbase
Changes stateBuild a coinbase output and kernel for a candidate block.
- Surface
/v2/foreignon port 3415- Parameters
- 1 positional
- Declared in
- api/src/foreign_rpc.rs:116
{
"jsonrpc": "2.0",
"id": 1,
"method": "build_coinbase",
"params": [
{
"fees": 0,
"height": 1,
"key_id": null
}
]
}N/Abuild_foundation
Changes stateBuild the foundation output and kernel for a candidate block.
- Surface
/v2/foreignon port 3415- Parameters
- 1 positional
- Declared in
- api/src/foreign_rpc.rs:119
{
"jsonrpc": "2.0",
"id": 1,
"method": "build_foundation",
"params": [
{
"fees": 0,
"height": 1,
"key_id": null
}
]
}N/Averify_slate_messages
Read onlyVerify message signatures attached to a slate.
- Surface
/v2/foreignon port 3415- Parameters
- 1 positional
- Declared in
- api/src/foreign_rpc.rs:201
{
"jsonrpc": "2.0",
"id": 1,
"method": "verify_slate_messages",
"params": [
{}
]
}N/Areceive_tx
Changes stateAdd the listener wallet output and signature to an incoming slate.
- Surface
/v2/foreignon port 3415- Parameters
- 4 positional
- Declared in
- api/src/foreign_rpc.rs:359
{
"jsonrpc": "2.0",
"id": 1,
"method": "receive_tx",
"params": [
{},
null,
null,
null
]
}N/Afinalize_invoice_tx
Changes stateFinalize an invoice slate after the payer has funded it.
- Surface
/v2/foreignon port 3415- Parameters
- 1 positional
- Declared in
- api/src/foreign_rpc.rs:532
{
"jsonrpc": "2.0",
"id": 1,
"method": "finalize_invoice_tx",
"params": [
{}
]
}N/AИсточник
api/src/foreign_rpc.rs:65определяет шесть методовcontroller/src/controller.rs:209— автономный слушательlibwallet/src/api_impl/foreign.rs— реализация, лежащая в их основе