bhive.account module¶
-
class
bhive.account.
Account
(account, full=True, lazy=False, hive_instance=None)¶ Bases:
bhive.blockchainobject.BlockchainObject
This class allows to easily access Account data
- Parameters
account_name (str) – Name of the account
hive_instance (Hive) – Hive instance
lazy (bool) – Use lazy loading
full (bool) – Obtain all account data including orders, positions, etc.
- Returns
Account data
- Return type
dictionary
- Raises
bhive.exceptions.AccountDoesNotExistsException – if account does not exist
Instances of this class are dictionaries that come with additional methods (see below) that allow dealing with an account and its corresponding functions.
>>> from bhive.account import Account >>> from bhive import Hive >>> hv = Hive() >>> account = Account("gtg", hive_instance=hv) >>> print(account) <Account gtg> >>> print(account.balances)
Note
This class comes with its own caching function to reduce the load on the API server. Instances of this class can be refreshed with
Account.refresh()
. The cache can be cleared withAccount.clear_cache()
-
allow
(foreign, weight=None, permission='posting', account=None, threshold=None, **kwargs)¶ Give additional access to an account by some other public key or account.
- Parameters
foreign (str) – The foreign account that will obtain access
weight (int) – (optional) The weight to use. If not define, the threshold will be used. If the weight is smaller than the threshold, additional signatures will be required. (defaults to threshold)
permission (str) – (optional) The actual permission to modify (defaults to
posting
)account (str) – (optional) the account to allow access to (defaults to
default_account
)threshold (int) – (optional) The threshold that needs to be reached by signatures to be able to interact
-
approvewitness
(witness, account=None, approve=True, **kwargs)¶ Approve a witness
- Parameters
witness (list) – list of Witness name or id
account (str) – (optional) the account to allow access to (defaults to
default_account
)
-
property
available_balances
¶ List balances of an account. This call returns instances of
bhive.amount.Amount
.
-
property
balances
¶ Returns all account balances as dictionary
-
blog_history
(limit=None, start=-1, reblogs=True, account=None)¶ Stream the blog entries done by an account in reverse time order.
Note
RPC nodes keep a limited history of entries for the user blog. Older blog posts of an account may not be available via this call due to these node limitations.
- Parameters
limit (int) – (optional) stream the latest limit blog entries. If unset (default), all available blog entries are streamed.
start (int) – (optional) start streaming the blog entries from this index. start=-1 (default) starts with the latest available entry.
reblogs (bool) – (optional) if set True (default) reblogs / rehives are included. If set False, reblogs/rehives are omitted.
account (str) – (optional) the account to stream blog entries for (defaults to
default_account
)
blog_history_reverse example:
from bhive.account import Account acc = Account("hiveioblog") for post in acc.blog_history(limit=10): print(post)
-
cancel_transfer_from_savings
(request_id, account=None, **kwargs)¶ Cancel a withdrawal from ‘savings’ account.
- Parameters
request_id (str) – Identifier for tracking or cancelling the withdrawal
account (str) – (optional) the source account for the transfer if not
default_account
-
change_recovery_account
(new_recovery_account, account=None, **kwargs)¶ Request a change of the recovery account.
Note
It takes 30 days until the change applies. Another request within this time restarts the 30 day period. Setting the current recovery account again cancels any pending change request.
- Parameters
new_recovery_account (str) – account name of the new recovery account
account (str) – (optional) the account to change the recovery account for (defaults to
default_account
)
-
claim_reward_balance
(reward_hive=0, reward_hbd=0, reward_vests=0, account=None, **kwargs)¶ Claim reward balances. By default, this will claim
all
outstanding balances. To bypass this behaviour, set desired claim amount by setting any of reward_hive, reward_hbd or reward_vests.- Parameters
reward_hive (str) – Amount of HIVE you would like to claim.
reward_hbd (str) – Amount of HBD you would like to claim.
reward_vests (str) – Amount of VESTS you would like to claim.
account (str) – The source account for the claim if not
default_account
is used.
-
comment_history
(limit=None, start_permlink=None, account=None)¶ Stream the comments done by an account in reverse time order.
Note
RPC nodes keep a limited history of user comments for the user feed. Older comments may not be available via this call due to these node limitations.
- Parameters
limit (int) – (optional) stream the latest limit comments. If unset (default), all available comments are streamed.
start_permlink (str) – (optional) start streaming the comments from this permlink. start_permlink=None (default) starts with the latest available entry.
account (str) – (optional) the account to stream comments for (defaults to
default_account
)
comment_history_reverse example:
from bhive.account import Account acc = Account("ned") for comment in acc.comment_history(limit=10): print(comment)
-
convert
(amount, account=None, request_id=None)¶ Convert HiveDollars to Hive (takes 3.5 days to settle)
- Parameters
amount (float) – amount of HBD to convert
account (str) – (optional) the source account for the transfer if not
default_account
request_id (str) – (optional) identifier for tracking the conversion`
-
curation_stats
()¶ Returns the curation reward of the last 24h and 7d and the average of the last 7 days
- Returns
Account curation
- Return type
dictionary
Sample output:
{ '24hr': 0.0, '7d': 0.0, 'avg': 0.0 }
Delegate HP to another account.
- Parameters
to_account (str) – Account we are delegating shares to (delegatee).
vesting_shares (str) – Amount of VESTS to delegate eg. 10000 VESTS.
account (str) – The source account (delegator). If not specified,
default_account
is used.
-
disallow
(foreign, permission='posting', account=None, threshold=None, **kwargs)¶ Remove additional access to an account by some other public key or account.
- Parameters
foreign (str) – The foreign account that will obtain access
permission (str) – (optional) The actual permission to modify (defaults to
posting
)account (str) – (optional) the account to allow access to (defaults to
default_account
)threshold (int) – The threshold that needs to be reached by signatures to be able to interact
-
disapprovewitness
(witness, account=None, **kwargs)¶ Disapprove a witness
- Parameters
witness (list) – list of Witness name or id
account (str) – (optional) the account to allow access to (defaults to
default_account
)
-
ensure_full
()¶ Ensure that all data are loaded
-
estimate_virtual_op_num
(blocktime, stop_diff=0, max_count=100)¶ Returns an estimation of an virtual operation index for a given time or blockindex
- Parameters
blocktime (int, datetime) – start time or start block index from which account operation should be fetched
stop_diff (int) – Sets the difference between last estimation and new estimation at which the estimation stops. Must not be zero. (default is 1)
max_count (int) – sets the maximum number of iterations. -1 disables this (default 100)
utc = pytz.timezone('UTC') start_time = utc.localize(datetime.utcnow()) - timedelta(days=7) acc = Account("gtg") start_op = acc.estimate_virtual_op_num(start_time) b = Blockchain() start_block_num = b.get_estimated_block_num(start_time) start_op2 = acc.estimate_virtual_op_num(start_block_num)
acc = Account("gtg") block_num = 21248120 start = t.time() op_num = acc.estimate_virtual_op_num(block_num, stop_diff=1, max_count=10) stop = t.time() print(stop - start) for h in acc.get_account_history(op_num, 0): block_est = h["block"] print(block_est - block_num)
-
feed_history
(limit=None, start_author=None, start_permlink=None, account=None)¶ Stream the feed entries of an account in reverse time order.
Note
RPC nodes keep a limited history of entries for the user feed. Older entries may not be available via this call due to these node limitations.
- Parameters
limit (int) – (optional) stream the latest limit feed entries. If unset (default), all available entries are streamed.
start_author (str) – (optional) start streaming the replies from this author. start_permlink=None (default) starts with the latest available entry. If set, start_permlink has to be set as well.
start_permlink (str) – (optional) start streaming the replies from this permlink. start_permlink=None (default) starts with the latest available entry. If set, start_author has to be set as well.
account (str) – (optional) the account to get replies to (defaults to
default_account
)
comment_history_reverse example:
from bhive.account import Account acc = Account("ned") for reply in acc.feed_history(limit=10): print(reply)
-
follow
(other, what=['blog'], account=None)¶ Follow/Unfollow/Mute/Unmute another account’s blog
- Parameters
other (str) – Follow this account
what (list) – List of states to follow.
['blog']
means to followother
,[]
means to unfollow/unmuteother
,['ignore']
means to ignoreother
, (defaults to['blog']
)account (str) – (optional) the account to allow access to (defaults to
default_account
)
-
getSimilarAccountNames
(limit=5)¶ Deprecated, please use get_similar_account_names
-
get_account_bandwidth
(bandwidth_type=1, account=None)¶
-
get_account_history
(index, limit, order=-1, start=None, stop=None, use_block_num=True, only_ops=[], exclude_ops=[], raw_output=False)¶ Returns a generator for individual account transactions. This call can be used in a
for
loop.- Parameters
index (int) – first number of transactions to return
limit (int) – limit number of transactions to return
start (int, datetime) – start number/date of transactions to return (optional)
stop (int, datetime) – stop number/date of transactions to return (optional)
use_block_num (bool) – if true, start and stop are block numbers, otherwise virtual OP count numbers.
only_ops (array) – Limit generator by these operations (optional)
exclude_ops (array) – Exclude thse operations from generator (optional)
batch_size (int) – internal api call batch size (optional)
order (int) – 1 for chronological, -1 for reverse order
raw_output (bool) – if False, the output is a dict, which includes all values. Otherwise, the output is list.
Note
only_ops and exclude_ops takes an array of strings: The full list of operation ID’s can be found in bhivebase.operationids.ops. Example: [‘transfer’, ‘vote’]
-
get_account_votes
(account=None)¶ Returns all votes that the account has done
- Return type
list
>>> from bhive.account import Account >>> from bhive import Hive >>> hv = Hive() >>> account = Account("bhive.app", hive_instance=hv) >>> account.get_account_votes() []
-
get_balance
(balances, symbol)¶ Obtain the balance of a specific Asset. This call returns instances of
bhive.amount.Amount
. Available balance types:“available”
“saving”
“reward”
“total”
- Parameters
balances (str) – Defines the balance type
symbol (str, dict) – Can be “HBD”, “HIVE” or “VESTS
>>> from bhive.account import Account >>> account = Account("bhive.app") >>> account.get_balance("rewards", "HBD") 0.000 HBD
-
get_balances
()¶ Returns all account balances as dictionary
- Returns
Account balances
- Return type
dictionary
Sample output:
{ 'available': [102.985 HIVE, 0.008 HBD, 146273.695970 VESTS], 'savings': [0.000 HIVE, 0.000 HBD], 'rewards': [0.000 HIVE, 0.000 HBD, 0.000000 VESTS], 'total': [102.985 HIVE, 0.008 HBD, 146273.695970 VESTS] }
-
get_bandwidth
()¶ Returns used and allocated bandwidth
- Return type
dictionary
Sample output:
{ 'used': 0, 'allocated': 2211037 }
-
get_blog
(start_entry_id=0, limit=100, raw_data=False, short_entries=False, account=None)¶ Returns the list of blog entries for an account
- Parameters
start_entry_id (int) – default is 0
limit (int) – default is 100
raw_data (bool) – default is False
short_entries (bool) – when set to True and raw_data is True, get_blog_entries is used istead of get_blog
account (str) – When set, a different account name is used (Default is object account name)
- Return type
list
>>> from bhive.account import Account >>> from bhive import Hive >>> hv = Hive() >>> account = Account("hiveio", hive_instance=hv) >>> account.get_blog(0, 1) [<Comment @hiveio/firstpost>]
Returns a list of authors that have had their content reblogged on a given blog account
- Parameters
account (str) – When set, a different account name is used (Default is object account name)
- Return type
list
>>> from bhive.account import Account >>> from bhive import Hive >>> hv = Hive() >>> account = Account("hiveio", hive_instance=hv) >>> account.get_blog_authors() []
-
get_blog_entries
(start_entry_id=0, limit=100, raw_data=True, account=None)¶ Returns the list of blog entries for an account
- Parameters
start_entry_id (int) – default is 0
limit (int) – default is 100
raw_data (bool) – default is False
account (str) – When set, a different account name is used (Default is object account name)
- Return type
list
>>> from bhive.account import Account >>> from bhive import Hive >>> hv = Hive() >>> account = Account("hiveio", hive_instance=hv) >>> entry = account.get_blog_entries(0, 1, raw_data=True)[0] >>> print("%s - %s - %s - %s" % (entry["author"], entry["permlink"], entry["blog"], entry["reblog_on"])) hiveio - firstpost - hiveio - 1970-01-01T00:00:00
-
get_conversion_requests
(account=None)¶ Returns a list of HBD conversion request
- Parameters
account (str) – When set, a different account is used for the request (Default is object account name)
- Return type
list
>>> from bhive.account import Account >>> account = Account("bhive.app") >>> account.get_conversion_requests() []
-
get_creator
()¶ Returns the account creator or None if the account was mined
-
get_curation_reward
(days=7)¶ Returns the curation reward of the last days days
- Parameters
days (int) – limit number of days to be included int the return value
-
get_downvote_manabar
()¶ Return downvote manabar
-
get_downvoting_power
(with_regeneration=True)¶ Returns the account downvoting power in the range of 0-100%
Returns the effective vesting shares
-
get_escrow
(escrow_id=0, account=None)¶ Returns the escrow for a certain account by id
- Parameters
escrow_id (int) – Id (only pre appbase)
account (str) – When set, a different account is used for the request (Default is object account name)
- Return type
list
>>> from bhive.account import Account >>> account = Account("bhive.app") >>> account.get_escrow(1234) []
-
get_expiring_vesting_delegations
(after=None, limit=1000, account=None)¶ Returns the expirations for vesting delegations.
- Parameters
after (datetime) – expiration after (only for pre appbase nodes)
limit (int) – limits number of shown entries (only for pre appbase nodes)
account (str) – When set, a different account is used for the request (Default is object account name)
- Return type
list
>>> from bhive.account import Account >>> account = Account("bhive.app") >>> account.get_expiring_vesting_delegations() []
-
get_feed
(start_entry_id=0, limit=100, raw_data=False, short_entries=False, account=None)¶ Returns a list of items in an account’s feed
- Parameters
start_entry_id (int) – default is 0
limit (int) – default is 100
raw_data (bool) – default is False
short_entries (bool) – when set to True and raw_data is True, get_feed_entries is used istead of get_feed
account (str) – When set, a different account name is used (Default is object account name)
- Return type
list
>>> from bhive.account import Account >>> from bhive import Hive >>> hv = Hive() >>> account = Account("hiveio", hive_instance=hv) >>> account.get_feed(0, 1, raw_data=True) []
-
get_feed_entries
(start_entry_id=0, limit=100, raw_data=True, account=None)¶ Returns a list of entries in an account’s feed
- Parameters
start_entry_id (int) – default is 0
limit (int) – default is 100
raw_data (bool) – default is False
short_entries (bool) – when set to True and raw_data is True, get_feed_entries is used istead of get_feed
account (str) – When set, a different account name is used (Default is object account name)
- Return type
list
>>> from bhive.account import Account >>> from bhive import Hive >>> hv = Hive() >>> account = Account("hiveio", hive_instance=hv) >>> account.get_feed_entries(0, 1) []
-
get_follow_count
(account=None)¶
-
get_followers
(raw_name_list=True, limit=100)¶ Returns the account followers as list
-
get_following
(raw_name_list=True, limit=100)¶ Returns who the account is following as list
-
get_hive_power
(onlyOwnSP=False)¶ Returns the account hive power
-
get_manabar
()¶ Return manabar
-
get_manabar_recharge_time
(manabar, recharge_pct_goal=100)¶ Returns the account mana recharge time in minutes
- Parameters
manabar (dict) – manabar dict from get_manabar() or get_rc_manabar()
recharge_pct_goal (float) – mana recovery goal in percentage (default is 100)
-
get_manabar_recharge_time_str
(manabar, recharge_pct_goal=100)¶ Returns the account manabar recharge time as string
- Parameters
manabar (dict) – manabar dict from get_manabar() or get_rc_manabar()
recharge_pct_goal (float) – mana recovery goal in percentage (default is 100)
-
get_manabar_recharge_timedelta
(manabar, recharge_pct_goal=100)¶ Returns the account mana recharge time as timedelta object
- Parameters
manabar (dict) – manabar dict from get_manabar() or get_rc_manabar()
recharge_pct_goal (float) – mana recovery goal in percentage (default is 100)
-
get_muters
(raw_name_list=True, limit=100)¶ Returns the account muters as list
-
get_mutings
(raw_name_list=True, limit=100)¶ Returns who the account is muting as list
-
get_owner_history
(account=None)¶ Returns the owner history of an account.
- Parameters
account (str) – When set, a different account is used for the request (Default is object account name)
- Return type
list
>>> from bhive.account import Account >>> account = Account("bhive.app") >>> account.get_owner_history() []
-
get_rc
()¶ Return RC of account
-
get_rc_manabar
()¶ Returns current_mana and max_mana for RC
-
get_recharge_time
(voting_power_goal=100, starting_voting_power=None)¶ Returns the account voting power recharge time in minutes
- Parameters
voting_power_goal (float) – voting power goal in percentage (default is 100)
starting_voting_power (float) – returns recharge time if current voting power is the provided value.
-
get_recharge_time_str
(voting_power_goal=100, starting_voting_power=None)¶ Returns the account recharge time as string
- Parameters
voting_power_goal (float) – voting power goal in percentage (default is 100)
starting_voting_power (float) – returns recharge time if current voting power is the provided value.
-
get_recharge_timedelta
(voting_power_goal=100, starting_voting_power=None)¶ Returns the account voting power recharge time as timedelta object
- Parameters
voting_power_goal (float) – voting power goal in percentage (default is 100)
starting_voting_power (float) – returns recharge time if current voting power is the provided value.
-
get_recovery_request
(account=None)¶ Returns the recovery request for an account
- Parameters
account (str) – When set, a different account is used for the request (Default is object account name)
- Return type
list
>>> from bhive.account import Account >>> account = Account("bhive.app") >>> account.get_recovery_request() []
-
get_reputation
()¶ Returns the account reputation in the (hiveio) normalized form
-
get_savings_withdrawals
(direction='from', account=None)¶ Returns the list of savings withdrawls for an account.
- Parameters
account (str) – When set, a different account is used for the request (Default is object account name)
direction (str) – Can be either from or to (only non appbase nodes)
- Return type
list
>>> from bhive.account import Account >>> account = Account("bhive.app") >>> account.get_savings_withdrawals() []
-
get_similar_account_names
(limit=5)¶ Returns
limit
account names similar to the current account name as a list- Parameters
limit (int) – limits the number of accounts, which will be returned
- Returns
Similar account names as list
- Return type
list
This is a wrapper around
bhive.blockchain.Blockchain.get_similar_account_names()
using the current account name as reference.
Returns a list of tags used by an author.
- Parameters
account (str) – When set, a different account is used for the request (Default is object account name)
- Return type
list
>>> from bhive.account import Account >>> from bhive import Hive >>> hv = Hive() >>> account = Account("bhive.app", hive_instance=hv) >>> account.get_tags_used_by_author() []
-
get_vesting_delegations
(start_account='', limit=100, account=None)¶ Returns the vesting delegations by an account.
- Parameters
account (str) – When set, a different account is used for the request (Default is object account name)
start_account (str) – delegatee to start with, leave empty to start from the first by name
limit (int) – maximum number of results to return
- Return type
list
>>> from bhive.account import Account >>> account = Account("bhive.app") >>> account.get_vesting_delegations() []
-
get_vests
(only_own_vests=False)¶ Returns the account vests
-
get_vote
(comment)¶ Returns a vote if the account has already voted for comment.
- Parameters
comment (str, Comment) – can be a Comment object or a authorpermlink
-
get_vote_pct_for_HBD
(hbd, voting_power=None, hive_power=None, not_broadcasted_vote=True)¶ Returns the voting percentage needed to have a vote worth a given number of HBD.
If the returned number is bigger than 10000 or smaller than -10000, the given HBD value is too high for that account
- Parameters
hbd (str, int, amount.Amount) – The amount of HBD in vote value
-
get_voting_power
(with_regeneration=True)¶ Returns the account voting power in the range of 0-100%
-
get_voting_value_HBD
(voting_weight=100, voting_power=None, hive_power=None, not_broadcasted_vote=True)¶ Returns the account voting value in HBD
-
get_withdraw_routes
(account=None)¶ Returns the withdraw routes for an account.
- Parameters
account (str) – When set, a different account is used for the request (Default is object account name)
- Return type
list
>>> from bhive.account import Account >>> account = Account("bhive.app") >>> account.get_withdraw_routes() []
-
has_voted
(comment)¶ Returns if the account has already voted for comment
- Parameters
comment (str, Comment) – can be a Comment object or a authorpermlink
-
history
(start=None, stop=None, use_block_num=True, only_ops=[], exclude_ops=[], batch_size=1000, raw_output=False)¶ Returns a generator for individual account transactions. The earlist operation will be first. This call can be used in a
for
loop.- Parameters
start (int, datetime) – start number/date of transactions to return (optional)
stop (int, datetime) – stop number/date of transactions to return (optional)
use_block_num (bool) – if true, start and stop are block numbers, otherwise virtual OP count numbers.
only_ops (array) – Limit generator by these operations (optional)
exclude_ops (array) – Exclude thse operations from generator (optional)
batch_size (int) – internal api call batch size (optional)
raw_output (bool) – if False, the output is a dict, which includes all values. Otherwise, the output is list.
Note
only_ops and exclude_ops takes an array of strings: The full list of operation ID’s can be found in bhivebase.operationids.ops. Example: [‘transfer’, ‘vote’]
acc = Account("gtg") max_op_count = acc.virtual_op_count() # Returns the 100 latest operations acc_op = [] for h in acc.history(start=max_op_count - 99, stop=max_op_count, use_block_num=False): acc_op.append(h) len(acc_op)
100
acc = Account("test") max_block = 21990141 # Returns the account operation inside the last 100 block. This can be empty. acc_op = [] for h in acc.history(start=max_block - 99, stop=max_block, use_block_num=True): acc_op.append(h) len(acc_op)
0
acc = Account("test") start_time = datetime(2018, 3, 1, 0, 0, 0) stop_time = datetime(2018, 3, 2, 0, 0, 0) # Returns the account operation from 1.4.2018 back to 1.3.2018 acc_op = [] for h in acc.history(start=start_time, stop=stop_time): acc_op.append(h) len(acc_op)
0
-
history_reverse
(start=None, stop=None, use_block_num=True, only_ops=[], exclude_ops=[], batch_size=1000, raw_output=False)¶ Returns a generator for individual account transactions. The latest operation will be first. This call can be used in a
for
loop.- Parameters
start (int, datetime) – start number/date of transactions to return. If negative the virtual_op_count is added. (optional)
stop (int, datetime) – stop number/date of transactions to return. If negative the virtual_op_count is added. (optional)
use_block_num (bool) – if true, start and stop are block numbers, otherwise virtual OP count numbers.
only_ops (array) – Limit generator by these operations (optional)
exclude_ops (array) – Exclude thse operations from generator (optional)
batch_size (int) – internal api call batch size (optional)
raw_output (bool) – if False, the output is a dict, which includes all values. Otherwise, the output is list.
Note
only_ops and exclude_ops takes an array of strings: The full list of operation ID’s can be found in bhivebase.operationids.ops. Example: [‘transfer’, ‘vote’]
acc = Account("gtg") max_op_count = acc.virtual_op_count() # Returns the 100 latest operations acc_op = [] for h in acc.history_reverse(start=max_op_count, stop=max_op_count - 99, use_block_num=False): acc_op.append(h) len(acc_op)
100
max_block = 21990141 acc = Account("test") # Returns the account operation inside the last 100 block. This can be empty. acc_op = [] for h in acc.history_reverse(start=max_block, stop=max_block-100, use_block_num=True): acc_op.append(h) len(acc_op)
0
acc = Account("test") start_time = datetime(2018, 4, 1, 0, 0, 0) stop_time = datetime(2018, 3, 1, 0, 0, 0) # Returns the account operation from 1.4.2018 back to 1.3.2018 acc_op = [] for h in acc.history_reverse(start=start_time, stop=stop_time): acc_op.append(h) len(acc_op)
0
-
property
hp
¶ Returns the accounts Hive Power
-
interest
()¶ Calculate interest for an account
- Parameters
account (str) – Account name to get interest for
- Return type
dictionary
Sample output:
{ 'interest': 0.0, 'last_payment': datetime.datetime(2018, 1, 26, 5, 50, 27, tzinfo=<UTC>), 'next_payment': datetime.datetime(2018, 2, 25, 5, 50, 27, tzinfo=<UTC>), 'next_payment_duration': datetime.timedelta(-65, 52132, 684026), 'interest_rate': 0.0 }
-
property
is_fully_loaded
¶ Is this instance fully loaded / e.g. all data available?
- Return type
bool
-
json
()¶
-
property
json_metadata
¶
-
mute
(mute, account=None)¶ Mute another account
- Parameters
mute (str) – Mute this account
account (str) – (optional) the account to allow access to (defaults to
default_account
)
-
property
name
¶ Returns the account name
-
print_info
(force_refresh=False, return_str=False, use_table=False, **kwargs)¶ Prints import information about the account
-
property
profile
¶ Returns the account profile
-
refresh
()¶ Refresh/Obtain an account’s data from the API server
-
property
rep
¶ Returns the account reputation
-
reply_history
(limit=None, start_author=None, start_permlink=None, account=None)¶ Stream the replies to an account in reverse time order.
Note
RPC nodes keep a limited history of entries for the replies to an author. Older replies to an account may not be available via this call due to these node limitations.
- Parameters
limit (int) – (optional) stream the latest limit replies. If unset (default), all available replies are streamed.
start_author (str) – (optional) start streaming the replies from this author. start_permlink=None (default) starts with the latest available entry. If set, start_permlink has to be set as well.
start_permlink (str) – (optional) start streaming the replies from this permlink. start_permlink=None (default) starts with the latest available entry. If set, start_author has to be set as well.
account (str) – (optional) the account to get replies to (defaults to
default_account
)
comment_history_reverse example:
from bhive.account import Account acc = Account("ned") for reply in acc.reply_history(limit=10): print(reply)
-
property
reward_balances
¶
-
property
saving_balances
¶
-
set_withdraw_vesting_route
(to, percentage=100, account=None, auto_vest=False, **kwargs)¶ Set up a vesting withdraw route. When vesting shares are withdrawn, they will be routed to these accounts based on the specified weights.
- Parameters
to (str) – Recipient of the vesting withdrawal
percentage (float) – The percent of the withdraw to go to the ‘to’ account.
account (str) – (optional) the vesting account
auto_vest (bool) – Set to true if the ‘to’ account should receive the VESTS as VESTS, or false if it should receive them as HIVE. (defaults to
False
)
-
property
total_balances
¶
-
transfer
(to, amount, asset, memo='', account=None, **kwargs)¶ Transfer an asset to another account.
- Parameters
to (str) – Recipient
amount (float) – Amount to transfer
asset (str) – Asset to transfer
memo (str) – (optional) Memo, may begin with # for encrypted messaging
account (str) – (optional) the source account for the transfer if not
default_account
Transfer example:
from bhive.account import Account from bhive import Hive active_wif = "5xxxx" hv = Hive(keys=[active_wif]) acc = Account("test", hive_instance=hv) acc.transfer("test1", 1, "HIVE", "test")
-
transfer_from_savings
(amount, asset, memo, request_id=None, to=None, account=None, **kwargs)¶ Withdraw HBD or HIVE from ‘savings’ account.
- Parameters
amount (float) – HIVE or HBD amount
asset (float) – ‘HIVE’ or ‘HBD’
memo (str) – (optional) Memo
request_id (str) – (optional) identifier for tracking or cancelling the withdrawal
to (str) – (optional) the source account for the transfer if not
default_account
account (str) – (optional) the source account for the transfer if not
default_account
-
transfer_to_savings
(amount, asset, memo, to=None, account=None, **kwargs)¶ Transfer HBD or HIVE into a ‘savings’ account.
- Parameters
amount (float) – HIVE or HBD amount
asset (float) – ‘HIVE’ or ‘HBD’
memo (str) – (optional) Memo
to (str) – (optional) the source account for the transfer if not
default_account
account (str) – (optional) the source account for the transfer if not
default_account
-
transfer_to_vesting
(amount, to=None, account=None, **kwargs)¶ Vest HIVE
- Parameters
amount (float) – Amount to transfer
to (str) – Recipient (optional) if not set equal to account
account (str) – (optional) the source account for the transfer if not
default_account
-
type_id
= 2¶
-
unfollow
(unfollow, account=None)¶ Unfollow/Unmute another account’s blog
- Parameters
unfollow (str) – Unfollow/Unmute this account
account (str) – (optional) the account to allow access to (defaults to
default_account
)
-
update_account_jsonmetadata
(metadata, account=None, **kwargs)¶ Update an account’s profile in json_metadata using the posting key
- Parameters
metadata (dict) – The new metadata to use
account (str) – (optional) the account to allow access to (defaults to
default_account
)
-
update_account_keys
(new_password, account=None, **kwargs)¶ Updates all account keys
This method does not add any private keys to your wallet but merely changes the memo public key.
- Parameters
new_password (str) – is used to derive the owner, active, posting and memo key
account (str) – (optional) the account to allow access to (defaults to
default_account
)
-
update_account_metadata
(metadata, account=None, **kwargs)¶ Update an account’s profile in json_metadata
- Parameters
metadata (dict) – The new metadata to use
account (str) – (optional) the account to allow access to (defaults to
default_account
)
-
update_account_profile
(profile, account=None, **kwargs)¶ Update an account’s profile in json_metadata
- Parameters
profile (dict) – The new profile to use
account (str) – (optional) the account to allow access to (defaults to
default_account
)
Sample profile structure:
{ 'name': 'Holger', 'about': 'bhive Developer', 'location': 'Germany', 'profile_image': 'https://c1.staticflickr.com/5/4715/38733717165_7070227c89_n.jpg', 'cover_image': 'https://farm1.staticflickr.com/894/26382750057_69f5c8e568.jpg', 'website': 'https://github.com/thecrazygmn/bhive' }
from bhive.account import Account account = Account("test") profile = account.profile profile["about"] = "test account" account.update_account_profile(profile)
-
update_memo_key
(key, account=None, **kwargs)¶ Update an account’s memo public key
This method does not add any private keys to your wallet but merely changes the memo public key.
- Parameters
key (str) – New memo public key
account (str) – (optional) the account to allow access to (defaults to
default_account
)
Returns true if the signers have enough authority to authorize an account.
- Parameters
keys (list) – public key
account (str) – When set, a different account is used for the request (Default is object account name)
- Return type
dictionary
>>> from bhive.account import Account >>> account = Account("hiveio") >>> print(account.verify_account_authority(["STM7Q2rLBqzPzFeteQZewv9Lu3NLE69fZoLeL6YK59t7UmssCBNTU"])["valid"]) False
-
virtual_op_count
(until=None)¶ Returns the number of individual account transactions
- Return type
list
-
property
vp
¶ Returns the account voting power in the range of 0-100%
-
withdraw_vesting
(amount, account=None, **kwargs)¶ Withdraw VESTS from the vesting account.
- Parameters
amount (float) – number of VESTS to withdraw over a period of 13 weeks
account (str) – (optional) the source account for the transfer if not
default_account
-
class
bhive.account.
Accounts
(name_list, batch_limit=100, lazy=False, full=True, hive_instance=None)¶ Bases:
bhive.account.AccountsObject
Obtain a list of accounts
- Parameters
name_list (list) – list of accounts to fetch
batch_limit (int) – (optional) maximum number of accounts to fetch per call, defaults to 100
hive_instance (Hive) – Hive() instance to use when accessing a RPCcreator = Account(creator, hive_instance=self)