# Creates an Unsigned Transaction for Splitting a Solana Stake Account

Supports both standard recent blockhash nonces (default) and durable nonces (more information [here](https://solana.com/docs/core/transactions/durable-nonces)):

- For standard recent blockhash nonces, leave `nonce_account` and `nonce_authority` empty.
- For durable nonces, define a `nonce_account`.

## Parameters

### network
- **Type:** string  
- **Enum:** required  
- **Allowed:** `mainnet`, `testnet`, `devnet`  
  
### stake_account
- **Type:** string  
- **Required:** Yes  
- **Description:** Source stake account pubkey  
  
### funding_account_pubkey
- **Type:** string  
- **Description:** Pubkey of the account that will fund the transaction. Defaults to the stake authority of the source stake account.
  
### amount_sol
- **Type:** number  
- **Required:** Yes  
- **Description:** Amount of SOL to split to the new stake account  
  
### nonce_account
- **Type:** string \| null  
- **Description:** Pubkey of the on-chain nonce account. Enables offline signing without the 60–90s blockhash expiry.
  
### nonce_authority
- **Type:** string \| null  
- **Description:** Pubkey of the account authorized to advance the nonce. Defaults to the fee payer if omitted.

## Responses

### 201 Transaction Created

- **Type:** object  
- **Data:** object  
  - **network:**  
    - **Type:** string  
    - **Enum:** Solana network to build transaction for  
    - **Allowed:** `mainnet`, `testnet`, `devnet`  
  - **signing_payload:** string  
  - **unsigned_transaction_serialized:** string  
  - **unsigned_tx_serialized_hex:** string  
  - **unsigned_tx_serialized_base64:** string  
  - **destination_stake_account_pubkey:** string  
  - **last_valid_block_height:** number \| null  
    - **Description:** Block height after which the transaction payload will be expired  
  - **nonce_value:** string \| null  
    - **Description:** The nonce value used as the transaction's blockhash. Present when `nonce_account` is provided.  
  - **is_durable_nonce:** boolean \| null  
    - **Description:** True when a durable nonce is used. `last_valid_block_height` will be null.

### 400 Invalid Request

### 422 Invalid Request

## Example CURL Request

```shell
curl --request POST \
     --url https://api.figment.io/solana/split \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --header 'x-api-key: your-api-key-here' \
     --data '{
  "network": "mainnet"
}'
```

## Example Response

```json
{
  "data": {
    "network": "devnet",
    "signing_payload": "0xSigningPayload",
    "unsigned_transaction_serialized": "0xSerializedTransaction",
    "unsigned_tx_serialized_hex": "0xSerializedTransaction",
    "unsigned_tx_serialized_base64": "0xSerializedTransaction",
    "destination_stake_account_pubkey": "4ca4gDieqrADT2LwvwK2M6qz9WBSJcP6Q2J2MA6PBfzC",
    "last_valid_block_height": 359339325,
    "nonce_value": "GNP8nFAjKFBxL6Bfmti9gBGxCRF7gMaGmEiKfJKpJAaG",
    "is_durable_nonce": true
  }
}
```
