Skip to content
Primary navigation

Users

List users
client.admin.organization.users.list(UserListParams { after, emails, limit } query?, RequestOptionsoptions?): ConversationCursorPage<OrganizationUser { id, added_at, object, 13 more } >
GET/organization/users
Retrieve user
client.admin.organization.users.retrieve(stringuserID, RequestOptionsoptions?): OrganizationUser { id, added_at, object, 13 more }
GET/organization/users/{user_id}
Modify user
client.admin.organization.users.update(stringuserID, UserUpdateParams { developer_persona, role, role_id, technical_level } body, RequestOptionsoptions?): OrganizationUser { id, added_at, object, 13 more }
POST/organization/users/{user_id}
Delete user
client.admin.organization.users.delete(stringuserID, RequestOptionsoptions?): UserDeleteResponse { id, deleted, object }
DELETE/organization/users/{user_id}
ModelsExpand Collapse
OrganizationUser { id, added_at, object, 13 more }

Represents an individual user within an organization.

id: string

The identifier, which can be referenced in API endpoints

added_at: number

The Unix timestamp (in seconds) of when the user was added.

formatunixtime
object: "organization.user"

The object type, which is always organization.user

api_key_last_used_at?: number | null

The Unix timestamp (in seconds) of the user’s last API key usage.

formatunixtime
created?: number

The Unix timestamp (in seconds) of when the user was created.

formatunixtime
developer_persona?: string | null

The developer persona metadata for the user.

email?: string | null

The email address of the user

is_default?: boolean

Whether this is the organization’s default user.

is_scale_tier_authorized_purchaser?: boolean | null

Whether the user is an authorized purchaser for Scale Tier.

is_scim_managed?: boolean

Whether the user is managed through SCIM.

is_service_account?: boolean

Whether the user is a service account.

name?: string | null

The name of the user

projects?: Projects | null

Projects associated with the user, if included.

data: Array<Data>
id?: string | null
name?: string | null
role?: string | null
object: "list"
role?: string | null

owner or reader

technical_level?: string | null

The technical level metadata for the user.

user?: User { id, object, banned, 5 more }

Nested user details.

id: string
object: "user"
banned?: boolean | null
banned_at?: number | null
formatunixtime
email?: string | null
enabled?: boolean | null
name?: string | null
picture?: string | null
UserDeleteResponse { id, deleted, object }
id: string
deleted: boolean
object: "organization.user.deleted"

UsersRoles

List user organization role assignments
client.admin.organization.users.roles.list(stringuserID, RoleListParams { after, limit, order } query?, RequestOptionsoptions?): NextCursorPage<RoleListResponse { id, created_at, created_by, 8 more } >
GET/organization/users/{user_id}/roles
Assign organization role to user
client.admin.organization.users.roles.create(stringuserID, RoleCreateParams { role_id } body, RequestOptionsoptions?): RoleCreateResponse { object, role, user }
POST/organization/users/{user_id}/roles
Unassign organization role from user
client.admin.organization.users.roles.delete(stringroleID, RoleDeleteParams { user_id } params, RequestOptionsoptions?): RoleDeleteResponse { deleted, object }
DELETE/organization/users/{user_id}/roles/{role_id}
ModelsExpand Collapse
RoleListResponse { id, created_at, created_by, 8 more }

Detailed information about a role assignment entry returned when listing assignments.

id: string

Identifier for the role.

created_at: number | null

When the role was created.

formatunixtime
created_by: string | null

Identifier of the actor who created the role.

created_by_user_obj: Record<string, unknown> | null

User details for the actor that created the role, when available.

description: string | null

Description of the role.

metadata: Record<string, unknown> | null

Arbitrary metadata stored on the role.

name: string

Name of the role.

permissions: Array<string>

Permissions associated with the role.

predefined_role: boolean

Whether the role is predefined by OpenAI.

resource_type: string

Resource type the role applies to.

updated_at: number | null

When the role was last updated.

formatint64
RoleCreateResponse { object, role, user }

Role assignment linking a user to a role.

object: "user.role"

Always user.role.

role: Role { id, description, name, 4 more }

Details about a role that can be assigned through the public Roles API.

user: OrganizationUser { id, added_at, object, 13 more }

Represents an individual user within an organization.

RoleDeleteResponse { deleted, object }

Confirmation payload returned after unassigning a role.

deleted: boolean

Whether the assignment was removed.

object: string

Identifier for the deleted assignment, such as group.role.deleted or user.role.deleted.