import { CursorAndAsyncIterator } from '@cognite/sdk-core'; export interface CursorQueryParameter { /** @example 4zj0Vy2fo0NtNMb229mI9r1V3YG5NBL752kQz1cKtwo */ cursor?: string; } /** * The number of milliseconds since 00:00:00 Thursday, 1 January 1970, Coordinated Universal Time (UTC), minus leap seconds. * @format int64 * @min 0 * @example 1730204346000 */ export type EpochTimestamp = number; /** * The identity type field indicates the type of principal. - `USER`: Human user. - `SERVICE_PRINCIPAL`: Service account. - `INTERNAL_SERVICE`: Internal CDF service. */ export type IdentityType = 'USER' | 'SERVICE_PRINCIPAL' | 'INTERNAL_SERVICE'; /** * The identity type filter field indicates the type of principal the request should be filtered to show. If no value is specified, the default value is `USER`. - `ALL`: All types of principals. - `USER`: Human user. - `SERVICE_PRINCIPAL`: Service account. - `INTERNAL_SERVICE`: Internal CDF service. */ export type IdentityTypeFilter = 'ALL' | 'USER' | 'SERVICE_PRINCIPAL' | 'INTERNAL_SERVICE'; export interface UserIdentifier { /** @example abcd */ userIdentifier: string; } export interface UserProfileItem { /** * The display name for the user. * @example Jane Doe */ displayName?: string | null; /** * The user's email address (if any). The email address is is returned directly from * the identity provider and not guaranteed to be verified. * Note that the email is mutable and can be updated in the identity provider. It should * _not_ be used to uniquely identify as a user. Use the `userIdentifier` property instead. * * @example jane.doe@example.com */ email?: string | null; /** * The user's first name. * @example Jane */ givenName?: string | null; /** * The identity type field indicates the type of principal. * - `USER`: Human user. * - `SERVICE_PRINCIPAL`: Service account. * - `INTERNAL_SERVICE`: Internal CDF service. * */ identityType?: IdentityType; /** * The user's job title. * @example Software Engineer */ jobTitle?: string | null; /** The number of milliseconds since 00:00:00 Thursday, 1 January 1970, Coordinated Universal Time (UTC), minus leap seconds. */ lastUpdatedTime: EpochTimestamp; /** * The user's last name. * @example Doe */ surname?: string | null; /** * Uniquely identifies the principal the profile is associated with. * This property is _guaranteed_ to be immutable. * * @example abcd */ userIdentifier: string; } /** * Array of user identifiers */ export interface UserProfilesByIdsRequest { items?: UserIdentifier[]; } export interface UserProfilesByIdsResponse { items?: UserProfileItem[]; } export interface UserProfilesErrorResponse { error: { code: number; message: string; missing?: UserIdentifier[]; duplicated?: UserIdentifier[]; }; } export interface UserProfilesListResponse extends CursorAndAsyncIterator { } export interface UserProfilesNotFoundResponse { error: { code: number; message: string; }; } export interface UserProfilesSearchRequest { /** * <- Limits the maximum number of results to be returned by single request. The default is 25. * @format int32 * @min 1 * @max 1000 */ limit?: number; search?: { name?: string; }; } export interface UserProfilesSearchResponse { items?: UserProfileItem[]; }