# Доступные данные

Список доступных категорий данных для компании.

Возвращает количество доступных записей по различным категориям данных для указанной компании.

## Эндпоинт

```text
GET /api/v1/companies/:company_id/data
```

## Параметры

| Параметр | Тип | Где | Описание |
| --- | --- | --- | --- |
| `company_id` | `integer` | path | Уникальный идентификатор компании. |

## Примеры кода

**Получение доступных данных**

**Python**

```python
import requests

url = 'https://statsnet.co/api/v1/companies/12345/data'
headers = {
  'Authorization': 'Bearer sk_live_YOUR_KEY',
  'Content-Type': 'application/json'
}

response = requests.get(url, headers=headers).json()
print(response)
```

**TypeScript**

```typescript
const url = 'https://statsnet.co/api/v1/companies/12345/data';

const response = await fetch(url, {
headers: {
  'Authorization': 'Bearer sk_live_YOUR_KEY',
  'Content-Type': 'application/json',
},
});

const data = await response.json();
console.log(data);
```

**Go**

```go
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {
	url := "https://statsnet.co/api/v1/companies/12345/data"

	req, _ := http.NewRequest("GET", url, nil)
	req.Header.Set("Authorization", "Bearer sk_live_YOUR_KEY")
	req.Header.Set("Content-Type", "application/json")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()

	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
```

## Ответ

Тело ответа без обёртки `{"ok": ...}`: на верхнем уровне — массивы записей по категориям и объект `meta` со счётчиками. Массивы заполняются только после покупки карточки компании (иначе приходят пустыми/`null`); счётчики в `meta` доступны всегда.

**Успешный ответ**

```json
{
  "bank_accounts": [],
  "stores": [],
  "certs": [],
  "debtors": [],
  "jobs": [],
  "quasi_contracts": [],
  "places": [],
  "states": [],
  "pos_terminals": [],
  "domains": [],
  "scoring": [],
  "gov_loans": [],
  "trademarks": [],
  "counterparties": [],
  "kaspi_shops": [],
  "assets": [{ "type": "Транспортное средство" }],
  "rights": [],
  "farmers": [],
  "fields": [],
  "counterparties_count": 12,
  "meta": {
    "bank_accounts_count": 3,
    "stores_count": 0,
    "certs_count": 2,
    "debtors_count": 1,
    "quasi_contracts_count": 0,
    "jobs_count": 5,
    "places_count": 0,
    "states_count": 0,
    "pos_terminals_count": 0,
    "domains_count": 1,
    "scoring_count": 0,
    "assets_count": 1,
    "rights_count": 0,
    "farmers_count": 0,
    "fields_count": 0,
    "gov_loans_count": 0,
    "trademarks_count": 0,
    "counterparties_count": 12,
    "kaspi_count": 0
  }
}
```

| Поле | Тип | Описание |
| --- | --- | --- |
| `bank_accounts`, `stores`, `certs`, `debtors`, `jobs`, `quasi_contracts`, `places`, `states`, `pos_terminals`, `domains`, `scoring`, `gov_loans`, `trademarks`, `counterparties`, `kaspi_shops`, `rights`, `farmers`, `fields` | `array` | Списки записей по категориям данных. |
| `assets` | `array` | Типы активов из налоговых данных (транспорт, недвижимость, земельный участок). |
| `counterparties_count` | `integer` | Количество записей о контрагентах. |
| `meta` | `object` | Счётчики записей по категориям (`*_count`). |

## Обработка ошибок

Ошибки возвращаются в формате `{"status": <HTTP-код>, "message": "<текст>"}`.

**Ответ с ошибкой**

```json
{
  "status": 403,
  "message": "access denied"
}
```
