=encoding utf8

=head1 NAME

OpenAPI::Client::OpenAI::Path::organization-users-user_id - Documentation for the /organization/users/{user_id} path.

=head1 OPERATIONS

=head2 DELETE /organization/users/{user_id}

=head3 delete-user

  $client->delete_user({
      body => { ... },
  });

Deletes a user from the organization.

=head4 Path/query parameters

=over

=item * C<user_id> (in path, required, string) - The ID of the user.

=back

=head4 Responses

B<200 - User deleted successfully.>

Content-Type: application/json

Example:

    {
       "deleted" : false,
       "id" : "string",
       "object" : "organization.user.deleted"
    }

=head2 GET /organization/users/{user_id}

=head3 retrieve-user

  $client->retrieve_user({
      body => { ... },
  });

Retrieves a user by their identifier.

=head4 Path/query parameters

=over

=item * C<user_id> (in path, required, string) - The ID of the user.

=back

=head4 Responses

B<200 - User retrieved successfully.>

Content-Type: application/json

Example:

    {
       "added_at" : 1711471533,
       "email" : "user@example.com",
       "id" : "user_abc",
       "name" : "First Last",
       "object" : "organization.user",
       "role" : "owner"
    }

=head2 POST /organization/users/{user_id}

=head3 modify-user

  $client->modify_user({
      body => { ... },
  });

Modifies a user's role in the organization.

=head4 Path/query parameters

=over

=item * C<user_id> (in path, required, string) - The ID of the user.

=back

=head4 Responses

B<200 - User role updated successfully.>

Content-Type: application/json

Example:

    {
       "added_at" : 1711471533,
       "email" : "user@example.com",
       "id" : "user_abc",
       "name" : "First Last",
       "object" : "organization.user",
       "role" : "owner"
    }

=head1 SCHEMAS

=head2 User

Properties:

=over

=item * C<added_at> (integer, required) - The Unix timestamp (in seconds) of when the user was added.

=item * C<api_key_last_used_at> (anyOf) - The Unix timestamp (in seconds) of the user's last API key usage.

=item * C<created> (integer) - The Unix timestamp (in seconds) of when the user was created.

=item * C<developer_persona> (anyOf) - The developer persona metadata for the user.

=item * C<email> (anyOf) - The email address of the user

=item * C<id> (string, required) - The identifier, which can be referenced in API endpoints

=item * C<is_default> (boolean) - Whether this is the organization's default user.

=item * C<is_scale_tier_authorized_purchaser> (anyOf) - Whether the user is an authorized purchaser for Scale Tier.

=item * C<is_scim_managed> (boolean) - Whether the user is managed through SCIM.

=item * C<is_service_account> (boolean) - Whether the user is a service account.

=item * C<name> (anyOf) - The name of the user

=item * C<object> (string, required) - The object type, which is always C<organization.user>

Allowed values: organization.user

=item * C<projects> (anyOf) - Projects associated with the user, if included.

=item * C<role> (anyOf) - C<owner> or C<reader>

=item * C<technical_level> (anyOf) - The technical level metadata for the user.

=item * C<user> (object) - Nested user details.

=back

=head2 UserDeleteResponse

Properties:

=over

=item * C<deleted> (boolean, required)

=item * C<id> (string, required)

=item * C<object> (string, required)

Allowed values: organization.user.deleted

=back

=head2 UserRoleUpdateRequest

Properties:

=over

=item * C<developer_persona> (anyOf) - Developer persona metadata.

=item * C<role> (anyOf) - C<owner> or C<reader>

=item * C<role_id> (anyOf) - Role ID to assign to the user.

=item * C<technical_level> (anyOf) - Technical level metadata.

=back

=head1 SEE ALSO

L<OpenAPI::Client::OpenAI::Path>

=head1 COPYRIGHT AND LICENSE

Copyright (C) 2023-2026 by Nelson Ferraz

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself, either Perl version 5.14.0 or,
at your option, any later version of Perl 5 you may have available.

=cut
