# Счета в криптовалюте

{% hint style="danger" %}
**Внимание -** Данное API ты используешь на свой страх и риск, мы не несем ответственности за сохранность данных созданных тобой счетов через представленное API, но приложим все усилия для их сохранности и безопастности. Ты не должен использовать методы API представленные на этой странице, если их использование нарушает законодательство Украины, Европейского союза или США.
{% endhint %}

{% hint style="info" %}
Все счета отображаются в карточке контакта в личном кабинете. Так же по каждому счету ведется журнал операций.&#x20;
{% endhint %}

## Получить список счетов

<mark style="color:blue;">`GET`</mark> `https://app.onebot.tech/api/v1/getContactCryptoAccounts`

Этот метод позволяет получить список счетов указанного контакта

#### Query Parameters

| Name        | Type    | Description |
| ----------- | ------- | ----------- |
| contact\_id | Integer | ID контакта |

{% tabs %}
{% tab title="200: OK Запрос успешно обработан" %}

```javascript
{
  "data": [
    {
      "id": 2,
      "currency": "BTC",
      "amount": "0.24624642624",
      "created_at": "2022-11-24T11:19:42+00:00",
      "updated_at": "2022-11-24T11:21:57+00:00"
    }
  ]
}
```

{% endtab %}
{% endtabs %}

## Создать счет

<mark style="color:green;">`POST`</mark> `https://app.onebot.tech/api/v1/addContactCryptoAccount`

Этот метод позволяет создать счет для указанного контакта.

#### Request Body

| Name        | Type    | Description             |
| ----------- | ------- | ----------------------- |
| contact\_id | Integer | ID контакта             |
| currency    | String  | Код валюты. Пример: BTC |

{% tabs %}
{% tab title="201: Created Счет успешно создан" %}

```javascript
{
  "data": {
    "id": 2,
    "currency": "BTC",
    "amount": 0,
    "created_at": "2022-11-24T11:19:42+00:00",
    "updated_at": "2022-11-24T11:19:42+00:00"
  }
}
```

{% endtab %}

{% tab title="422: Unprocessable Entity Аккаунт уже существует" %}

```javascript
{
  "errors": {
    "currency": [
      "Account with the currency already exists"
    ]
  }
}
```

{% endtab %}
{% endtabs %}

## Удалить счет

<mark style="color:green;">`POST`</mark> `https://app.onebot.tech/api/v1/deleteContactCryptoAccount`

Этот метод позволяет удалить счет контакта

#### Request Body

| Name        | Type    | Description |
| ----------- | ------- | ----------- |
| account\_id | Integer | ID счета    |

{% tabs %}
{% tab title="204: No Content Счет успешно удален" %}

```javascript
{
    // Response
}
```

{% endtab %}

{% tab title="422: Unprocessable Entity Счет не может быть удален, т.к. имеет положительный баланс." %}

```javascript
{
  "errors": {
    "account_id": [
      "You can not delete the account with a balance 0.24624642624 BTC"
    ]
  }
}
```

{% endtab %}
{% endtabs %}

{% hint style="danger" %}
Счет может быть удален только если имеет нулевой баланс.
{% endhint %}

## Зачислить сумму на счет

<mark style="color:green;">`POST`</mark> `https://app.onebot.tech/api/v1/addFundsToContactCryptoAccount`

Этот метод позволяет зачислить средства на счет контакта

#### Request Body

| Name        | Type    | Description         |
| ----------- | ------- | ------------------- |
| account\_id | Integer | ID счета            |
| amount      | Number  | Сумма транзакции    |
| description | String  | Описание транзакции |

{% tabs %}
{% tab title="200: OK Счет успешно пополнен" %}

```javascript
{
  "data": {
    "id": 2,
    "currency": "BTC",
    "amount": 0.34624642624,
    "created_at": "2022-11-24T11:19:42+00:00",
    "updated_at": "2022-11-24T11:20:18+00:00"
  }
}
```

{% endtab %}
{% endtabs %}

## Списать сумму со счета

<mark style="color:green;">`POST`</mark> `https://app.onebot.tech/api/v1/withdrawFundsFromContactCryptoAccount`

Этот метод позволяет списать средства со счета контакта

#### Request Body

| Name        | Type   | Description         |
| ----------- | ------ | ------------------- |
| account\_id | String | ID счета            |
| amount      | Number | Сумма транзакции    |
| description | String | Описание транзакции |

{% tabs %}
{% tab title="200: OK Списание успешно проведено" %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}
