# Sign a transaction

## POST

/v1/transaction/sign

Signs the passed transaction with a key from the wallet, determined by the sender encoded in the transaction.

## Authorizations

- **[api_key](https://dev.algorand.co/reference/rest-api/kmd/#api_key)**

## Request Body

The list of MIME types the operation can consume: application/json

APIV1POSTTransactionSignRequest is the request for `POST /v1/transaction/sign`

object

**public_key**  
PublicKey is an exported ed25519 PublicKey  
Array<integer>

**transaction**  
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  
string format: byte

**wallet_handle_token**

string

**wallet_password**

string

## Responses

### 200

Response to `POST /v1/transaction/sign`

The list of MIME types the operation can produce: application/json

APIV1POSTTransactionSignResponse is the response to `POST /v1/transaction/sign`  
friendly: SignTransactionResponse

object

**error**

boolean

**message**

string

**signed_transaction**

string format: byte
