bark-rest-client 0.1.2

A simple REST API for barkd, a wallet daemon for integrating bitcoin payments into your app over HTTP. Supports self-custodial Lightning, Ark, and on-chain out of the box. barkd is a long-running daemon best suited for always-on or high-connectivity environments like nodes, servers, desktops, and point-of-sale terminals. All endpoints return JSON. Amounts are denominated in satoshis.
# Rust API client for bark-rest-client

A simple REST API for barkd, a wallet daemon for integrating bitcoin payments into your app over HTTP. Supports self-custodial Lightning, Ark, and on-chain out of the box.

barkd is a long-running daemon best suited for always-on or high-connectivity environments like nodes, servers, desktops, and point-of-sale terminals.

All endpoints return JSON. Amounts are denominated in satoshis.


## Overview

This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project.  By using the [openapi-spec](https://openapis.org) from a remote server, you can easily generate an API client.

- API version: 0.1.2
- Package version: 0.1.2
- Generator version: 7.17.0
- Build package: `org.openapitools.codegen.languages.RustClientCodegen`

## Installation

Put the package under your project folder in a directory named `bark-rest-client` and add the following to `Cargo.toml` under `[dependencies]`:

```
bark-rest-client = { path = "./bark-rest-client" }
```

## Documentation for API Endpoints

All URIs are relative to *http://localhost*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*BitcoinApi* | [**tip**]docs/BitcoinApi.md#tip | **GET** /api/v1/bitcoin/tip | Get bitcoin tip height
*BoardsApi* | [**board_all**]docs/BoardsApi.md#board_all | **POST** /api/v1/boards/board-all | Board all on-chain bitcoin
*BoardsApi* | [**board_amount**]docs/BoardsApi.md#board_amount | **POST** /api/v1/boards/board-amount | Board a specific amount
*BoardsApi* | [**get_pending_boards**]docs/BoardsApi.md#get_pending_boards | **GET** /api/v1/boards/pending | List pending boards
*DefaultApi* | [**ping**]docs/DefaultApi.md#ping | **GET** /ping | Ping
*ExitsApi* | [**exit_claim_all**]docs/ExitsApi.md#exit_claim_all | **POST** /api/v1/exits/claim/all | Claim all exited VTXOs
*ExitsApi* | [**exit_claim_vtxos**]docs/ExitsApi.md#exit_claim_vtxos | **POST** /api/v1/exits/claim/vtxos | Claim specific exited VTXOs
*ExitsApi* | [**exit_progress**]docs/ExitsApi.md#exit_progress | **POST** /api/v1/exits/progress | Progress exits
*ExitsApi* | [**exit_start_all**]docs/ExitsApi.md#exit_start_all | **POST** /api/v1/exits/start/all | Start exit for all VTXOs
*ExitsApi* | [**exit_start_vtxos**]docs/ExitsApi.md#exit_start_vtxos | **POST** /api/v1/exits/start/vtxos | Start exit for specific VTXOs
*ExitsApi* | [**get_all_exit_status**]docs/ExitsApi.md#get_all_exit_status | **GET** /api/v1/exits/status | List all exit statuses
*ExitsApi* | [**get_exit_status_by_vtxo_id**]docs/ExitsApi.md#get_exit_status_by_vtxo_id | **GET** /api/v1/exits/status/{vtxo_id} | Get exit status
*FeesApi* | [**board_fee**]docs/FeesApi.md#board_fee | **GET** /api/v1/fees/board | Estimate board fee
*FeesApi* | [**lightning_receive_fee**]docs/FeesApi.md#lightning_receive_fee | **GET** /api/v1/fees/lightning/receive | Estimate Lightning receive fee
*FeesApi* | [**lightning_send_fee**]docs/FeesApi.md#lightning_send_fee | **GET** /api/v1/fees/lightning/pay | Estimate Lightning send fee
*FeesApi* | [**offboard_all_fee**]docs/FeesApi.md#offboard_all_fee | **GET** /api/v1/fees/offboard-all | Estimate offboard-all fee
*FeesApi* | [**onchain_fee_rates**]docs/FeesApi.md#onchain_fee_rates | **GET** /api/v1/fees/onchain | Get on-chain fee rates
*FeesApi* | [**send_onchain_fee**]docs/FeesApi.md#send_onchain_fee | **GET** /api/v1/fees/send-onchain | Estimate send-onchain fee
*LightningApi* | [**generate_invoice**]docs/LightningApi.md#generate_invoice | **POST** /api/v1/lightning/receives/invoice | Create a BOLT11 invoice
*LightningApi* | [**get_receive_status**]docs/LightningApi.md#get_receive_status | **GET** /api/v1/lightning/receives/{identifier} | Get receive status
*LightningApi* | [**list_receive_statuses**]docs/LightningApi.md#list_receive_statuses | **GET** /api/v1/lightning/receives | List all pending receive statuses
*LightningApi* | [**pay**]docs/LightningApi.md#pay | **POST** /api/v1/lightning/pay | Send a Lightning payment
*OnchainApi* | [**onchain_address**]docs/OnchainApi.md#onchain_address | **POST** /api/v1/onchain/addresses/next | Generate on-chain address
*OnchainApi* | [**onchain_balance**]docs/OnchainApi.md#onchain_balance | **GET** /api/v1/onchain/balance | Get on-chain balance
*OnchainApi* | [**onchain_drain**]docs/OnchainApi.md#onchain_drain | **POST** /api/v1/onchain/drain | Drain on-chain wallet
*OnchainApi* | [**onchain_send**]docs/OnchainApi.md#onchain_send | **POST** /api/v1/onchain/send | Send on-chain payment
*OnchainApi* | [**onchain_send_many**]docs/OnchainApi.md#onchain_send_many | **POST** /api/v1/onchain/send-many | Send to multiple addresses
*OnchainApi* | [**onchain_sync**]docs/OnchainApi.md#onchain_sync | **POST** /api/v1/onchain/sync | Sync on-chain wallet
*OnchainApi* | [**onchain_transactions**]docs/OnchainApi.md#onchain_transactions | **GET** /api/v1/onchain/transactions | List on-chain transactions
*OnchainApi* | [**onchain_utxos**]docs/OnchainApi.md#onchain_utxos | **GET** /api/v1/onchain/utxos | List on-chain UTXOs
*WalletApi* | [**address**]docs/WalletApi.md#address | **POST** /api/v1/wallet/addresses/next | Generate Ark address
*WalletApi* | [**ark_info**]docs/WalletApi.md#ark_info | **GET** /api/v1/wallet/ark-info | Get Ark server info
*WalletApi* | [**balance**]docs/WalletApi.md#balance | **GET** /api/v1/wallet/balance | Get wallet balance
*WalletApi* | [**connected**]docs/WalletApi.md#connected | **GET** /api/v1/wallet/connected | Check server connection
*WalletApi* | [**create_wallet**]docs/WalletApi.md#create_wallet | **POST** /api/v1/wallet/create | Create a wallet
*WalletApi* | [**get_vtxo**]docs/WalletApi.md#get_vtxo | **GET** /api/v1/wallet/vtxos/{id} | Get VTXO detail
*WalletApi* | [**get_vtxo_encoded**]docs/WalletApi.md#get_vtxo_encoded | **GET** /api/v1/wallet/vtxos/{id}/encoded | Get encoded VTXO
*WalletApi* | [**history**]docs/WalletApi.md#history | **GET** /api/v1/wallet/history | Get wallet history
*WalletApi* | [**import_vtxo**]docs/WalletApi.md#import_vtxo | **POST** /api/v1/wallet/import-vtxo | Import a VTXO
*WalletApi* | [**movements**]docs/WalletApi.md#movements | **GET** /api/v1/wallet/movements | List movements (deprecated)
*WalletApi* | [**next_round**]docs/WalletApi.md#next_round | **GET** /api/v1/wallet/next-round | Get next round time
*WalletApi* | [**offboard_all**]docs/WalletApi.md#offboard_all | **POST** /api/v1/wallet/offboard/all | Offboard all VTXOs
*WalletApi* | [**offboard_vtxos**]docs/WalletApi.md#offboard_vtxos | **POST** /api/v1/wallet/offboard/vtxos | Offboard specific VTXOs
*WalletApi* | [**peek_address**]docs/WalletApi.md#peek_address | **GET** /api/v1/wallet/addresses/index/{index} | Get Ark address by index
*WalletApi* | [**pending_rounds**]docs/WalletApi.md#pending_rounds | **GET** /api/v1/wallet/rounds | List round participations
*WalletApi* | [**refresh_all**]docs/WalletApi.md#refresh_all | **POST** /api/v1/wallet/refresh/all | Refresh all VTXOs
*WalletApi* | [**refresh_counterparty**]docs/WalletApi.md#refresh_counterparty | **POST** /api/v1/wallet/refresh/counterparty | Refresh received VTXOs
*WalletApi* | [**refresh_vtxos**]docs/WalletApi.md#refresh_vtxos | **POST** /api/v1/wallet/refresh/vtxos | Refresh specific VTXOs
*WalletApi* | [**send**]docs/WalletApi.md#send | **POST** /api/v1/wallet/send | Send a payment
*WalletApi* | [**send_onchain**]docs/WalletApi.md#send_onchain | **POST** /api/v1/wallet/send-onchain | Send on-chain from Ark balance
*WalletApi* | [**sync**]docs/WalletApi.md#sync | **POST** /api/v1/wallet/sync | Sync wallet
*WalletApi* | [**vtxos**]docs/WalletApi.md#vtxos | **GET** /api/v1/wallet/vtxos | List VTXOs
*WalletApi* | [**wallet_delete**]docs/WalletApi.md#wallet_delete | **DELETE** /api/v1/wallet | 
*WalletApi* | [**wallet_exists**]docs/WalletApi.md#wallet_exists | **GET** /api/v1/wallet | 


## Documentation For Models

 - [Address]docs/Address.md
 - [ArkAddressResponse]docs/ArkAddressResponse.md
 - [ArkInfo]docs/ArkInfo.md
 - [BadRequestError]docs/BadRequestError.md
 - [Balance]docs/Balance.md
 - [BarkNetwork]docs/BarkNetwork.md
 - [BitcoindAuth]docs/BitcoindAuth.md
 - [BitcoindAuthOneOf]docs/BitcoindAuthOneOf.md
 - [BitcoindAuthOneOf1]docs/BitcoindAuthOneOf1.md
 - [BitcoindAuthOneOf1UserPass]docs/BitcoindAuthOneOf1UserPass.md
 - [BitcoindAuthOneOfCookie]docs/BitcoindAuthOneOfCookie.md
 - [BlockRef]docs/BlockRef.md
 - [BoardFees]docs/BoardFees.md
 - [BoardRequest]docs/BoardRequest.md
 - [ChainSourceConfig]docs/ChainSourceConfig.md
 - [ChainSourceConfigOneOf]docs/ChainSourceConfigOneOf.md
 - [ChainSourceConfigOneOf1]docs/ChainSourceConfigOneOf1.md
 - [ChainSourceConfigOneOf1Esplora]docs/ChainSourceConfigOneOf1Esplora.md
 - [ChainSourceConfigOneOfBitcoind]docs/ChainSourceConfigOneOfBitcoind.md
 - [ChildTransactionInfo]docs/ChildTransactionInfo.md
 - [ConnectedResponse]docs/ConnectedResponse.md
 - [CreateWalletRequest]docs/CreateWalletRequest.md
 - [CreateWalletResponse]docs/CreateWalletResponse.md
 - [EncodedVtxoResponse]docs/EncodedVtxoResponse.md
 - [ExitAwaitingDeltaState]docs/ExitAwaitingDeltaState.md
 - [ExitClaimAllRequest]docs/ExitClaimAllRequest.md
 - [ExitClaimInProgressState]docs/ExitClaimInProgressState.md
 - [ExitClaimResponse]docs/ExitClaimResponse.md
 - [ExitClaimVtxosRequest]docs/ExitClaimVtxosRequest.md
 - [ExitClaimableState]docs/ExitClaimableState.md
 - [ExitClaimedState]docs/ExitClaimedState.md
 - [ExitError]docs/ExitError.md
 - [ExitErrorOneOf]docs/ExitErrorOneOf.md
 - [ExitErrorOneOf1]docs/ExitErrorOneOf1.md
 - [ExitErrorOneOf10]docs/ExitErrorOneOf10.md
 - [ExitErrorOneOf11]docs/ExitErrorOneOf11.md
 - [ExitErrorOneOf12]docs/ExitErrorOneOf12.md
 - [ExitErrorOneOf13]docs/ExitErrorOneOf13.md
 - [ExitErrorOneOf14]docs/ExitErrorOneOf14.md
 - [ExitErrorOneOf15]docs/ExitErrorOneOf15.md
 - [ExitErrorOneOf16]docs/ExitErrorOneOf16.md
 - [ExitErrorOneOf17]docs/ExitErrorOneOf17.md
 - [ExitErrorOneOf18]docs/ExitErrorOneOf18.md
 - [ExitErrorOneOf19]docs/ExitErrorOneOf19.md
 - [ExitErrorOneOf2]docs/ExitErrorOneOf2.md
 - [ExitErrorOneOf20]docs/ExitErrorOneOf20.md
 - [ExitErrorOneOf21]docs/ExitErrorOneOf21.md
 - [ExitErrorOneOf22]docs/ExitErrorOneOf22.md
 - [ExitErrorOneOf23]docs/ExitErrorOneOf23.md
 - [ExitErrorOneOf24]docs/ExitErrorOneOf24.md
 - [ExitErrorOneOf25]docs/ExitErrorOneOf25.md
 - [ExitErrorOneOf3]docs/ExitErrorOneOf3.md
 - [ExitErrorOneOf4]docs/ExitErrorOneOf4.md
 - [ExitErrorOneOf5]docs/ExitErrorOneOf5.md
 - [ExitErrorOneOf6]docs/ExitErrorOneOf6.md
 - [ExitErrorOneOf7]docs/ExitErrorOneOf7.md
 - [ExitErrorOneOf8]docs/ExitErrorOneOf8.md
 - [ExitErrorOneOf9]docs/ExitErrorOneOf9.md
 - [ExitProcessingState]docs/ExitProcessingState.md
 - [ExitProgressRequest]docs/ExitProgressRequest.md
 - [ExitProgressResponse]docs/ExitProgressResponse.md
 - [ExitProgressStatus]docs/ExitProgressStatus.md
 - [ExitStartRequest]docs/ExitStartRequest.md
 - [ExitStartResponse]docs/ExitStartResponse.md
 - [ExitStartState]docs/ExitStartState.md
 - [ExitState]docs/ExitState.md
 - [ExitStateOneOf]docs/ExitStateOneOf.md
 - [ExitStateOneOf1]docs/ExitStateOneOf1.md
 - [ExitStateOneOf2]docs/ExitStateOneOf2.md
 - [ExitStateOneOf3]docs/ExitStateOneOf3.md
 - [ExitStateOneOf4]docs/ExitStateOneOf4.md
 - [ExitStateOneOf5]docs/ExitStateOneOf5.md
 - [ExitStatusRequest]docs/ExitStatusRequest.md
 - [ExitTransactionPackage]docs/ExitTransactionPackage.md
 - [ExitTransactionStatus]docs/ExitTransactionStatus.md
 - [ExitTx]docs/ExitTx.md
 - [ExitTxOrigin]docs/ExitTxOrigin.md
 - [ExitTxOriginOneOf]docs/ExitTxOriginOneOf.md
 - [ExitTxOriginOneOf1]docs/ExitTxOriginOneOf1.md
 - [ExitTxOriginOneOf2]docs/ExitTxOriginOneOf2.md
 - [ExitTxStatus]docs/ExitTxStatus.md
 - [ExitTxStatusOneOf]docs/ExitTxStatusOneOf.md
 - [ExitTxStatusOneOf1]docs/ExitTxStatusOneOf1.md
 - [ExitTxStatusOneOf2]docs/ExitTxStatusOneOf2.md
 - [ExitTxStatusOneOf3]docs/ExitTxStatusOneOf3.md
 - [ExitTxStatusOneOf4]docs/ExitTxStatusOneOf4.md
 - [ExitTxStatusOneOf5]docs/ExitTxStatusOneOf5.md
 - [ExitTxStatusOneOf6]docs/ExitTxStatusOneOf6.md
 - [FeeEstimateQuery]docs/FeeEstimateQuery.md
 - [FeeEstimateResponse]docs/FeeEstimateResponse.md
 - [FeeSchedule]docs/FeeSchedule.md
 - [ImportVtxoRequest]docs/ImportVtxoRequest.md
 - [InternalServerError]docs/InternalServerError.md
 - [InvoiceInfo]docs/InvoiceInfo.md
 - [LightningInvoiceRequest]docs/LightningInvoiceRequest.md
 - [LightningPayRequest]docs/LightningPayRequest.md
 - [LightningPayResponse]docs/LightningPayResponse.md
 - [LightningReceiveFees]docs/LightningReceiveFees.md
 - [LightningReceiveInfo]docs/LightningReceiveInfo.md
 - [LightningSendFees]docs/LightningSendFees.md
 - [Movement]docs/Movement.md
 - [MovementDestination]docs/MovementDestination.md
 - [MovementStatus]docs/MovementStatus.md
 - [MovementSubsystem]docs/MovementSubsystem.md
 - [MovementTimestamp]docs/MovementTimestamp.md
 - [NextRoundStart]docs/NextRoundStart.md
 - [NotFoundError]docs/NotFoundError.md
 - [OffboardAllFeeEstimateQuery]docs/OffboardAllFeeEstimateQuery.md
 - [OffboardAllRequest]docs/OffboardAllRequest.md
 - [OffboardFees]docs/OffboardFees.md
 - [OffboardResult]docs/OffboardResult.md
 - [OffboardVtxosRequest]docs/OffboardVtxosRequest.md
 - [OnchainBalance]docs/OnchainBalance.md
 - [OnchainDrainRequest]docs/OnchainDrainRequest.md
 - [OnchainFeeRatesResponse]docs/OnchainFeeRatesResponse.md
 - [OnchainSendManyRequest]docs/OnchainSendManyRequest.md
 - [OnchainSendRequest]docs/OnchainSendRequest.md
 - [PaymentMethod]docs/PaymentMethod.md
 - [PendingBoardInfo]docs/PendingBoardInfo.md
 - [PendingRoundInfo]docs/PendingRoundInfo.md
 - [PpmExpiryFeeEntry]docs/PpmExpiryFeeEntry.md
 - [RefreshFees]docs/RefreshFees.md
 - [RefreshRequest]docs/RefreshRequest.md
 - [RoundParticipationInfo]docs/RoundParticipationInfo.md
 - [RoundStatus]docs/RoundStatus.md
 - [RoundStatusOneOf]docs/RoundStatusOneOf.md
 - [RoundStatusOneOf1]docs/RoundStatusOneOf1.md
 - [RoundStatusOneOf2]docs/RoundStatusOneOf2.md
 - [RoundStatusOneOf3]docs/RoundStatusOneOf3.md
 - [RoundStatusOneOf4]docs/RoundStatusOneOf4.md
 - [RoundStatusOneOf5]docs/RoundStatusOneOf5.md
 - [Send]docs/Send.md
 - [SendOnchainFeeEstimateQuery]docs/SendOnchainFeeEstimateQuery.md
 - [SendOnchainRequest]docs/SendOnchainRequest.md
 - [SendRequest]docs/SendRequest.md
 - [SendResponse]docs/SendResponse.md
 - [TipResponse]docs/TipResponse.md
 - [TransactionInfo]docs/TransactionInfo.md
 - [UtxoInfo]docs/UtxoInfo.md
 - [VtxoInfo]docs/VtxoInfo.md
 - [VtxoRequestInfo]docs/VtxoRequestInfo.md
 - [VtxoStateInfo]docs/VtxoStateInfo.md
 - [VtxoStateInfoOneOf]docs/VtxoStateInfoOneOf.md
 - [VtxoStateInfoOneOf1]docs/VtxoStateInfoOneOf1.md
 - [VtxoStateInfoOneOf2]docs/VtxoStateInfoOneOf2.md
 - [VtxosQuery]docs/VtxosQuery.md
 - [WalletDeleteRequest]docs/WalletDeleteRequest.md
 - [WalletDeleteResponse]docs/WalletDeleteResponse.md
 - [WalletExistsResponse]docs/WalletExistsResponse.md
 - [WalletVtxoInfo]docs/WalletVtxoInfo.md


To get access to the crate's generated documentation, use:

```
cargo doc --open
```

## Author

hello@second.tech