=encoding utf8

=head1 NAME

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

=head1 DESCRIPTION

This document describes the API endpoint at C</organization/projects/{project_id}/service_accounts>.

=head1 PATHS


=head2 C<GET /organization/projects/{project_id}/service_accounts>

Returns a list of service accounts in the project.



=head3 Operation ID

C<list-project-service-accounts>

    $client->list-project-service-accounts( ... );

=head3 Parameters

=over 4

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

Type: C<string>



=item * C<limit> (in query) (Optional) - A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.


Type: C<integer>


Default: C<20>


=item * C<after> (in query) (Optional) - A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list.


Type: C<string>



=back


=head3 Responses


=head4 Status Code: C<200>

Project service accounts listed successfully.


=head4 Content Types:

=over 4


=item * C<application/json>

Example (See the L<OpenAI spec for more detail|https://github.com/openai/openai-openapi/blob/master/openapi.yaml>):

    {
       "data" : [
          "{\n    \"object\": \"organization.project.service_account\",\n    \"id\": \"svc_acct_abc\",\n    \"name\": \"Service Account\",\n    \"role\": \"owner\",\n    \"created_at\": 1711471533\n}\n"
       ]
    }


=back

=head4 Status Code: C<400>

Error response when project is archived.


=head4 Content Types:

=over 4


=item * C<application/json>

Example (See the L<OpenAI spec for more detail|https://github.com/openai/openai-openapi/blob/master/openapi.yaml>):

    {
       "error" : null
    }


=back

=head2 C<POST /organization/projects/{project_id}/service_accounts>

Creates a new service account in the project. This also returns an unredacted API key for the service account.



=head3 Operation ID

C<create-project-service-account>

    $client->create-project-service-account( ... );

=head3 Parameters

=over 4

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

Type: C<string>



=back

=head3 Request Body
  
=head3 Content Type: C<application/json>

    
      

      
             

=head3 Responses


=head4 Status Code: C<200>

Project service account created successfully.


=head4 Content Types:

=over 4


=item * C<application/json>

Example (See the L<OpenAI spec for more detail|https://github.com/openai/openai-openapi/blob/master/openapi.yaml>):

    {
       "api_key" : null
    }


=back

=head4 Status Code: C<400>

Error response when project is archived.


=head4 Content Types:

=over 4


=item * C<application/json>

Example (See the L<OpenAI spec for more detail|https://github.com/openai/openai-openapi/blob/master/openapi.yaml>):

    {
       "error" : null
    }


=back

=head1 SEE ALSO

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

=head1 COPYRIGHT AND LICENSE

Copyright (C) 2023-2025 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