getUserFields

Метод возвращает значения основных и дополнительных полей конкретного пользователя.

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']
  }
}

Aргументы

Параметр Тип Описание
ctx app.Ctx Контекст запроса
params object Описание смотрим ниже
params. id number Идентификатор пользователя. Может быть пустым
params.email string Email

В объекте params должен быть указан один из трёх допустимых вариантов. email используется только если id не передан.

Описание объекта UserCustomFieldsResult

Ключи объекта – идентификаторы дополнительных полей. Каждое дополнительное поле содержит следующую информацию

Параметр Тип Описание
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,
})

Вернуть значения основных и дополнительных полей пользователя по его email

import { getUserFields } from '@getcourse/sdk'

const userInfo = await getUserFields(ctx, {
  email: 'user@chaitum.ru',
})

❤️ Made with love on Chatium

ООО "Чатиум"

Информация о компании