Derived Keys Transaction API
Description of endpoints used to construct Derived Key Transactions on the DeSo blockchain
Authorize Derived Key
POST
/api/v0/authorize-derived-key
Create an authorize derived key transaction. Transaction needs to be signed and submitted through api/v0/submit-transaction
before changes come into effect.
Authorize derived key transactions allows another public key to submit transaction on behalf of the owner public key.
Endpoint implementation in backend.
Request Body
OwnerPublicKeyBase58Check*
String
Public key of the derived key owner
DerivedPublicKeyBase58Check*
String
The derived public key
ExpirationBlock*
uint64
Height of block after which this derived key will no longer work.
AccessSignature*
String
The signature of hash(derived key + expiration block) made by the owner.
DeleteKey*
Boolean
The intended operation on the derived key. If true, this derived key will no longer be valid.
MinFeeRateNanosPerKB*
uint64
Rate per KB
TransactionFees
TransactionFee[]
Array of
objects that define additional outputs that need to be added to this transaction
TransactionSpendingLimitHex*
String
Hex string representing a TransactionSpendingLimit struct that will be merged with the TransactionSpendingLimitTracker for this derived key. We require this be sent as a hex in order toguarantee that the AccessHash computed from this value is consistent with what the user is requesting.
Memo
String
Memo to describe the purpose of this derived key
AppName
String
App requested this derived key. This is used if a memo is not provided so a user can remember which app has access with this derived key.
ExtraData
map[string]string
extra data, values must be strings. This is an arbitrary json object that can be used to add extra metadata on a derived key
DerivedKeySignature
Boolean
Set to true if you intend to sign this transaction with the derived public key instead of the owner public key. This will add the DerivedPublicKey to ExtraData
Last updated