Метод возвращает значения основных и дополнительных полей конкретного пользователя.
import { getUserFields } from '@getcourse/sdk'
async function getUserFields(
ctx: app.Ctx,
params: UserParams
): Promise<GcUserInfo>
type UserParams = {userId: number} | {id: number } | { email: string }
interface GcUserInfo {
id: number
deleted: 0 | 1
deleted_at: string | null
profile_image: string | '' | null
status: 'active' | 'deactivated' | 'banned' | 'in_base' | 'invited'
created_at: string
profile_id: number
activated_at: string
first_name: string
last_name: string
country: string | null
city: string | null
phone: string | null
phone_standart: string | null
phone_confirmed: 0 | 1
comment: string
subscribe_status: 'all' | 'no_mailings' | 'disabled'
timezone_offset: number
birthday: string | null // yyyy-mm-dd
language: string | '' | null // ru
gender: 'male' | 'female' | '' | null
email: string
geo_area_id: number | null
role: 'user' | 'teacher' | 'admin' | 'god'
type: string // 'admin'
is_email_confirmed: 0 | 1
partner_user_id: number | null
custom: UserCustomFieldsResult
}
interface UserCustomFieldsResult {
[fieldId: string]: {
name: UserCustomFields['title'],
value: SetUserCustomFieldsParams['fields'][string] | fileUrl,
type: UserCustomFields['type'],
units: UserCustomFields['units']
}
}
Параметр | Тип | Описание |
---|---|---|
ctx | app.Ctx | Контекст запроса |
params | object | Описание смотрим ниже |
params. id | number | Идентификатор пользователя. Может быть пустым |
params.email | string |
В объекте params должен быть указан один из трёх допустимых вариантов. email
используется только если id
не передан.
Ключи объекта – идентификаторы дополнительных полей. Каждое дополнительное поле содержит следующую информацию
Параметр | Тип | Описание |
---|---|---|
name | string | Название поля |
type | string | Тип поля |
units | string или null | Единица измерения. Может быть пустым |
value | number, string или Array | Значение поля. Array – для multi_select |
import { getUserFields } from '@getcourse/sdk'
const userInfo = await getUserFields(ctx, {
userId: 123456,
})
import { getUserFields } from '@getcourse/sdk'
const userInfo = await getUserFields(ctx, {
email: 'user@chaitum.ru',
})