for KMD HTTP API
v0.0.1Authentication
api-keyAuthapiKeyAPI Key: api-key in header
API Reference
Swagger
Gets the current swagger spec.
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Returns the entire swagger spec in json.
Response
The current swagger spec
Unknown Error
Key
Generate a key
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Generates the next key in the deterministic key sequence (as determined by the master derivation key) and adds it to the wallet, returning the public key.
Body
APIV1POSTKeyRequest is the request for POST /v1/key
display_mnemonicbooleanwallet_handle_tokenstringResponse
Response to POST /v1/key
Export a key
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Export the secret key associated with the passed public key.
Body
APIV1POSTKeyExportRequest is the request for POST /v1/key/export
addressstringwallet_handle_tokenstringwallet_passwordstringResponse
Response to POST /v1/key/export
Import a key
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Import an externally generated key into the wallet. Note that if you wish to back up the imported key, you must do so by backing up the entire wallet database, because imported keys were not derived from the wallet's master derivation key.
Body
APIV1POSTKeyImportRequest is the request for POST /v1/key/import
private_keyArray<integer>wallet_handle_tokenstringResponse
Response to POST /v1/key/import
List keys in wallet
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Lists all of the public keys in this wallet. All of them have a stored private key.
Body
APIV1POSTKeyListRequest is the request for POST /v1/key/list
wallet_handle_tokenstringResponse
Response to POST /v1/key/list
Master-key
Export the master derivation key from a wallet
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Export the master derivation key from the wallet. This key is a master "backup" key for the underlying wallet. With it, you can regenerate all of the wallets that have been generated with this wallet's POST /v1/key endpoint. This key will not allow you to recover keys imported from other wallets, however.
Body
APIV1POSTMasterKeyExportRequest is the request for POST /v1/master-key/export
wallet_handle_tokenstringwallet_passwordstringResponse
Response to POST /v1/master-key/export
Multisig
Export multisig address metadata
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Given a multisig address whose preimage this wallet stores, returns the information used to generate the address, including public keys, threshold, and multisig version.
Body
APIV1POSTMultisigExportRequest is the request for POST /v1/multisig/export
addressstringwallet_handle_tokenstringResponse
Response to POST /v1/multisig/export
Import a multisig account
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Generates a multisig account from the passed public keys array and multisig metadata, and stores all of this in the wallet.
Body
APIV1POSTMultisigImportRequest is the request for POST /v1/multisig/import
multisig_versioninteger<uint8>pksArray<PublicKey>thresholdinteger<uint8>wallet_handle_tokenstringResponse
Response to POST /v1/multisig/import
List multisig accounts
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Lists all of the multisig accounts whose preimages this wallet stores
Body
APIV1POSTMultisigListRequest is the request for POST /v1/multisig/list
wallet_handle_tokenstringResponse
Response to POST /v1/multisig/list
Sign a multisig transaction
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Start a multisig signature, or add a signature to a partially completed multisig signature object.
Body
APIV1POSTMultisigTransactionSignRequest is the request for POST /v1/multisig/sign
partial_multisigMultisigSigMultisigSig is the structure that holds multiple Subsigs
public_keyArray<integer>signerArray<integer>transactionstring<byte>wallet_handle_tokenstringwallet_passwordstringResponse
Response to POST /v1/multisig/sign
Sign a program for a multisig account
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Start a multisig signature, or add a signature to a partially completed multisig signature object.
Body
APIV1POSTMultisigProgramSignRequest is the request for POST /v1/multisig/signprogram
addressstringdatastring<byte>partial_multisigMultisigSigMultisigSig is the structure that holds multiple Subsigs
public_keyArray<integer>wallet_handle_tokenstringwallet_passwordstringResponse
Response to POST /v1/multisig/signdata
Program
Sign program
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Signs the passed program with a key from the wallet, determined by the account named in the request.
Body
APIV1POSTProgramSignRequest is the request for POST /v1/program/sign
addressstringdatastring<byte>wallet_handle_tokenstringwallet_passwordstringResponse
Response to POST /v1/data/sign
Transaction
Sign a transaction
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Signs the passed transaction with a key from the wallet, determined by the sender encoded in the transaction.
Body
APIV1POSTTransactionSignRequest is the request for POST /v1/transaction/sign
public_keyArray<integer>transactionstring<byte>Base64 encoding of msgpack encoding of a Transaction object
Note: SDK and goal usually generate SignedTxn objects
in that case, the field txn / Transaction of the
generated SignedTxn object needs to be used
wallet_handle_tokenstringwallet_passwordstringResponse
Response to POST /v1/transaction/sign
Wallet
Create a wallet
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Create a new wallet (collection of keys) with the given parameters.
Body
APIV1POSTWalletRequest is the request for POST /v1/wallet
master_derivation_keyArray<integer>MasterDerivationKey is used to derive ed25519 keys for use in wallets
wallet_driver_namestringwallet_namestringwallet_passwordstringResponse
Response to POST /v1/wallet
Get wallet info
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Returns information about the wallet associated with the passed wallet handle token. Additionally returns expiration information about the token itself.
Body
APIV1POSTWalletInfoRequest is the request for POST /v1/wallet/info
wallet_handle_tokenstringResponse
Response to POST /v1/wallet/info
Initialize a wallet handle token
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Unlock the wallet and return a wallet handle token that can be used for subsequent operations. These tokens expire periodically and must be renewed. You can POST the token to /v1/wallet/info to see how much time remains until expiration, and renew it with /v1/wallet/renew. When you're done, you can invalidate the token with /v1/wallet/release.
Body
APIV1POSTWalletInitRequest is the request for POST /v1/wallet/init
wallet_idstringwallet_passwordstringResponse
Response to POST /v1/wallet/init
Release a wallet handle token
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Invalidate the passed wallet handle token, making it invalid for use in subsequent requests.
Body
APIV1POSTWalletReleaseRequest is the request for POST /v1/wallet/release
wallet_handle_tokenstringResponse
Response to POST /v1/wallet/release
Rename a wallet
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Rename the underlying wallet to something else
Body
APIV1POSTWalletRenameRequest is the request for POST /v1/wallet/rename
wallet_idstringwallet_namestringwallet_passwordstringResponse
Response to POST /v1/wallet/rename
Renew a wallet handle token
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Renew a wallet handle token, increasing its expiration duration to its initial value
Body
APIV1POSTWalletRenewRequest is the request for POST /v1/wallet/renew
wallet_handle_tokenstringResponse
Response POST /v1/wallet/renew
Wallets
List wallets
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Lists all of the wallets that kmd is aware of.
Body
APIV1GETWalletsRequest is the request for GET /v1/wallets
Response
Response to GET /v1/wallets
Versions
Retrieves the current version
Authorizations
ApiKeyAuthApiKeyAuthapi-key string
NOWNodes API key passed in the api-key header.
Body
VersionsRequest is the request for GET /versions
Response
Response to GET /versions