itd-api / UsersResource
Interface: UsersResource
Defined in: resources/users.ts:108
Пользователи: профили, подписки, блокировки, приватность.
Доступна как itd.users.
Extends
BaseResource
Methods
block()
block(user, options?): Promise<void>;Defined in: resources/users.ts:385
Блокирует пользователя.
Parameters
user
string
options?
RequestOptions = {}
Returns
Promise<void>
blocked()
blocked(params?, options?): Promise<Page<UserSummary>>;Defined in: resources/users.ts:402
Загружает заблокированных пользователей. Параметры — как у followers.
Parameters
params?
UserListParams = {}
options?
RequestOptions = {}
Returns
Promise<Page<UserSummary>>
checkUsername()
checkUsername(username, options?): Promise<UsernameAvailability>;Defined in: resources/users.ts:248
Проверяет, свободно ли имя пользователя.
Parameters
username
string
options?
RequestOptions = {}
Returns
Promise<UsernameAvailability>
Example
const { available, reason } = await itd.users.checkUsername('new_name');
if (reason === UsernameUnavailableReason.InvalidFormat) console.log('Неверный формат');createProfile()
createProfile(input, options?): Promise<MyProfile>;Defined in: resources/users.ts:210
Создаёт профиль после регистрации.
Parameters
input
avatar?
string
displayName
string
username
string
options?
RequestOptions = {}
Returns
Promise<MyProfile>
deactivate()
deactivate(options?): Promise<void>;Defined in: resources/users.ts:194
Деактивирует аккаунт. Вернуть его можно через restore.
Parameters
options?
RequestOptions = {}
Returns
Promise<void>
follow()
follow(user, options?): Promise<FollowResult>;Defined in: resources/users.ts:277
Подписывается на пользователя.
У закрытого профиля вместо подписки отправляется заявка — это видно по полю status.
Parameters
user
string
options?
RequestOptions = {}
Returns
Promise<FollowResult>
followers()
followers(
user,
params?,
options?
): Promise<Page<UserSummary>>;Defined in: resources/users.ts:305
Загружает подписчиков пользователя.
Свои подписчики листаются обычным образом: page, limit до 20, hasMore и total.
⚠️ Чужой список сервер не листает. Возвращаются первые 20 записей и только они: параметр page игнорируется (любая страница отдаёт те же записи и pagination.page: 1), limit больше 20 молча уменьшается, а hasMore всегда false.
Числу total доверять тоже не стоит: оно расходится с followersCount из профиля — на проверенных аккаунтах занижено примерно на 1–4%.
Parameters
user
string
params?
UserListParams = {}
options?
RequestOptions = {}
Returns
Promise<Page<UserSummary>>
following()
following(
user,
params?,
options?
): Promise<Page<UserSummary>>;Defined in: resources/users.ts:338
Загружает подписки пользователя. Ограничения те же, что у followers.
Parameters
user
string
params?
UserListParams = {}
options?
RequestOptions = {}
Returns
Promise<Page<UserSummary>>
followStatus()
followStatus(userIds, options?): Promise<Record<string, boolean>>;Defined in: resources/users.ts:376
Проверяет, подписаны ли вы, сразу для нескольких пользователей.
Parameters
userIds
string[]
options?
RequestOptions = {}
Returns
Promise<Record<string, boolean>>
объект «идентификатор пользователя → подписаны ли вы»
Example
const statuses = await itd.users.followStatus([userA, userB]);
// { 'b89dee4f-…': true, '35ea3059-…': false }get()
get(user, options?): Promise<PublicProfile>;Defined in: resources/users.ts:232
Загружает профиль пользователя.
Parameters
user
string
UUID или имя пользователя — подходит и то, и другое
options?
RequestOptions = {}
Returns
Promise<PublicProfile>
Example
const profile = await itd.users.get('nowkie');
await itd.posts.create({ content: 'привет', wallRecipientId: profile.id });getPrivacy()
getPrivacy(options?): Promise<PrivacySettings>;Defined in: resources/users.ts:415
Загружает настройки приватности.
Parameters
options?
RequestOptions = {}
Returns
Promise<PrivacySettings>
iterateBlocked()
iterateBlocked(params?, options?): Paginator<UserSummary>;Defined in: resources/users.ts:407
Перебирает заблокированных. Параметры — как у followers.
Parameters
params?
UserListParams = {}
options?
PaginationOptions = {}
Returns
iterateFollowers()
iterateFollowers(
user,
params?,
options?
): Paginator<UserSummary>;Defined in: resources/users.ts:324
Перебирает подписчиков.
Свой список перебирается целиком. Перебор чужого закончится после первых 20 записей: сервер его не листает — см. followers.
Parameters
user
string
params?
UserListParams = {}
options?
PaginationOptions = {}
Returns
iterateFollowing()
iterateFollowing(
user,
params?,
options?
): Paginator<UserSummary>;Defined in: resources/users.ts:352
Перебирает подписки. Чужой список закончится после первых 20 записей — см. followers.
Parameters
user
string
params?
UserListParams = {}
options?
PaginationOptions = {}
Returns
me()
me(options?): Promise<MyProfile>;Defined in: resources/users.ts:152
Загружает свой профиль — с подпиской и признаком подтверждённого телефона.
Parameters
options?
RequestOptions = {}
Returns
Promise<MyProfile>
pins()
pins(options?): Promise<PinsResult>;Defined in: resources/users.ts:436
Загружает значки профиля и выбранный из них.
activePin — строка-идентификатор, а не объект.
Parameters
options?
RequestOptions = {}
Returns
Promise<PinsResult>
removeBanner()
removeBanner(options?): Promise<MyProfile>;Defined in: resources/users.ts:189
Удаляет баннер профиля, устанавливая bannerId в null.
Parameters
options?
RequestOptions = {}
Returns
Promise<MyProfile>
removePin()
removePin(options?): Promise<void>;Defined in: resources/users.ts:453
Снимает активный значок.
Parameters
options?
RequestOptions = {}
Returns
Promise<void>
restore()
restore(options?): Promise<void>;Defined in: resources/users.ts:202
Восстанавливает деактивированный аккаунт.
Parameters
options?
RequestOptions = {}
Returns
Promise<void>
setBanner()
setBanner(
file,
uploadOptions?,
requestOptions?
): Promise<MyProfile>;Defined in: resources/users.ts:179
Загружает изображение и устанавливает его баннером профиля.
Для установки используется идентификатор, полученный от /api/files/upload. Если файл уже загружен, используйте updateMe: { bannerId: file.id }.
Parameters
file
uploadOptions?
UploadOptions = {}
requestOptions?
RequestOptions = {}
Returns
Promise<MyProfile>
Example
await itd.users.setBanner(file, { filename: 'banner.webp' });setPin()
setPin(slug, options?): Promise<void>;Defined in: resources/users.ts:444
Выбирает активный значок профиля.
Parameters
slug
string
options?
RequestOptions = {}
Returns
Promise<void>
topClans()
topClans(options?): Promise<Clan[]>;Defined in: resources/users.ts:265
Загружает рейтинг кланов.
Parameters
options?
RequestOptions = {}
Returns
Promise<Clan[]>
unblock()
unblock(user, options?): Promise<void>;Defined in: resources/users.ts:394
Снимает блокировку.
Parameters
user
string
options?
RequestOptions = {}
Returns
Promise<void>
unfollow()
unfollow(user, options?): Promise<void>;Defined in: resources/users.ts:286
Отписывается от пользователя.
Parameters
user
string
options?
RequestOptions = {}
Returns
Promise<void>
updateMe()
updateMe(input, options?): Promise<MyProfile>;Defined in: resources/users.ts:160
Обновляет свой профиль. Передавайте только изменяемые поля.
Parameters
input
options?
RequestOptions = {}
Returns
Promise<MyProfile>
updatePrivacy()
updatePrivacy(input, options?): Promise<PrivacySettings>;Defined in: resources/users.ts:423
Обновляет настройки приватности. Передавайте только изменяемые поля.
Parameters
input
options?
RequestOptions = {}
Returns
Promise<PrivacySettings>
whoToFollow()
whoToFollow(options?): Promise<UserSummary[]>;Defined in: resources/users.ts:257
Загружает рекомендации, на кого подписаться.
Parameters
options?
RequestOptions = {}
Returns
Promise<UserSummary[]>