# close: закрыть сессию

> POST /v1/browser/close — закрыть вкладку досрочно и вернуть слот пула

Источник: https://docs.parreq.com/browser-close/

Закрывает сессию, не дожидаясь простоя или потолка. Работы здесь нет, только
уборка, поэтому **вызов бесплатный**.

## Запрос

```bash cURL
curl -X POST "https://api.parreq.com/v1/browser/close" \
  -H "Authorization: Bearer pr_ВАШКЛЮЧ" \
  -H "Content-Type: application/json" \
  -d '{"session_id": "bs_9f2a41c7e8b0"}'
```

```python Python
requests.post(
    "https://api.parreq.com/v1/browser/close",
    headers={"Authorization": "Bearer pr_ВАШКЛЮЧ"},
    json={"session_id": session},
    timeout=30,
)
```

```javascript Node
await fetch("https://api.parreq.com/v1/browser/close", {
  method: "POST",
  headers: {
    "Authorization": "Bearer pr_ВАШКЛЮЧ",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ session_id: session }),
});
```

## Параметры

- **`session_id`** (`string`, обязательно, body):
  Идентификатор сессии из `open`.

## Зачем закрывать, если закроется само

Одновременных сессий на весь сервис — четыре. Ваша брошенная сессия держит слот
ещё до десяти секунд простоя, и всё это время место занято — в том числе для
ваших же следующих запросов.

> **Совет.**
>   Закрывайте в `finally`. Сессия, оставленная после исключения, — самая частая
>   причина `sessions_busy` у того же клиента через секунду.

```python
session = open_page(url)["session_id"]
try:
    fill(session, email_ref, "me@example.com")
    click(session, submit_ref)
finally:
    close(session)
```

## Что происходит при закрытии

**1. Вкладка закрывается**

    Страница выгружается, скрипты на ней останавливаются.

**2. Куки чистятся выборочно**

    Всё, кроме поисковых. Подробно — в разделе
    [Сроки жизни и куки](https://docs.parreq.com/browser-lifetime).

**3. Слот возвращается в пул**

    Профиль снова доступен запросам Search и Fetch, и место под новую сессию
    освобождается.

> **Примечание.**
>   Закрывать уже закрытую сессию не ошибка в вашем коде, но ответ придёт с
>   `session_not_found`: её к этому моменту действительно нет. Отдельно
>   обрабатывать этот случай при уборке не нужно.
