dposlib.ark.builders.v2

transfer

def transfer(amount, address, vendorField=None, expiration=0)

Build a transfer transaction. Emoji can be included in transaction vendorField using unicode formating.

>>> vendorField = u"message with sparkles \u2728"

Arguments:

  • amount float - transaction amount in ark.
  • address str - valid recipient address.
  • vendorField str - vendor field message.
  • expiration float - time of persistance in hour.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

registerSecondSecret

def registerSecondSecret(secondSecret)

Build a second secret registration transaction.

Arguments:

  • secondSecret str - passphrase.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

registerSecondPublicKey

def registerSecondPublicKey(secondPublicKey)

Build a second secret registration transaction.

You must own the secret issuing secondPublicKey

Arguments:

  • secondPublicKey str - public key as hex string.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

registerAsDelegate

def registerAsDelegate(username)

Build a delegate registration transaction.

Arguments:

  • username str - delegate username.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

upVote

def upVote(*usernames)

Build an upvote transaction.

Arguments:

  • usernames iterable - delegate usernames as str iterable.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

downVote

def downVote(*usernames)

Build a downvote transaction.

Arguments:

  • usernames iterable - delegate usernames as str iterable.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

registerMultiSignature

def registerMultiSignature(minSig, *publicKeys)

Build a multisignature registration transaction.

Arguments:

  • minSig int - minimum signature required.
  • publicKeys list of str - public key list.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

registerIpfs

def registerIpfs(ipfs)

Build an IPFS registration transaction.

Arguments:

  • ipfs str - ipfs DAG.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

multiPayment

def multiPayment(*pairs, **kwargs)

Build multi-payment transaction. Emoji can be included in transaction vendorField using unicode formating.

>>> u"message with sparkles \u2728"

Arguments:

  • pairs iterable - recipient-amount pair iterable.
  • vendorField str - vendor field message.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

delegateResignation

def delegateResignation()

Build a delegate resignation transaction.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

htlcSecret

def htlcSecret(secret)

Compute an HTLC secret hex string from passphrase.

Arguments:

  • secret str - passphrase.

Returns:

hex str: HTLC secret.

htlcLock

def htlcLock(amount, address, secret, expiration=24, vendorField=None)

Build an HTLC lock transaction. Emoji can be included in transaction vendorField using unicode formating.

>>> vendorField = u"message with sparkles \u2728"

Arguments:

  • amount float - transaction amount in ark.
  • address str - valid recipient address.
  • secret str - lock passphrase.
  • expiration float - transaction validity in hour.
  • vendorField str - vendor field message.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

htlcClaim

def htlcClaim(txid, secret)

Build an HTLC claim transaction.

Arguments:

  • txid str - htlc lock transaction id.
  • secret str - passphrase used by htlc lock transaction.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

htlcRefund

def htlcRefund(txid)

Build an HTLC refund transaction.

Arguments:

  • txid str - htlc lock transaction id.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

entityRegister

def entityRegister(name, type="business", subtype=0, ipfsData=None)

Build an entity registration.

Arguments:

  • name str - entity name
  • type str - entity type. Possible values are business, product, plugin, module and delegate. Default to business.
  • subtype int - entity subtype
  • ipfsData base58 - ipfs DAG. Default to None.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

entityUpdate

def entityUpdate(registrationId, ipfsData, name=None)

Build an entity update.

Arguments:

  • registrationId str - registration id
  • ipfsData base58 - ipfs DAG. Default to None.
  • name str, optional - entity name

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

entityResign

def entityResign(registrationId)

Build an entity resignation.

Arguments:

  • registrationId str - registration id

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

switchVote

def switchVote(tx, identifier=None)

Transform a dposlib.ark.builders.upVote transaction into a multivote one. It makes the transaction downvote former delegate if any and then apply new vote.

Arguments:

  • tx dposlib.ark.tx.Transaction - upVote transaction.
  • identifier dposlib.ark.tx.Transaction - any identifier accepted by /api/wallets API endpoint. it could be a username, a wallet address or a publicKey.

Returns:

  • dposlib.ark.tx.Transaction - orphan transaction.

burn

def burn(amount, vendorField=None)

Build a burn transaction. ```

Args: amount (float): transaction amount as human value.

Returns: dposlib.ark.tx.Transaction: orphan transaction.