> For the complete documentation index, see [llms.txt](https://sergey-bedihin.gitbook.io/rabota-s-api/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sergey-bedihin.gitbook.io/rabota-s-api/osnovy-raboty-s-api.md).

# Основы работы с API

Что необходимо для получения доступа к API Сам.Бизнес.

API [Сам.Бизнес ](https://самозанятые.рф/business)— универсальное решение для работы бизнеса с онлайн-платежами. API сервиса построено на REST-принципах, работает с реальными объектами и обладает предсказуемым поведением. С помощью нашего API вы можете отправлять запросы на выплаты, создавать реестры,добавлять самозанятых, выгружать отчеты и многое другое. API в качестве основного протокола использует HTTP, и подходит для разработки на любом языке программирования, который умеет работать с HTTP-библиотеками (cURL и другими).

{% hint style="info" %}
API endpoint: <https://business.selfwork.ru/selfemployed/business/v1/>
{% endhint %}

API поддерживает POST, PUT, GET-запросы. POST-запросы используют JSON-аргументы, GET-запросы работают со строками запросов. API всегда возвращает ответ в формате JSON, независимо от типа запроса.

{% hint style="info" %}
Для использования API сервиса, администратору необходимо создать пользователя с соответсвующими правами [(см.здесь)](/rabota-s-api/sozdanie-polzovatelya.md).
{% endhint %}

**Пример запроса на проверку доступности API:**

{% tabs %}
{% tab title="cURL" %}

```bash
curl --location --request GET 'https://business.selfwork.ru/selfemployed/business/v1/check' \
--header 'X-Login: example' \
--header 'X-Password: 591c0bcd4a41137fe9fce94dfba74e24'
```

{% endtab %}

{% tab title="JS" %}

```javascript
var axios = require('axios');

var config = {
  method: 'get',
  url: 'https://business.selfwork.ru/selfemployed/business/v1/check',
  headers: { 
    'X-Login': 'example', 
    'X-Password': '591c0bcd4a41137fe9fce94dfba74e24'
  }
};

axios(config)
.then(function (response) {
  console.log(JSON.stringify(response.data));
})
.catch(function (error) {
  console.log(error);
});

```

{% endtab %}
{% endtabs %}
