lbry.tech/content/.vuepress/public/api.md

1657 lines
49 KiB
Markdown
Raw Normal View History

::: api__content__body
# API Reference
2018-06-22 10:48:00 +02:00
At LBRY, we utilize JSON-RPC for our API.
:::
::: api__content__example
```
This is a work-in-progress!
```
:::
::: api__content__body
2018-06-22 10:48:00 +02:00
## blob_announce
Announce blobs to the DHT.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(bool) true if successful
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
| Parameter | Description |
|:------------|:--------------------------------------------------------------------------|
| blob_hash | (str) announce a blob, specified by blob hash |
| sd_hash | (str) announce all blobs associated with `sd_hash` and the sd hash itself |
| stream_hash | (str) announce all blobs associated with `stream_hash` |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## blob_availability
Get blob availability.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) {
"is_available": <bool, true if blob is available from a peer from peer list>
"reachable_peers": ["<ip>:<port>"],
"unreachable_peers": ["<ip>:<port>"]
}
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:---------------|:-----------------------------------------------------------|
| blob_hash | (str) check availability for this blob hash |
| blob_timeout | (int) how long to try downloading from a peer |
2018-06-25 19:52:05 +02:00
| search_timeout | (int) how long to search for peers for the blob in the dht |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## blob_delete
Delete a blob.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(str) Success/fail message
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:------------|:--------------------------------------|
| blob_hash | (str) blob hash of the blob to delete |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## blob_get
Download and return a blob.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(str) Success/Fail message or (dict) decoded data
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
| Parameter | Description |
|:---------------------|:-------------------------------------------------------------------------------------------------------------------|
| blob_hash *required* | (str) blob hash of the blob to get |
| encoding | (str) by default no attempt at decoding is made, can be set to one of the following decoders: "json" |
| payment_rate_manager | (str) if not given the default payment rate manager will be used. Supported alternative rate managers: "only-free" |
| timeout | (int) timeout in number of seconds |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## blob_list
Returns blob hashes. If not given filters, returns all blobs known by the blob manager.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(list) List of blob hashes
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:------------|:--------------------------------------|
| finished | (bool) only return finished blobs |
2018-06-25 19:52:05 +02:00
| needed | (bool) only return needed blobs |
2018-06-22 10:48:00 +02:00
| page | (int) page of results to return |
2018-06-25 19:52:05 +02:00
| page_size | (int) results page size |
| sd_hash | (str) filter blobs by sd hash |
| stream_hash | (str) filter blobs by stream hash |
| uri | (str) filter blobs by stream in a uri |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## blob_reflect
Reflects specified blobs.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(list) reflected blob hashes
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:-----------------|:------------------------|
| reflector_server | (str) reflector address |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## blob_reflect_all
Reflects all saved blobs.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(bool) true if successful
2018-06-22 10:48:00 +02:00
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## block_show
Get contents of a block.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) Requested block
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:---------------------|:-------------------------------------|
| blockhash *required* | (str) hash of the block to look up |
| height *required* | (int) height of the block to look up |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## channel_export
Export serialized channel signing information for a given certificate claim id.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(str) Serialized certificate information
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:--------------------|:-------------------------------------------|
| claim_id *required* | (str) Claim ID to export information about |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## channel_import
Import serialized channel signing information (to allow signing new claims to the channel).
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) Result dictionary
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:---------------------------------------|:-----------------------|
| serialized_certificate_info *required* | (str) certificate info |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## channel_list
Get certificate claim infos for channels that can be published to.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
(list) ClaimDict, includes "is_mine" field to indicate if the certificate claim is in the wallet.
2018-06-22 10:48:00 +02:00
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## channel_new
Generate a publisher key and create a new "@" prefixed certificate claim.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) Dictionary containing result of the claim
2018-06-22 10:48:00 +02:00
{
2018-06-25 19:52:05 +02:00
"claim_id": (str) claim ID of the resulting claim
"fee": (float) fee paid for the claim transaction
"nout": (int) nout of the resulting claim
"tx": (str) hex encoded transaction
"txid": (str) txid of resulting claim
}
```
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:------------------------|:--------------------------------------------|
| amount *required* | (float) bid amount on the channel |
2018-06-25 19:52:05 +02:00
| channel_name *required* | (str) name of the channel prefixed with "@" |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## claim_abandon
Abandon a name and reclaim credits from the claim.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) Dictionary containing result of the claim
2018-06-22 10:48:00 +02:00
{
"fee": (float) fee paid for the transaction
2018-06-25 19:52:05 +02:00
"txid": (str) txid of resulting transaction
}
```
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
| Parameter | Description |
|:------------|:-----------------------------------|
| claim_id | (str) id of the claim to abandon |
| nout | (int) nout of the claim to abandon |
| txid | (str) txid of the claim to abandon |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## claim_list
List current claims and information about them for a given name.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) State of claims assigned for the name
2018-06-22 10:48:00 +02:00
{
2018-06-25 19:52:05 +02:00
"claims": (list) list of claims for the name
[{
2018-06-25 19:52:05 +02:00
"amount": (float) amount assigned to the claim
"claim_id": (str) claim ID of the claim
"effective_amount": (float) total amount assigned to the claim, including supports
"height": (int) height of block containing the claim
"nout": (int) nout of the claim
"permanent_url": (str) permanent url of the claim
"supports": (list) a list of supports attached to the claim
"txid": (str) txid of the claim
"value": (str) the value of the claim
}],
2018-06-25 19:52:05 +02:00
"last_takeover_height": (int) the height of last takeover for the name
"supports_without_claims": (list) supports without any claims attached to them
}
```
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:----------------|:-------------------------------------------|
| name *required* | (str) name of the claim to list info about |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
## claim_list_by_channel
2018-06-22 10:48:00 +02:00
Get paginated claims in a channel specified by a channel uri.
:::
::: api__content__example
Returns:
```
{
resolved channel uri: {
If there was an error:
2018-06-25 19:52:05 +02:00
"error": (str) error message
2018-06-25 19:52:05 +02:00
"claims_in_channel": the total number of results for the channel
If a page of results was requested:
2018-06-25 19:52:05 +02:00
"returned_page": page number returned
"claims_in_channel": [{
"absolute_channel_position": (int) claim index number in sorted list of
claims which assert to be part of the
channel
2018-06-25 19:52:05 +02:00
"address": (str) claim address
"amount": (float) claim amount
"claim_id": (str) claim id
"claim_sequence": (int) claim sequence number
"decoded_claim": (bool) whether or not the claim value was decoded
"depth": (int) claim depth
"effective_amount": (float) claim amount including supports
"has_signature": (bool) included if decoded_claim
"height": (int) claim height
"name": (str) claim name
"nout": (str) claim nout
"signature_is_valid": (bool), included if has_signature
"supports": (list) list of supports [{
"amount": (float) amount
"nout": (int) nout
"txid": (str) txid
}]
"txid": (str) claim txid
"value": ClaimDict if decoded, otherwise hex string
}]
}
}
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:---------------|:-------------------------------------------------------------------------------------------|
| page | (int) which page of results to return where page 1 is the first page, defaults to no pages |
| page_size | (int) number of results in a page, default of 10 |
2018-06-25 19:52:05 +02:00
| uri *required* | (str) uri of the channel |
| uris | (list) uris of the channel |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## claim_list_mine
List my name claims.
:::
::: api__content__example
Returns:
```
2018-06-25 19:52:05 +02:00
(list) List of name claims owned by user
2018-06-25 19:52:05 +02:00
[{
"address": (str) address that owns the claim
"amount": (float) amount assigned to the claim
"blocks_to_expiration": (int) number of blocks until it expires
"category": (str) "claim", "update", or "support"
"claim_id": (str) claim ID of the claim
"confirmations": (int) number of blocks of confirmations for the claim
"expiration_height": (int) the block height which the claim will expire
"expired": (bool) true if expired, false otherwise
"height": (int) height of the block containing the claim
"is_spent": (bool) true if claim is abandoned, false otherwise
"name": (str) name of the claim
"nout": (int) nout of the claim
"permanent_url": (str) permanent url of the claim
"txid": (str) txid of the claim
"value": (str) value of the claim
}]
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## claim_new_support
Support a name claim.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
(dict) Dictionary containing result of the claim
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
{
fee: (float) fee paid for the transaction
nout: (int) nout of the resulting support claim
txid: (str) txid of resulting support claim
}
```
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
| Parameter | Description |
|:--------------------|:-----------------------------------|
| amount *required* | (float) amount of support |
| claim_id *required* | (str) id of the claim to support |
| name *required* | (str) name of the claim to support |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## claim_renew
Renew claim(s) or support(s).
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
(dict) Dictionary where key is the the original claim's outpoint and value is the result of the renewal
2018-06-25 19:52:05 +02:00
{
"outpoint": {
"claim_id": (str) claim ID of the resulting claim
"fee": (float) fee paid for the claim transaction
"nout": (int) nout of the resulting claim
"tx": (str) hex encoded transaction
"txid": (str) txid of resulting claim
}
2018-06-25 19:52:05 +02:00
}
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:--------------------|:------------------------------------------------------------|
| height *required* | (str) update claims expiring before or at this block height |
2018-06-25 19:52:05 +02:00
| outpoint *required* | (str) outpoint of the claim to renew |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## claim_send_to_address
Send a name claim to an address.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
(dict) Dictionary containing result of the claim
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
{
"claim_id": (str) claim ID of the resulting claim
"fee": (float) fee paid for the claim transaction
"nout": (int) nout of the resulting claim
"tx": (str) hex encoded transaction
"txid": (str) txid of resulting claim
}
```
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:--------------------|:---------------------------------------------------------------------------------------|
| address *required* | (str) address to send the claim to |
2018-06-25 19:52:05 +02:00
| amount | (int) amount of credits to claim name for, defaults to the current amount on the claim |
| claim_id *required* | (str) claim id to send |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## claim_show
2018-06-25 19:52:05 +02:00
Resolve claim info from nout/txid or with claim ID.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
(dict) Dictionary containing claim info as below
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
{
"amount": (float) amount of claim
"claim_id": (str) claim ID of claim
"height" : (int) height of claim takeover
"nout": (int) nout of claim
"supports": (list) list of supports associated with claim
"txid": (str) txid of claim
"value": (str) value of claim
}
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
If claim cannot be resolved, dictionary as below will be returned
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
{
"error": (str) reason for error
}
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:------------|:-----------------------------------------------------------------|
| claim_id | (str) look for claim with this claim id |
2018-06-25 19:52:05 +02:00
| nout | (int) look for claim with this nout, txid must also be specified |
| txid | (str) look for claim with this txid, nout must also be specified |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## cli_test_command
This command is only for testing the CLI argument parsing.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
pos args
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:-------------------|:--------------|
| a_arg | a arg |
| b_arg | b arg |
| pos_arg *required* | pos arg |
| pos_args | pos args |
| pos_arg2 | pos arg 2 |
| pos_arg3 | pos arg 3 |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## commands
Return a list of available commands.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(list) list of available commands
2018-06-22 10:48:00 +02:00
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## daemon_stop
Stop lbrynet-daemon.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
(string) Shutdown message
2018-06-22 10:48:00 +02:00
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## file_delete
Delete a LBRY file.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(bool) true if deletion was successful
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
| Parameter | Description |
|:-------------------------|:----------------------------------------------------------------------------------------------------------------------|
| channel_claim_id | (str) delete by file channel claim id |
| channel_name | (str) delete by file channel claim name |
| claim_id | (str) delete by file claim id |
| claim_name | (str) delete by file claim name |
| delete_all | (bool) if there are multiple matching files, allow the deletion of multiple files. Otherwise, do not delete anything. |
| delete_from_download_dir | (bool) delete file from download directory, instead of just deleting blobs |
| file_name | (str) delete by file name in downloads folder |
| nout | (int) delete by file claim nout |
| rowid | (int) delete by file row id |
| sd_hash | (str) delete by file sd hash |
| stream_hash | (str) delete by file stream hash |
| txid | (str) delete by file claim txid |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## file_list
List files limited by optional filters.
:::
::: api__content__example
Returns:
```
(list) List of files
[{
2018-06-25 19:52:05 +02:00
"blobs_completed": (int) num_completed, None if full_status is false
"blobs_in_stream": (int) None if full_status is false
"channel_claim_id": (str) None if full_status is false or if claim is not found or signed
"channel_name": (str) None if full_status is false or if claim is not found or signed
"claim_id": (str) None if full_status is false or if claim is not found
"claim_name": (str) None if full_status is false or if claim is not found
2018-06-25 19:52:05 +02:00
"completed": (bool) true if download is completed
"download_directory": (str) download directory
"download_path": (str) download path of file
"file_name": (str) name of file
"key": (str) key attached to file
"metadata": (dict) None if full_status is false or if claim is not found
"mime_type": (str) mime type of file
"nout": (int) None if full_status is false or if claim is not found
"outpoint": (str) None if full_status is false or if claim is not found
"points_paid": (float) credit paid to download file
"sd_hash": (str) sd hash of file
"status": (str) downloader status, None if full_status is false
"stopped": (bool) true if download is stopped
"stream_hash": (str) stream hash of file
"stream_name": (str) stream name
"suggested_file_name": (str) suggested file name
"total_bytes": (int) file size in bytes, None if full_status is false
"txid": (str) None if full_status is false or if claim is not found
"written_bytes": (int) written size in bytes
}]
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:-----------------|:-----------------------------------------------------------------------------------------------------------------|
| channel_claim_id | (str) get file with matching channel claim id |
| channel_name | (str) get file with matching channel name |
2018-06-25 19:52:05 +02:00
| claim_id | (str) get file with matching claim id |
| claim_name | (str) get file with matching claim name |
2018-06-25 19:52:05 +02:00
| file_name | (str) get file with matching file name in the downloads folder |
| full_status | (bool) full status, populate the "message" and "size" fields |
| nout | (int) get file with matching claim nout |
| outpoint | (str) get file with matching claim outpoint |
| rowid | (int) get file with matching row id |
| sd_hash | (str) get file with matching sd hash |
| sort | (str) sort by any property, like "file_name" or "metadata.author"; to specify direction append ",asc" or ",desc" |
| stream_hash | (str) get file with matching stream hash |
| txid | (str) get file with matching claim txid |
:::
::: api__content__body
2018-06-22 10:48:00 +02:00
## file_reflect
Reflect all the blobs in a file matching the filter criteria.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(list) list of blobs reflected
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:------------|:-------------------------------------------------------------------------------------|
| file_name | (str) get file with matching file name in the downloads folder |
| reflector | (str) reflector server, ip address or url by default choose a server from the config |
2018-06-25 19:52:05 +02:00
| rowid | (int) get file with matching row id |
| sd_hash | (str) get file with matching sd hash |
| stream_hash | (str) get file with matching stream hash |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## file_set_status
Start or stop downloading a file.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(str) Confirmation message
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:------------------|:-------------------------------------------------------------------------|
| file_name | (str) set status of file with matching file name in the downloads folder |
| rowid | (int) set status of file with matching row id |
2018-06-25 19:52:05 +02:00
| sd_hash | (str) set status of file with matching sd hash |
| status *required* | (str) one of "start" or "stop" |
| stream_hash | (str) set status of file with matching stream hash |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
## get
2018-06-22 10:48:00 +02:00
Download stream from a LBRY name.
:::
::: api__content__example
Returns:
```
(dict) Dictionary containing information about the stream
{
2018-06-25 19:52:05 +02:00
"blobs_completed": (int) num_completed, None if `full_status` is false
"blobs_in_stream": (int) None if `full_status` is false
"channel_claim_id": (str) None if claim is not signed
"channel_name": (str) None if claim is not signed
"claim_id": (str) claim id
"claim_name": (str) claim name
"completed": (bool) true if download is completed
"download_directory": (str) download directory
"download_path": (str) download path of file
"key": (str) key attached to file
"file_name": (str) name of file
"metadata": (dict) claim metadata
"mime_type": (str) mime type of file
"nout": (int) claim nout
"outpoint": (str) claim outpoint string
"points_paid": (float) credit paid to download file
"sd_hash": (str) sd hash of file
"status": (str) downloader status, None if `full_status` is false
"stopped": (bool) true if download is stopped
"stream_hash": (str) stream hash of file
"stream_name": (str) stream name
"suggested_file_name": (str) suggested file name
"total_bytes": (int) file size in bytes, None if `full_status` is false
"txid": (str) claim txid
"written_bytes": (int) written size in bytes
}
```
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:------------|:---------------------------------------------|
| file_name | (str) specified name for the downloaded file |
| timeout | (int) download timeout in number of seconds |
2018-06-25 19:52:05 +02:00
| uri | (str) uri of the content to download |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## help
Return a useful message for an API command.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(str) Help message
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:------------|:--------------------------------------------|
| command | (str) command to retrieve documentation for |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## peer_list
Get peers for blob hash.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
(list) List of contact dictionaries { "host": <peer ip>, "port": <peer port>, "node_id": <peer node id> }
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:---------------------|:----------------------------------------------|
| blob_hash *required* | (str) find available peers for this blob hash |
| timeout | (int) peer search timeout in seconds |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## peer_ping
Find and ping a peer by node id.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
(str) pong, or {"error": <error message>} if an error is encountered
2018-06-22 10:48:00 +02:00
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## publish
Make a new name claim and publish associated data to lbrynet, update over existing claim if user already has a claim for name.
2018-06-22 10:48:00 +02:00
Fields required in the final Metadata are:
- author
- description
- language
- license
- nsfw
- title
2018-06-22 10:48:00 +02:00
Metadata can be set by either using the metadata argument or by setting individual arguments fee, title, description, author, language, license, license_url, thumbnail, preview, nsfw, or sources. Individual arguments will overwrite the fields specified in metadata argument.
:::
2018-06-22 10:48:00 +02:00
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) Dictionary containing result of the claim
{
2018-06-25 19:52:05 +02:00
"claim_id": (str) claim ID of the resulting claim
"fee": (decimal) fee paid for the claim transaction
"nout": (int) nout of the resulting claim
"tx": (str) hex encoded transaction
"txid": (str) txid of resulting claim
}
```
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
| Parameter | Description |
|:----------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| author | (str) author of the publication |
| bid *required* | (decimal) amount to back the claim |
| channel_name | (str) name of the publisher channel name in the wallet |
| channel_id | (str) claim id of the publisher channel, does not check for channel claim being in the wallet. This allows publishing to a channel where only the certificate private key is in the wallet. |
| claim_address | (str) address where the claim is sent to, if not specified new address will automatically be created |
| description | (str) description of the publication |
| fee | (dict) Dictionary representing key fee to download content: {"currency": currency_symbol, "amount": decimal, "address": str, optional } supported currencies: LBC, USD, BTCIf an address is not provided a new one will be automatically generated. Default fee is zero. |
| file_path | (str) path to file to be associated with name. If provided, a lbry stream of this file will be used in "sources". If no path is given but a sources dict is provided, it will be used. If neither are provided, an error is raised. |
| language | (str) language of the publication |
| license | (str) publication license |
| license_url | (str) publication license url |
| metadata | (dict) ClaimDict to associate with the claim. |
| name *required* | (str) name of the content |
| nsfw | (bool) title of the publication |
| preview | (str) preview url |
| sources | (str) { "lbry_sd_hash": sd_hash } specifies sd hash of file |
| thumbnail | (str) thumbnail url |
| title | (str) title of the publication |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## report_bug
Report a bug to Slack.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(bool) true if successful
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:-------------------|:-----------------------------|
| message *required* | (str) Description of the bug |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## resolve
Resolve given LBRY URIs.
:::
::: api__content__example
Returns:
```
Dictionary of results, keyed by uri
2018-06-25 19:52:05 +02:00
"<uri>": {
If a resolution error occurs:
2018-06-25 19:52:05 +02:00
"error": Error message
If the uri resolves to a channel or a claim in a channel:
2018-06-25 19:52:05 +02:00
"certificate": {
"address": (str) claim address
"amount": (float) claim amount
"claim_id": (str) claim id
"claim_sequence": (int) claim sequence number
"decoded_claim": (bool) whether or not the claim value was decoded
"depth": (int) claim depth
"effective_amount": (float) claim amount including supports
"has_signature": (bool) included if decoded_claim
"height": (int) claim height
"name": (str) claim name
"nout": (str) claim nout
"permanent_url": (str) permanent url of the certificate claim
"signature_is_valid": (bool), included if has_signature
"supports: (list) list of supports [{
"amount": (float) amount
"nout": (int) nout
"txid": (str) txid
}]
"txid": (str) claim txid
"value": ClaimDict if decoded, otherwise hex string
}
If the uri resolves to a channel:
2018-06-25 19:52:05 +02:00
"claims_in_channel": (int) number of claims in the channel,
If the uri resolves to a claim:
2018-06-25 19:52:05 +02:00
"claim": {
"address": (str) claim address
"amount": (float) claim amount
"channel_name": (str) channel name if claim is in a channel
"claim_id": (str) claim id
"claim_sequence": (int) claim sequence number
"decoded_claim": (bool) whether or not the claim value was decoded
"depth": (int) claim depth
"effective_amount": (float) claim amount including supports
"has_signature": (bool) included if decoded_claim
"height": (int) claim height
"name": (str) claim name
"nout": (str) claim nout
"permanent_url": (str) permanent url of the claim
"signature_is_valid": (bool), included if has_signature
"supports: (list) list of supports [{
"amount": (float) amount
"nout": (int) nout
"txid": (str) txid
}]
"txid": (str) claim txid
"value": ClaimDict if decoded, otherwise hex string
}
}
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:---------------|:--------------------------------------|
| force | (bool) force refresh and ignore cache |
| uri *required* | (str) uri to resolve |
| uris | (list) uris to resolve |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## resolve_name
Resolve stream info from a LBRY name.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) Metadata dictionary from name claim, None if the name is not resolvable
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:----------------|:--------------------------------------------|
| force | (bool) force refresh and do not check cache |
2018-06-25 19:52:05 +02:00
| name *required* | (str) the name to resolve |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## routing_table_get
Get DHT routing information.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) dictionary containing routing and contact information
2018-06-22 10:48:00 +02:00
{
"buckets": {
2018-06-25 19:52:05 +02:00
<bucket index>: [{
"address": (str) peer address
"blobs": (list) blob hashes announced by peer
"node_id": (str) peer node id
"port": (int) peer udp port
}]
}
"blob_hashes": (list) all of the blob hashes stored by peers in the list of buckets
"contacts": (list) contact node ids
"node_id": (str) the local dht node id
}
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## settings_get
Get daemon settings.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) Dictionary of daemon settings
See ADJUSTABLE_SETTINGS in lbrynet/conf.py for full list of settings
2018-06-22 10:48:00 +02:00
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## settings_set
Set daemon settings.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) Updated dictionary of daemon settings
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
| Parameter | Description |
|:------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| auto_renew_claim_height_delta | (int) 0 claims set to expire within this many blocks will be automatically renewed after startup (if set to 0, renews will not be made automatically) |
| cache_time | (int) 150 |
| data_rate | (float) 0.0001 |
| disable_max_key_fee | (bool) False |
| download_directory | (str) path of download directory |
| download_timeout | (int) 180 |
| max_key_fee | (dict) maximum key fee for downloads, in the format: { "currency": <currency_symbol>, "amount": <amount> }. In the CLI, it must be an escaped JSON stringSupported currency symbols: LBC, USD, BTC |
| peer_port | (int) 3333 |
| peer_search_timeout | (int) 3 |
| reflect_uploads | (bool) True |
| run_reflector_server | (bool) False |
| sd_download_timeout | (int) 3 |
| share_usage_data | (bool) True |
| use_upnp | (bool) True |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
## status
2018-06-22 10:48:00 +02:00
Get daemon status.
:::
::: api__content__example
Returns:
```
(dict) lbrynet-daemon status
{
2018-06-25 19:52:05 +02:00
"blockchain_status": {
"best_blockhash": block hash of most recent block
"blocks": local blockchain height
"blocks_behind": remote_height - local_height
}
"connection_status": {
"code": connection status code,
"message": connection status message
}
"installation_id": installation id, base58
"is_first_run": bool
"is_running": bool
"lbry_id": lbry peer id, base58
"startup_status": {
"code": status code,
"message": status message
}
"wallet_is_encrypted": bool
If given the session status option:
2018-06-25 19:52:05 +02:00
"session_status": {
"announce_queue_size": number of blobs currently queued to be announced
"managed_blobs": count of blobs in the blob manager
"managed_streams": count of streams in the file manager
"should_announce_blobs": number of blobs that should be announced
}
}
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:---------------|:-----------------------------------------|
| session_status | (bool) include session status in results |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## stream_availability
Get stream availability for lbry uri.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) {
2018-06-25 19:52:05 +02:00
"did_decode": <bool>
"did_resolve": <bool>
"error": <None> | <str> error message
"head_blob_availability": <dict> see `blob_availability`
"head_blob_hash": <str>
"is_available": <bool>
"is_stream": <bool>
"num_blobs_in_stream": <int>
"sd_blob_availability": <dict> see `blob_availability`
"sd_hash": <str>
"upnp_redirect_is_set": <bool>
"use_upnp": <bool>
}
```
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:---------------|:-----------------------------------------------------------|
| blob_timeout | (int) how long to try downloading from a peer |
2018-06-25 19:52:05 +02:00
| search_timeout | (int) how long to search for peers for the blob in the dht |
| uri *required* | (str) check availability for this uri |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## stream_cost_estimate
Get estimated cost for a lbry stream.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(float) Estimated cost in lbry credits, returns None if uri is not resolvable
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:---------------|:--------------------------------------------------------------------------|
| size | (float) stream size in bytes. If provided an sd blob won't be downloaded. |
2018-06-25 19:52:05 +02:00
| uri *required* | (str) uri to use |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
## transaction_list
2018-06-22 10:48:00 +02:00
List transactions belonging to wallet.
:::
::: api__content__example
Returns:
```
(list) List of transactions
{
"abandon_info": (list) abandon info if in txn [{
2018-06-25 19:52:05 +02:00
"address": (str) address of abandoned claim
"amount": (float) claim amount
"balance_delta": (float) returned amount
"claim_id": (str) claim id
"claim_name": (str) claim name
"nout": (int) nout
2018-06-25 19:52:05 +02:00
}]
"claim_info": (list) claim info if in txn [{
"address": (str) address of claim
"amount": (float) claim amount
"balance_delta": (float) bid amount
"claim_id": (str) claim id
"claim_name": (str) claim name
"nout": (int) nout
}]
"confirmations": (int) number of confirmations for the txn
"date": (str) date and time of txn
"fee": (float) txn fee
"support_info": (list) support info if in txn [{
2018-06-25 19:52:05 +02:00
"address": (str) address of support
"amount": (float) support amount
"balance_delta": (float) support amount
"claim_id": (str) claim id
"claim_name": (str) claim name
"is_tip": (bool)
"nout": (int) nout
2018-06-25 19:52:05 +02:00
}]
"timestamp": (int) timestamp
"txid": (str) txn id
"update_info": (list) update info if in txn [{
2018-06-25 19:52:05 +02:00
"address": (str) address of claim
"amount": (float) absolute amount
"balance_delta": (float) credited/debited
2018-06-25 19:52:05 +02:00
"claim_id": (str) claim id
"claim_name": (str) claim name
"nout": (int) nout
2018-06-25 19:52:05 +02:00
}]
"value": (float) value of txn
}
2018-06-22 10:48:00 +02:00
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## transaction_show
Get a decoded transaction from a txid.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) JSON formatted transaction
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:----------------|:------------------------------|
| txid *required* | (str) txid of the transaction |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## utxo_list
List unspent transaction outputs.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(list) List of unspent transaction outputs (UTXOs)
2018-06-22 10:48:00 +02:00
[
{
"address": (str) the output address
"amount": (float) unspent amount
"height": (int) block height
"is_claim": (bool) is the tx a claim
"is_coinbase": (bool) is the tx a coinbase tx
"is_support": (bool) is the tx a support
"is_update": (bool) is the tx an update
"nout": (int) nout of the output
"txid": (str) txid of the output
2018-06-25 19:52:05 +02:00
}
...
]
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## version
Get lbry version information.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) Dictionary of lbry version information
2018-06-22 10:48:00 +02:00
{
2018-06-25 19:52:05 +02:00
"build": (str) build type (e.g. "dev", "rc", "release")
"ip": (str) remote ip, if available
"lbrynet_version": (str) lbrynet_version
"lbryschema_version": (str) lbryschema_version
"lbryum_version": (str) lbryum_version
"os_release": (str) os release string
"os_system": (str) os name
"platform": (str) platform string
"processor": (str) processor type
"python_version": (str) python version
}
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## wallet_balance
Return the balance of the wallet.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(float) amount of lbry credits in wallet
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:--------------------|:------------------------------------------------------------------|
| address | (str) If provided only the balance for this address will be given |
| include_unconfirmed | (bool) Include unconfirmed |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## wallet_decrypt
Decrypt an encrypted wallet, this will remove the wallet password.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(bool) true if wallet is decrypted, otherwise false
2018-06-22 10:48:00 +02:00
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## wallet_encrypt
Encrypt a wallet with a password, if the wallet is already encrypted this will update
the password.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(bool) true if wallet is decrypted, otherwise false
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:------------------------|:-------------------------------------------------------|
| new_password *required* | (str) password string to be used for encrypting wallet |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## wallet_is_address_mine
Checks if an address is associated with the current wallet.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(bool) true, if address is associated with current wallet
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:-------------------|:-----------------------|
| address *required* | (str) address to check |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## wallet_list
List wallet addresses.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
List of wallet addresses
2018-06-22 10:48:00 +02:00
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## wallet_new_address
Generate a new wallet address.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(str) New wallet address in base58
2018-06-22 10:48:00 +02:00
```
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## wallet_prefill_addresses
Create new addresses, each containing `amount` credits.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(dict) the resulting transaction
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:-------------------------|:---------------------------------------|
2018-06-25 19:52:05 +02:00
| amount *required* | (float) initial amount in each address |
2018-06-22 10:48:00 +02:00
| no_broadcast | (bool) whether to broadcast or not |
| num_addresses *required* | (int) num of addresses to create |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## wallet_public_key
Get public key from wallet address.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(list) list of public keys associated with address. Could contain more than one public key if multisig.
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:-------------------|:----------------------------------------------|
| address *required* | (str) address for which to get the public key |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## wallet_send
Send credits. If given an address, send credits to it. If given a claim id, send a tip to the owner of a claim specified by uri. A tip is a claim support where the recipient of the support is the claim address for the claim being supported.
:::
2018-06-22 10:48:00 +02:00
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
If sending to an address:
(bool) true if payment successfully scheduled
2018-06-22 10:48:00 +02:00
If sending a claim tip:
(dict) Dictionary containing the result of the support
2018-06-25 19:52:05 +02:00
{
2018-06-25 19:52:05 +02:00
"fee": (float) fee paid for the transaction
"nout": (int) nout of the resulting support claim
"txid": (str) txid of resulting support claim
}
```
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
2018-06-25 19:52:05 +02:00
| Parameter | Description |
|:--------------------|:------------------------------------------|
| address *required* | (str) address to send credits to |
| amount *required* | (float) amount of credit to send |
| claim_id *required* | (float) claim id of the claim to send tip |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## wallet_unlock
Unlock an encrypted wallet.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(bool) true if wallet is unlocked, otherwise false
2018-06-22 10:48:00 +02:00
```
2018-06-25 19:52:05 +02:00
Arguments:
2018-06-22 10:48:00 +02:00
| Parameter | Description |
|:--------------------|:------------------------------------|
| password *required* | (str) password for unlocking wallet |
:::
2018-06-22 10:48:00 +02:00
::: api__content__body
2018-06-22 10:48:00 +02:00
## wallet_unused_address
Return an address containing no balance, will create a new address if there is none.
:::
::: api__content__example
Returns:
2018-06-22 10:48:00 +02:00
```
(str) Unused wallet address in base58
2018-06-22 10:48:00 +02:00
```
:::