=encoding utf8

=head1 NAME

OpenAPI::Client::OpenAI::Path::organization-projects-project_id-service_accounts-service_account_id - Documentation for the /organization/projects/{project_id}/service_accounts/{service_account_id} path.

=head1 OPERATIONS

=head2 DELETE /organization/projects/{project_id}/service_accounts/{service_account_id}

=head3 delete-project-service-account

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

Deletes a service account from the project.

Returns confirmation of service account deletion, or an error if the project
is archived (archived projects have no service accounts).

=head4 Path/query parameters

=over

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

=item * C<service_account_id> (in path, required, string) - The ID of the service account.

=back

=head4 Responses

B<200 - Project service account deleted successfully.>

Content-Type: application/json

Example:

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

=head2 GET /organization/projects/{project_id}/service_accounts/{service_account_id}

=head3 retrieve-project-service-account

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

Retrieves a service account in the project.

=head4 Path/query parameters

=over

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

=item * C<service_account_id> (in path, required, string) - The ID of the service account.

=back

=head4 Responses

B<200 - Project service account retrieved successfully.>

Content-Type: application/json

Example:

    {
       "created_at" : 1711471533,
       "id" : "svc_acct_abc",
       "name" : "Service Account",
       "object" : "organization.project.service_account",
       "role" : "owner"
    }

=head2 POST /organization/projects/{project_id}/service_accounts/{service_account_id}

=head3 update-project-service-account

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

Updates a service account in the project.

=head4 Path/query parameters

=over

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

=item * C<service_account_id> (in path, required, string) - The ID of the service account.

=back

=head4 Responses

B<200 - Project service account updated successfully.>

Content-Type: application/json

Example:

    {
       "created_at" : 1711471533,
       "id" : "svc_acct_abc",
       "name" : "Service Account",
       "object" : "organization.project.service_account",
       "role" : "owner"
    }

=head1 SCHEMAS

=head2 ProjectServiceAccount

Properties:

=over

=item * C<created_at> (integer, required) - The Unix timestamp (in seconds) of when the service account was created

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

=item * C<name> (string, required) - The name of the service account

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

Allowed values: organization.project.service_account

=item * C<role> (string, required) - C<owner> or C<member>

Allowed values: owner, member

=back

=head2 ProjectServiceAccountDeleteResponse

Properties:

=over

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

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

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

Allowed values: organization.project.service_account.deleted

=back

=head2 UpdateProjectServiceAccountBody

Properties:

=over

=item * C<name> (string) - The updated service account name.

=item * C<role> (string) - The updated service account role.

Allowed values: member, owner

=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
