> ## Documentation Index
> Fetch the complete documentation index at: https://docs.arzguard.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Получить пользователя

> Возвращает профиль пользователя и, по запросу, страницу записей профиля.

Возвращает профиль пользователя и, по запросу, страницу записей профиля.

## Доступ

В каждом запросе обязателен заголовок `XF-Api-Key`. Примеры используют серверную переменную `$FORUM_API_KEY`; [тип ключа и контекст пользователя](/guard-forum/authentication.md) определяют доступ к данным.

**XF-Api-Key** `string` *required*

Ключ API. Храните его на сервере интеграции; в примере используется переменная окружения.

Обязательные scopes: `user:read`.

При `with_posts=1` дополнительно требуется `profile_post:read`.

## Особенности

На Guard Forum объект `User` расширен: `user_title` может быть строкой или `true`, доступен `time_spent`, а scope `user:promote` влияет на выдачу полей групп. Условия описаны в [расширениях](/guard-forum/extensions.md).

## Параметры

**id** `integer` *required*

ID пользователя. Значение `123` в примере условное.

**with\_posts** `boolean`

При `1` добавляет страницу записей профиля в `profile_posts`; требуется дополнительный scope `profile_post:read`.

**page** `integer`

Номер страницы записей профиля при `with_posts=1`.

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

HTTP `200`. Пример ниже сокращён и содержит только условные данные. Полные объекты и условия видимости полей описаны в [схемах данных](/guard-forum/models.md).

| Поле | Тип | Описание |
| - | - | - |
| `user` | `User` | Объект пользователя `User`. Набор полей зависит от прав и режима выдачи. |
| `profile_posts` | `ProfilePost[]` | Записи выбранной страницы профиля пользователя. Возвращается только при `with_posts=1`. |
| `pagination` | `pagination` | Метаданные страницы: `current_page`, `last_page`, `per_page`, `shown`, `total`. Размер страницы определяется настройками форума. Возвращается только при `with_posts=1`. |

## Ошибки

Стандартный ответ содержит массив `errors` с `code`, `message` и `params`. Проверяйте HTTP-статус и машинный код; [формат и обработка ошибок](/guard-forum/requests-and-errors.md) общие для API.

```bash cURL theme={null}
curl --request GET \
  --header "XF-Api-Key: $FORUM_API_KEY" \
  --header 'Accept: application/json' \
  'https://forum.arzguard.com/api/users/123/?with_posts=1&page=1'
```

```json Сокращённый условный ответ theme={null}
{
  "user": {
    "user_id": 123,
    "username": "example_user"
  },
  "profile_posts": [
    {
      "profile_post_id": 123
    }
  ],
  "pagination": {
    "current_page": 1,
    "last_page": 1,
    "per_page": 20,
    "shown": 1,
    "total": 1
  }
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.