Skip to main content
Glama

Algorand MCP

by GoPlausible
developer:docs:rest-apis:kmd.md30.2 kB
title: kmd --- <a name="paths"></a> ## Paths <a name="swaggerhandler"></a> ### GET /swagger.json Gets the current swagger spec. ``` GET /swagger.json ``` **Description** Returns the entire swagger spec in json. **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|The current swagger spec|string| |**default**|Unknown Error|No Content| **Produces** * `application/json` <a name="generatekey"></a> ### POST /v1/key Generate a key ``` POST /v1/key ``` **Description** 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. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Generate Key Request** <br>*required*|[GenerateKeyRequest](#generatekeyrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/key`|[APIV1POSTKeyResponse](#apiv1postkeyresponse)| **Produces** * `application/json` <a name="deletekey"></a> ### DELETE /v1/key Delete a key ``` DELETE /v1/key ``` **Description** Deletes the key with the passed public key from the wallet. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Delete Key Request** <br>*required*|[DeleteKeyRequest](#deletekeyrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `DELETE /v1/key`|[APIV1DELETEKeyResponse](#apiv1deletekeyresponse)| **Produces** * `application/json` <a name="exportkey"></a> ### POST /v1/key/export Export a key ``` POST /v1/key/export ``` **Description** Export the secret key associated with the passed public key. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Export Key Request** <br>*required*|[ExportKeyRequest](#exportkeyrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/key/export`|[APIV1POSTKeyExportResponse](#apiv1postkeyexportresponse)| **Produces** * `application/json` <a name="importkey"></a> ### POST /v1/key/import Import a key ``` POST /v1/key/import ``` **Description** 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. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Import Key Request** <br>*required*|[ImportKeyRequest](#importkeyrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/key/import`|[APIV1POSTKeyImportResponse](#apiv1postkeyimportresponse)| **Produces** * `application/json` <a name="listkeysinwallet"></a> ### POST /v1/key/list List keys in wallet ``` POST /v1/key/list ``` **Description** Lists all of the public keys in this wallet. All of them have a stored private key. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**List Keys Request** <br>*required*|[ListKeysRequest](#listkeysrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/key/list`|[APIV1POSTKeyListResponse](#apiv1postkeylistresponse)| **Produces** * `application/json` <a name="exportmasterkey"></a> ### POST /v1/master-key/export Export the master derivation key from a wallet ``` POST /v1/master-key/export ``` **Description** 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. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Export Master Key Request** <br>*required*|[ExportMasterKeyRequest](#exportmasterkeyrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/master-key/export`|[APIV1POSTMasterKeyExportResponse](#apiv1postmasterkeyexportresponse)| **Produces** * `application/json` <a name="deletemultisig"></a> ### DELETE /v1/multisig Delete a multisig ``` DELETE /v1/multisig ``` **Description** Deletes multisig preimage information for the passed address from the wallet. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Delete Multisig Request** <br>*required*|[DeleteMultisigRequest](#deletemultisigrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to POST /v1/multisig/delete|[APIV1DELETEMultisigResponse](#apiv1deletemultisigresponse)| **Produces** * `application/json` <a name="exportmultisig"></a> ### POST /v1/multisig/export Export multisig address metadata ``` POST /v1/multisig/export ``` **Description** Given a multisig address whose preimage this wallet stores, returns the information used to generate the address, including public keys, threshold, and multisig version. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Export Multisig Request** <br>*required*|[ExportMultisigRequest](#exportmultisigrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/multisig/export`|[APIV1POSTMultisigExportResponse](#apiv1postmultisigexportresponse)| **Produces** * `application/json` <a name="importmultisig"></a> ### POST /v1/multisig/import Import a multisig account ``` POST /v1/multisig/import ``` **Description** Generates a multisig account from the passed public keys array and multisig metadata, and stores all of this in the wallet. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Import Multisig Request** <br>*required*|[ImportMultisigRequest](#importmultisigrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/multisig/import`|[APIV1POSTMultisigImportResponse](#apiv1postmultisigimportresponse)| **Produces** * `application/json` <a name="listmultisg"></a> ### POST /v1/multisig/list List multisig accounts ``` POST /v1/multisig/list ``` **Description** Lists all of the multisig accounts whose preimages this wallet stores **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**List Multisig Request** <br>*required*|[ListMultisigRequest](#listmultisigrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/multisig/list`|[APIV1POSTMultisigListResponse](#apiv1postmultisiglistresponse)| **Produces** * `application/json` <a name="signmultisigtransaction"></a> ### POST /v1/multisig/sign Sign a multisig transaction ``` POST /v1/multisig/sign ``` **Description** Start a multisig signature, or add a signature to a partially completed multisig signature object. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Sign Multisig Transaction Request** <br>*required*|[SignMultisigRequest](#signmultisigrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/multisig/sign`|[APIV1POSTMultisigTransactionSignResponse](#apiv1postmultisigtransactionsignresponse)| **Produces** * `application/json` <a name="signmultisigprogram"></a> ### POST /v1/multisig/signprogram Sign a program for a multisig account ``` POST /v1/multisig/signprogram ``` **Description** Start a multisig signature, or add a signature to a partially completed multisig signature object. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Sign Multisig Program Request** <br>*required*|[SignProgramMultisigRequest](#signprogrammultisigrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/multisig/signdata`|[APIV1POSTMultisigProgramSignResponse](#apiv1postmultisigprogramsignresponse)| **Produces** * `application/json` <a name="signprogram"></a> ### POST /v1/program/sign Sign program ``` POST /v1/program/sign ``` **Description** Signs the passed program with a key from the wallet, determined by the account named in the request. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Sign Program Request** <br>*required*|[SignProgramRequest](#signprogramrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/data/sign`|[APIV1POSTProgramSignResponse](#apiv1postprogramsignresponse)| **Produces** * `application/json` <a name="signtransaction"></a> ### POST /v1/transaction/sign Sign a transaction ``` POST /v1/transaction/sign ``` **Description** Signs the passed transaction with a key from the wallet, determined by the sender encoded in the transaction. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Sign Transaction Request** <br>*required*|[SignTransactionRequest](#signtransactionrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/transaction/sign`|[APIV1POSTTransactionSignResponse](#apiv1posttransactionsignresponse)| **Produces** * `application/json` <a name="createwallet"></a> ### POST /v1/wallet Create a wallet ``` POST /v1/wallet ``` **Description** Create a new wallet (collection of keys) with the given parameters. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Create Wallet Request** <br>*required*|[CreateWalletRequest](#createwalletrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/wallet`|[APIV1POSTWalletResponse](#apiv1postwalletresponse)| **Produces** * `application/json` <a name="getwalletinfo"></a> ### POST /v1/wallet/info Get wallet info ``` POST /v1/wallet/info ``` **Description** Returns information about the wallet associated with the passed wallet handle token. Additionally returns expiration information about the token itself. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Get Wallet Info Request** <br>*required*|[WalletInfoRequest](#walletinforequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/wallet/info`|[APIV1POSTWalletInfoResponse](#apiv1postwalletinforesponse)| **Produces** * `application/json` <a name="initwallethandletoken"></a> ### POST /v1/wallet/init Initialize a wallet handle token ``` POST /v1/wallet/init ``` **Description** 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`. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Initialize Wallet Handle Token Request** <br>*required*|[InitWalletHandleTokenRequest](#initwallethandletokenrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/wallet/init`|[APIV1POSTWalletInitResponse](#apiv1postwalletinitresponse)| **Produces** * `application/json` <a name="releasewallethandletoken"></a> ### POST /v1/wallet/release Release a wallet handle token ``` POST /v1/wallet/release ``` **Description** Invalidate the passed wallet handle token, making it invalid for use in subsequent requests. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Release Wallet Handle Token Request** <br>*required*|[ReleaseWalletHandleTokenRequest](#releasewallethandletokenrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/wallet/release`|[APIV1POSTWalletReleaseResponse](#apiv1postwalletreleaseresponse)| **Produces** * `application/json` <a name="renamewallet"></a> ### POST /v1/wallet/rename Rename a wallet ``` POST /v1/wallet/rename ``` **Description** Rename the underlying wallet to something else **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Rename Wallet Request** <br>*required*|[RenameWalletRequest](#renamewalletrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `POST /v1/wallet/rename`|[APIV1POSTWalletRenameResponse](#apiv1postwalletrenameresponse)| **Produces** * `application/json` <a name="renewwallethandletoken"></a> ### POST /v1/wallet/renew Renew a wallet handle token ``` POST /v1/wallet/renew ``` **Description** Renew a wallet handle token, increasing its expiration duration to its initial value **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Renew Wallet Handle Token Request** <br>*required*|[RenewWalletHandleTokenRequest](#renewwallethandletokenrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response `POST /v1/wallet/renew`|[APIV1POSTWalletRenewResponse](#apiv1postwalletrenewresponse)| **Produces** * `application/json` <a name="listwallets"></a> ### GET /v1/wallets List wallets ``` GET /v1/wallets ``` **Description** Lists all of the wallets that kmd is aware of. **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**List Wallet Request** <br>*optional*|[ListWalletsRequest](#listwalletsrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `GET /v1/wallets`|[APIV1GETWalletsResponse](#apiv1getwalletsresponse)| **Produces** * `application/json` <a name="getversion"></a> ### GET /versions Retrieves the current version ``` GET /versions ``` **Parameters** |Type|Name|Schema| |---|---|---| |**Body**|**Versions Request** <br>*optional*|[VersionsRequest](#versionsrequest)| **Responses** |HTTP Code|Description|Schema| |---|---|---| |**200**|Response to `GET /versions`|[VersionsResponse](#versionsresponse)| **Produces** * `application/json` <a name="definitions"></a> ## Definitions <a name="apiv1deletekeyresponse"></a> ### APIV1DELETEKeyResponse APIV1DELETEKeyResponse is the response to `DELETE /v1/key` friendly:DeleteKeyResponse |Name|Schema| |---|---| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| <a name="apiv1deletemultisigresponse"></a> ### APIV1DELETEMultisigResponse APIV1DELETEMultisigResponse is the response to POST /v1/multisig/delete` friendly:DeleteMultisigResponse |Name|Schema| |---|---| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| <a name="apiv1getwalletsresponse"></a> ### APIV1GETWalletsResponse APIV1GETWalletsResponse is the response to `GET /v1/wallets` friendly:ListWalletsResponse |Name|Schema| |---|---| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| |**wallets** <br>*optional*|< [APIV1Wallet](#apiv1wallet) > array| <a name="apiv1postkeyexportresponse"></a> ### APIV1POSTKeyExportResponse APIV1POSTKeyExportResponse is the response to `POST /v1/key/export` friendly:ExportKeyResponse |Name|Schema| |---|---| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| |**private_key** <br>*optional*|[PrivateKey](#privatekey)| <a name="apiv1postkeyimportresponse"></a> ### APIV1POSTKeyImportResponse APIV1POSTKeyImportResponse is the response to `POST /v1/key/import` friendly:ImportKeyResponse |Name|Schema| |---|---| |**address** <br>*optional*|string| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| <a name="apiv1postkeylistresponse"></a> ### APIV1POSTKeyListResponse APIV1POSTKeyListResponse is the response to `POST /v1/key/list` friendly:ListKeysResponse |Name|Schema| |---|---| |**addresses** <br>*optional*|< string > array| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| <a name="apiv1postkeyresponse"></a> ### APIV1POSTKeyResponse APIV1POSTKeyResponse is the response to `POST /v1/key` friendly:GenerateKeyResponse |Name|Schema| |---|---| |**address** <br>*optional*|string| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| <a name="apiv1postmasterkeyexportresponse"></a> ### APIV1POSTMasterKeyExportResponse APIV1POSTMasterKeyExportResponse is the response to `POST /v1/master-key/export` friendly:ExportMasterKeyResponse |Name|Schema| |---|---| |**error** <br>*optional*|boolean| |**master_derivation_key** <br>*optional*|[MasterDerivationKey](#masterderivationkey)| |**message** <br>*optional*|string| <a name="apiv1postmultisigexportresponse"></a> ### APIV1POSTMultisigExportResponse APIV1POSTMultisigExportResponse is the response to `POST /v1/multisig/export` friendly:ExportMultisigResponse |Name|Schema| |---|---| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| |**multisig_version** <br>*optional*|integer (uint8)| |**pks** <br>*optional*|< [PublicKey](#publickey) > array| |**threshold** <br>*optional*|integer (uint8)| <a name="apiv1postmultisigimportresponse"></a> ### APIV1POSTMultisigImportResponse APIV1POSTMultisigImportResponse is the response to `POST /v1/multisig/import` friendly:ImportMultisigResponse |Name|Schema| |---|---| |**address** <br>*optional*|string| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| <a name="apiv1postmultisiglistresponse"></a> ### APIV1POSTMultisigListResponse APIV1POSTMultisigListResponse is the response to `POST /v1/multisig/list` friendly:ListMultisigResponse |Name|Schema| |---|---| |**addresses** <br>*optional*|< string > array| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| <a name="apiv1postmultisigprogramsignresponse"></a> ### APIV1POSTMultisigProgramSignResponse APIV1POSTMultisigProgramSignResponse is the response to `POST /v1/multisig/signdata` friendly:SignProgramMultisigResponse |Name|Description|Schema| |---|---|---| |**error** <br>*optional*||boolean| |**message** <br>*optional*||string| |**multisig** <br>*optional*|**Pattern** : `"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==\|[A-Za-z0-9+/]{3}=)?$"`|string (byte)| <a name="apiv1postmultisigtransactionsignresponse"></a> ### APIV1POSTMultisigTransactionSignResponse APIV1POSTMultisigTransactionSignResponse is the response to `POST /v1/multisig/sign` friendly:SignMultisigResponse |Name|Description|Schema| |---|---|---| |**error** <br>*optional*||boolean| |**message** <br>*optional*||string| |**multisig** <br>*optional*|**Pattern** : `"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==\|[A-Za-z0-9+/]{3}=)?$"`|string (byte)| <a name="apiv1postprogramsignresponse"></a> ### APIV1POSTProgramSignResponse APIV1POSTProgramSignResponse is the response to `POST /v1/data/sign` friendly:SignProgramResponse |Name|Description|Schema| |---|---|---| |**error** <br>*optional*||boolean| |**message** <br>*optional*||string| |**sig** <br>*optional*|**Pattern** : `"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==\|[A-Za-z0-9+/]{3}=)?$"`|string (byte)| <a name="apiv1posttransactionsignresponse"></a> ### APIV1POSTTransactionSignResponse APIV1POSTTransactionSignResponse is the response to `POST /v1/transaction/sign` friendly:SignTransactionResponse |Name|Description|Schema| |---|---|---| |**error** <br>*optional*||boolean| |**message** <br>*optional*||string| |**signed_transaction** <br>*optional*|**Pattern** : `"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==\|[A-Za-z0-9+/]{3}=)?$"`|string (byte)| <a name="apiv1postwalletinforesponse"></a> ### APIV1POSTWalletInfoResponse APIV1POSTWalletInfoResponse is the response to `POST /v1/wallet/info` friendly:WalletInfoResponse |Name|Schema| |---|---| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| |**wallet_handle** <br>*optional*|[APIV1WalletHandle](#apiv1wallethandle)| <a name="apiv1postwalletinitresponse"></a> ### APIV1POSTWalletInitResponse APIV1POSTWalletInitResponse is the response to `POST /v1/wallet/init` friendly:InitWalletHandleTokenResponse |Name|Schema| |---|---| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| |**wallet_handle_token** <br>*optional*|string| <a name="apiv1postwalletreleaseresponse"></a> ### APIV1POSTWalletReleaseResponse APIV1POSTWalletReleaseResponse is the response to `POST /v1/wallet/release` friendly:ReleaseWalletHandleTokenResponse |Name|Schema| |---|---| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| <a name="apiv1postwalletrenameresponse"></a> ### APIV1POSTWalletRenameResponse APIV1POSTWalletRenameResponse is the response to `POST /v1/wallet/rename` friendly:RenameWalletResponse |Name|Schema| |---|---| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| |**wallet** <br>*optional*|[APIV1Wallet](#apiv1wallet)| <a name="apiv1postwalletrenewresponse"></a> ### APIV1POSTWalletRenewResponse APIV1POSTWalletRenewResponse is the response to `POST /v1/wallet/renew` friendly:RenewWalletHandleTokenResponse |Name|Schema| |---|---| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| |**wallet_handle** <br>*optional*|[APIV1WalletHandle](#apiv1wallethandle)| <a name="apiv1postwalletresponse"></a> ### APIV1POSTWalletResponse APIV1POSTWalletResponse is the response to `POST /v1/wallet` friendly:CreateWalletResponse |Name|Schema| |---|---| |**error** <br>*optional*|boolean| |**message** <br>*optional*|string| |**wallet** <br>*optional*|[APIV1Wallet](#apiv1wallet)| <a name="apiv1wallet"></a> ### APIV1Wallet APIV1Wallet is the API's representation of a wallet |Name|Schema| |---|---| |**driver_name** <br>*optional*|string| |**driver_version** <br>*optional*|integer (uint32)| |**id** <br>*optional*|string| |**mnemonic_ux** <br>*optional*|boolean| |**name** <br>*optional*|string| |**supported_txs** <br>*optional*|< [TxType](#txtype) > array| <a name="apiv1wallethandle"></a> ### APIV1WalletHandle APIV1WalletHandle includes the wallet the handle corresponds to and the number of number of seconds to expiration |Name|Schema| |---|---| |**expires_seconds** <br>*optional*|integer (int64)| |**wallet** <br>*optional*|[APIV1Wallet](#apiv1wallet)| <a name="createwalletrequest"></a> ### CreateWalletRequest APIV1POSTWalletRequest is the request for `POST /v1/wallet` |Name|Schema| |---|---| |**master_derivation_key** <br>*optional*|[MasterDerivationKey](#masterderivationkey)| |**wallet_driver_name** <br>*optional*|string| |**wallet_name** <br>*optional*|string| |**wallet_password** <br>*optional*|string| <a name="deletekeyrequest"></a> ### DeleteKeyRequest APIV1DELETEKeyRequest is the request for `DELETE /v1/key` |Name|Schema| |---|---| |**address** <br>*optional*|string| |**wallet_handle_token** <br>*optional*|string| |**wallet_password** <br>*optional*|string| <a name="deletemultisigrequest"></a> ### DeleteMultisigRequest APIV1DELETEMultisigRequest is the request for `DELETE /v1/multisig` |Name|Schema| |---|---| |**address** <br>*optional*|string| |**wallet_handle_token** <br>*optional*|string| |**wallet_password** <br>*optional*|string| <a name="digest"></a> ### Digest *Type* : < integer (uint8) > array <a name="exportkeyrequest"></a> ### ExportKeyRequest APIV1POSTKeyExportRequest is the request for `POST /v1/key/export` |Name|Schema| |---|---| |**address** <br>*optional*|string| |**wallet_handle_token** <br>*optional*|string| |**wallet_password** <br>*optional*|string| <a name="exportmasterkeyrequest"></a> ### ExportMasterKeyRequest APIV1POSTMasterKeyExportRequest is the request for `POST /v1/master-key/export` |Name|Schema| |---|---| |**wallet_handle_token** <br>*optional*|string| |**wallet_password** <br>*optional*|string| <a name="exportmultisigrequest"></a> ### ExportMultisigRequest APIV1POSTMultisigExportRequest is the request for `POST /v1/multisig/export` |Name|Schema| |---|---| |**address** <br>*optional*|string| |**wallet_handle_token** <br>*optional*|string| <a name="generatekeyrequest"></a> ### GenerateKeyRequest APIV1POSTKeyRequest is the request for `POST /v1/key` |Name|Schema| |---|---| |**display_mnemonic** <br>*optional*|boolean| |**wallet_handle_token** <br>*optional*|string| <a name="importkeyrequest"></a> ### ImportKeyRequest APIV1POSTKeyImportRequest is the request for `POST /v1/key/import` |Name|Schema| |---|---| |**private_key** <br>*optional*|[PrivateKey](#privatekey)| |**wallet_handle_token** <br>*optional*|string| <a name="importmultisigrequest"></a> ### ImportMultisigRequest APIV1POSTMultisigImportRequest is the request for `POST /v1/multisig/import` |Name|Schema| |---|---| |**multisig_version** <br>*optional*|integer (uint8)| |**pks** <br>*optional*|< [PublicKey](#publickey) > array| |**threshold** <br>*optional*|integer (uint8)| |**wallet_handle_token** <br>*optional*|string| <a name="initwallethandletokenrequest"></a> ### InitWalletHandleTokenRequest APIV1POSTWalletInitRequest is the request for `POST /v1/wallet/init` |Name|Schema| |---|---| |**wallet_id** <br>*optional*|string| |**wallet_password** <br>*optional*|string| <a name="listkeysrequest"></a> ### ListKeysRequest APIV1POSTKeyListRequest is the request for `POST /v1/key/list` |Name|Schema| |---|---| |**wallet_handle_token** <br>*optional*|string| <a name="listmultisigrequest"></a> ### ListMultisigRequest APIV1POSTMultisigListRequest is the request for `POST /v1/multisig/list` |Name|Schema| |---|---| |**wallet_handle_token** <br>*optional*|string| <a name="listwalletsrequest"></a> ### ListWalletsRequest APIV1GETWalletsRequest is the request for `GET /v1/wallets` *Type* : object <a name="masterderivationkey"></a> ### MasterDerivationKey MasterDerivationKey is used to derive ed25519 keys for use in wallets *Type* : < integer (uint8) > array <a name="multisigsig"></a> ### MultisigSig MultisigSig is the structure that holds multiple Subsigs |Name|Schema| |---|---| |**Subsigs** <br>*optional*|< [MultisigSubsig](#multisigsubsig) > array| |**Threshold** <br>*optional*|integer (uint8)| |**Version** <br>*optional*|integer (uint8)| <a name="multisigsubsig"></a> ### MultisigSubsig MultisigSubsig is a struct that holds a pair of public key and signatures signatures may be empty |Name|Schema| |---|---| |**Key** <br>*optional*|[PublicKey](#publickey)| |**Sig** <br>*optional*|[Signature](#signature)| <a name="privatekey"></a> ### PrivateKey *Type* : < integer (uint8) > array <a name="publickey"></a> ### PublicKey *Type* : < integer (uint8) > array <a name="releasewallethandletokenrequest"></a> ### ReleaseWalletHandleTokenRequest APIV1POSTWalletReleaseRequest is the request for `POST /v1/wallet/release` |Name|Schema| |---|---| |**wallet_handle_token** <br>*optional*|string| <a name="renamewalletrequest"></a> ### RenameWalletRequest APIV1POSTWalletRenameRequest is the request for `POST /v1/wallet/rename` |Name|Schema| |---|---| |**wallet_id** <br>*optional*|string| |**wallet_name** <br>*optional*|string| |**wallet_password** <br>*optional*|string| <a name="renewwallethandletokenrequest"></a> ### RenewWalletHandleTokenRequest APIV1POSTWalletRenewRequest is the request for `POST /v1/wallet/renew` |Name|Schema| |---|---| |**wallet_handle_token** <br>*optional*|string| <a name="signmultisigrequest"></a> ### SignMultisigRequest APIV1POSTMultisigTransactionSignRequest is the request for `POST /v1/multisig/sign` |Name|Description|Schema| |---|---|---| |**partial_multisig** <br>*optional*||[MultisigSig](#multisigsig)| |**public_key** <br>*optional*||[PublicKey](#publickey)| |**signer** <br>*optional*||[Digest](#digest)| |**transaction** <br>*optional*|**Pattern** : `"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==\|[A-Za-z0-9+/]{3}=)?$"`|string (byte)| |**wallet_handle_token** <br>*optional*||string| |**wallet_password** <br>*optional*||string| <a name="signprogrammultisigrequest"></a> ### SignProgramMultisigRequest APIV1POSTMultisigProgramSignRequest is the request for `POST /v1/multisig/signprogram` |Name|Description|Schema| |---|---|---| |**address** <br>*optional*||string| |**data** <br>*optional*|**Pattern** : `"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==\|[A-Za-z0-9+/]{3}=)?$"`|string (byte)| |**partial_multisig** <br>*optional*||[MultisigSig](#multisigsig)| |**public_key** <br>*optional*||[PublicKey](#publickey)| |**wallet_handle_token** <br>*optional*||string| |**wallet_password** <br>*optional*||string| <a name="signprogramrequest"></a> ### SignProgramRequest APIV1POSTProgramSignRequest is the request for `POST /v1/program/sign` |Name|Description|Schema| |---|---|---| |**address** <br>*optional*||string| |**data** <br>*optional*|**Pattern** : `"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==\|[A-Za-z0-9+/]{3}=)?$"`|string (byte)| |**wallet_handle_token** <br>*optional*||string| |**wallet_password** <br>*optional*||string| <a name="signtransactionrequest"></a> ### SignTransactionRequest APIV1POSTTransactionSignRequest is the request for `POST /v1/transaction/sign` |Name|Description|Schema| |---|---|---| |**public_key** <br>*optional*||[PublicKey](#publickey)| |**transaction** <br>*optional*|Base64 encoding of msgpack encoding of a `Transaction` object<br>Note: SDK and goal usually generate `SignedTxn` objects<br>in that case, the field `txn` / `Transaction` of the<br>generated `SignedTxn` object needs to be used <br>**Pattern** : `"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==\|[A-Za-z0-9+/]{3}=)?$"`|string (byte)| |**wallet_handle_token** <br>*optional*||string| |**wallet_password** <br>*optional*||string| <a name="signature"></a> ### Signature *Type* : < integer (uint8) > array <a name="txtype"></a> ### TxType TxType is the type of the transaction written to the ledger *Type* : string <a name="versionsrequest"></a> ### VersionsRequest VersionsRequest is the request for `GET /versions` *Type* : object <a name="versionsresponse"></a> ### VersionsResponse VersionsResponse is the response to `GET /versions` friendly:VersionsResponse |Name|Schema| |---|---| |**versions** <br>*optional*|< string > array| <a name="walletinforequest"></a> ### WalletInfoRequest APIV1POSTWalletInfoRequest is the request for `POST /v1/wallet/info` |Name|Schema| |---|---| |**wallet_handle_token** <br>*optional*|string| <a name="ed25519privatekey"></a> ### ed25519PrivateKey *Type* : < integer (uint8) > array <a name="ed25519publickey"></a> ### ed25519PublicKey *Type* : < integer (uint8) > array <a name="ed25519signature"></a> ### ed25519Signature *Type* : < integer (uint8) > array

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/GoPlausible/algorand-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server