# BitcoinApi

## BitcoinApi

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

| Method                                                | HTTP request                            | Description |
| ----------------------------------------------------- | --------------------------------------- | ----------- |
| [**createBitcoinAccount**](#createBitcoinAccount)     | **POST** /bitcoin                       |             |
| [**getBitcoinAccount**](#getBitcoinAccount)           | **GET** /bitcoin/{accountName}          |             |
| [**listBitcoinAccounts**](#listBitcoinAccounts)       | **GET** /bitcoin                        |             |
| [**signBitcoinTransaction**](#signBitcoinTransaction) | **POST** /bitcoin/{accountName}/sign-tx |             |

## **createBitcoinAccount**

> AccountAPIResponse createBitcoinAccount(authorization, bitcoinInput)

#### Example

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

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

#### Parameters

| Name              | Type                                                                 | Description | Notes |
| ----------------- | -------------------------------------------------------------------- | ----------- | ----- |
| **authorization** | **kotlin.String**                                                    |             |       |
| **bitcoinInput**  | [**BitcoinInput**](https://docs.usemoon.ai/sdks/kotlin/bitcoininput) |             |       |

#### Return type

[**AccountAPIResponse**](https://docs.usemoon.ai/sdks/kotlin/accountapiresponse)

#### 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

## **getBitcoinAccount**

> AccountAPIResponse getBitcoinAccount(authorization, accountName)

#### Example

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

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

#### Parameters

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

#### Return type

[**AccountAPIResponse**](https://docs.usemoon.ai/sdks/kotlin/accountapiresponse)

#### 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

## **listBitcoinAccounts**

> AccountAPIResponse listBitcoinAccounts(authorization)

#### Example

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

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

#### Parameters

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

#### Return type

[**AccountAPIResponse**](https://docs.usemoon.ai/sdks/kotlin/accountapiresponse)

#### 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

## **signBitcoinTransaction**

> BitcoinAPIResponse signBitcoinTransaction(authorization, accountName, bitcoinTransactionInput)

#### Example

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

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

#### Parameters

| Name                        | Type                                                                                       | Description | Notes |
| --------------------------- | ------------------------------------------------------------------------------------------ | ----------- | ----- |
| **authorization**           | **kotlin.String**                                                                          |             |       |
| **accountName**             | **kotlin.String**                                                                          |             |       |
| **bitcoinTransactionInput** | [**BitcoinTransactionInput**](https://docs.usemoon.ai/sdks/kotlin/bitcointransactioninput) |             |       |

#### Return type

[**BitcoinAPIResponse**](https://docs.usemoon.ai/sdks/kotlin/bitcoinapiresponse)

#### 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
