> For the complete documentation index, see [llms.txt](https://docs.usemoon.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.usemoon.ai/sdks/kotlin/accountsapi.md).

# AccountsApi

## AccountsApi

All URIs are relative to *<https://moon-vault-api-git-ew-supabase-migration-moonup.vercel.app>*

| Method                                  | HTTP request                                      | Description |
| --------------------------------------- | ------------------------------------------------- | ----------- |
| [**broadcastTx**](#broadcastTx)         | **POST** /accounts/{accountName}/broadcast-tx     |             |
| [**createAccount**](#createAccount)     | **POST** /accounts                                |             |
| [**deleteAccount**](#deleteAccount)     | **DELETE** /accounts/{accountName}                |             |
| [**deployContract**](#deployContract)   | **POST** /accounts/{accountName}/deploy           |             |
| [**getAccount**](#getAccount)           | **GET** /accounts/{accountName}                   |             |
| [**getBalance**](#getBalance)           | **GET** /accounts/{accountName}/balance           |             |
| [**getNonce**](#getNonce)               | **GET** /accounts/{accountName}/nonce             |             |
| [**listAccounts**](#listAccounts)       | **GET** /accounts                                 |             |
| [**signMessage**](#signMessage)         | **POST** /accounts/{accountName}/sign-message     |             |
| [**signTransaction**](#signTransaction) | **POST** /accounts/{accountName}/sign-transaction |             |
| [**signTypedData**](#signTypedData)     | **POST** /accounts/{accountName}/sign-typed-data  |             |
| [**transferEth**](#transferEth)         | **POST** /accounts/{accountName}/transfer-eth     |             |

## **broadcastTx**

> BroadCastRawTransactionAPIResponse broadcastTx(authorization, accountName, broadcastInput)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = AccountsApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val accountName : kotlin.String = accountName_example // kotlin.String | 
val broadcastInput : BroadcastInput =  // BroadcastInput | 
try {
    val result : BroadCastRawTransactionAPIResponse = apiInstance.broadcastTx(authorization, accountName, broadcastInput)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling AccountsApi#broadcastTx")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling AccountsApi#broadcastTx")
    e.printStackTrace()
}
```

#### Parameters

| Name               | Type                                                 | Description | Notes |
| ------------------ | ---------------------------------------------------- | ----------- | ----- |
| **authorization**  | **kotlin.String**                                    |             |       |
| **accountName**    | **kotlin.String**                                    |             |       |
| **broadcastInput** | [**BroadcastInput**](/sdks/kotlin/broadcastinput.md) |             |       |

#### Return type

[**BroadCastRawTransactionAPIResponse**](/sdks/kotlin/broadcastrawtransactionapiresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **createAccount**

> AccountAPIResponse createAccount(authorization, createAccountInput)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = AccountsApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val createAccountInput : CreateAccountInput =  // CreateAccountInput | 
try {
    val result : AccountAPIResponse = apiInstance.createAccount(authorization, createAccountInput)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling AccountsApi#createAccount")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling AccountsApi#createAccount")
    e.printStackTrace()
}
```

#### Parameters

| Name                   | Type                                                         | Description | Notes |
| ---------------------- | ------------------------------------------------------------ | ----------- | ----- |
| **authorization**      | **kotlin.String**                                            |             |       |
| **createAccountInput** | [**CreateAccountInput**](/sdks/kotlin/createaccountinput.md) |             |       |

#### Return type

[**AccountAPIResponse**](/sdks/kotlin/accountapiresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **deleteAccount**

> AccountAPIResponse deleteAccount(authorization, accountName)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = AccountsApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val accountName : kotlin.String = accountName_example // kotlin.String | 
try {
    val result : AccountAPIResponse = apiInstance.deleteAccount(authorization, accountName)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling AccountsApi#deleteAccount")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling AccountsApi#deleteAccount")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **authorization** | **kotlin.String** |             |       |
| **accountName**   | **kotlin.String** |             |       |

#### Return type

[**AccountAPIResponse**](/sdks/kotlin/accountapiresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **deployContract**

> TransactionAPIResponse deployContract(authorization, accountName, deployInput)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = AccountsApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val accountName : kotlin.String = accountName_example // kotlin.String | 
val deployInput : DeployInput =  // DeployInput | 
try {
    val result : TransactionAPIResponse = apiInstance.deployContract(authorization, accountName, deployInput)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling AccountsApi#deployContract")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling AccountsApi#deployContract")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type                                           | Description | Notes |
| ----------------- | ---------------------------------------------- | ----------- | ----- |
| **authorization** | **kotlin.String**                              |             |       |
| **accountName**   | **kotlin.String**                              |             |       |
| **deployInput**   | [**DeployInput**](/sdks/kotlin/deployinput.md) |             |       |

#### Return type

[**TransactionAPIResponse**](/sdks/kotlin/transactionapiresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **getAccount**

> AccountAPIResponse getAccount(authorization, accountName)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = AccountsApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
val accountName : kotlin.String = accountName_example // kotlin.String | 
try {
    val result : AccountAPIResponse = apiInstance.getAccount(authorization, accountName)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling AccountsApi#getAccount")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling AccountsApi#getAccount")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **authorization** | **kotlin.String** |             |       |
| **accountName**   | **kotlin.String** |             |       |

#### Return type

[**AccountAPIResponse**](/sdks/kotlin/accountapiresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **getBalance**

> BalanceAPIResponse getBalance(accountName, authorization, chainId)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = AccountsApi()
val accountName : kotlin.String = accountName_example // kotlin.String | 
val authorization : kotlin.String = authorization_example // kotlin.String | 
val chainId : kotlin.String = chainId_example // kotlin.String | 
try {
    val result : BalanceAPIResponse = apiInstance.getBalance(accountName, authorization, chainId)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling AccountsApi#getBalance")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling AccountsApi#getBalance")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **accountName**   | **kotlin.String** |             |       |
| **authorization** | **kotlin.String** |             |       |
| **chainId**       | **kotlin.String** |             |       |

#### Return type

[**BalanceAPIResponse**](/sdks/kotlin/balanceapiresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **getNonce**

> NonceAPIResponse getNonce(accountName, authorization)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = AccountsApi()
val accountName : kotlin.String = accountName_example // kotlin.String | 
val authorization : kotlin.String = authorization_example // kotlin.String | 
try {
    val result : NonceAPIResponse = apiInstance.getNonce(accountName, authorization)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling AccountsApi#getNonce")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling AccountsApi#getNonce")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **accountName**   | **kotlin.String** |             |       |
| **authorization** | **kotlin.String** |             |       |

#### Return type

[**NonceAPIResponse**](/sdks/kotlin/nonceapiresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **listAccounts**

> AccountAPIResponse listAccounts(authorization)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = AccountsApi()
val authorization : kotlin.String = authorization_example // kotlin.String | 
try {
    val result : AccountAPIResponse = apiInstance.listAccounts(authorization)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling AccountsApi#listAccounts")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling AccountsApi#listAccounts")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type              | Description | Notes |
| ----------------- | ----------------- | ----------- | ----- |
| **authorization** | **kotlin.String** |             |       |

#### Return type

[**AccountAPIResponse**](/sdks/kotlin/accountapiresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **signMessage**

> SignMessageAPIResponse signMessage(accountName, authorization, signMessage)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = AccountsApi()
val accountName : kotlin.String = accountName_example // kotlin.String | 
val authorization : kotlin.String = authorization_example // kotlin.String | 
val signMessage : SignMessage =  // SignMessage | 
try {
    val result : SignMessageAPIResponse = apiInstance.signMessage(accountName, authorization, signMessage)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling AccountsApi#signMessage")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling AccountsApi#signMessage")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type                                           | Description | Notes |
| ----------------- | ---------------------------------------------- | ----------- | ----- |
| **accountName**   | **kotlin.String**                              |             |       |
| **authorization** | **kotlin.String**                              |             |       |
| **signMessage**   | [**SignMessage**](/sdks/kotlin/signmessage.md) |             |       |

#### Return type

[**SignMessageAPIResponse**](/sdks/kotlin/signmessageapiresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **signTransaction**

> TransactionAPIResponse signTransaction(accountName, authorization, inputBody)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = AccountsApi()
val accountName : kotlin.String = accountName_example // kotlin.String | 
val authorization : kotlin.String = authorization_example // kotlin.String | 
val inputBody : InputBody =  // InputBody | 
try {
    val result : TransactionAPIResponse = apiInstance.signTransaction(accountName, authorization, inputBody)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling AccountsApi#signTransaction")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling AccountsApi#signTransaction")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type                                       | Description | Notes |
| ----------------- | ------------------------------------------ | ----------- | ----- |
| **accountName**   | **kotlin.String**                          |             |       |
| **authorization** | **kotlin.String**                          |             |       |
| **inputBody**     | [**InputBody**](/sdks/kotlin/inputbody.md) |             |       |

#### Return type

[**TransactionAPIResponse**](/sdks/kotlin/transactionapiresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **signTypedData**

> SignMessageAPIResponse signTypedData(accountName, authorization, signTypedData)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = AccountsApi()
val accountName : kotlin.String = accountName_example // kotlin.String | 
val authorization : kotlin.String = authorization_example // kotlin.String | 
val signTypedData : SignTypedData =  // SignTypedData | 
try {
    val result : SignMessageAPIResponse = apiInstance.signTypedData(accountName, authorization, signTypedData)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling AccountsApi#signTypedData")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling AccountsApi#signTypedData")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type                                               | Description | Notes |
| ----------------- | -------------------------------------------------- | ----------- | ----- |
| **accountName**   | **kotlin.String**                                  |             |       |
| **authorization** | **kotlin.String**                                  |             |       |
| **signTypedData** | [**SignTypedData**](/sdks/kotlin/signtypeddata.md) |             |       |

#### Return type

[**SignMessageAPIResponse**](/sdks/kotlin/signmessageapiresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **transferEth**

> TransactionAPIResponse transferEth(accountName, authorization, inputBody)

#### Example

```kotlin
// Import classes:
//import org.usemoonai.moonsdk.infrastructure.*
//import org.usemoonai.moonsdk.models.*

val apiInstance = AccountsApi()
val accountName : kotlin.String = accountName_example // kotlin.String | 
val authorization : kotlin.String = authorization_example // kotlin.String | 
val inputBody : InputBody =  // InputBody | 
try {
    val result : TransactionAPIResponse = apiInstance.transferEth(accountName, authorization, inputBody)
    println(result)
} catch (e: ClientException) {
    println("4xx response calling AccountsApi#transferEth")
    e.printStackTrace()
} catch (e: ServerException) {
    println("5xx response calling AccountsApi#transferEth")
    e.printStackTrace()
}
```

#### Parameters

| Name              | Type                                       | Description | Notes |
| ----------------- | ------------------------------------------ | ----------- | ----- |
| **accountName**   | **kotlin.String**                          |             |       |
| **authorization** | **kotlin.String**                          |             |       |
| **inputBody**     | [**InputBody**](/sdks/kotlin/inputbody.md) |             |       |

#### Return type

[**TransactionAPIResponse**](/sdks/kotlin/transactionapiresponse.md)

#### Authorization

Configure ApiKeyAuth: ApiClient.apiKey\["x-api-key"] = "" ApiClient.apiKeyPrefix\["x-api-key"] = "" Configure BearerAuth: ApiClient.apiKey\["Authorization"] = "" ApiClient.apiKeyPrefix\["Authorization"] = ""

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json
