=encoding utf8

=head1 NAME

OpenAPI::Client::OpenAI::Path::assistants - Documentation for the /assistants path.

=head1 DESCRIPTION

This document describes the API endpoint at C</assistants>.

See the C<examples/> directory in the distribution for examples of how to use this.

=head2 C<GET /assistants>

Returns a list of assistants.

=head3 Operation ID

C<listAssistants>

    $client->listAssistants( ... );

=head3 Parameters

=over 4

=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<order> (in query) (Optional) - Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.

Type: C<string>

Possible values: C<asc desc>

Default: C<desc>

=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>

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

Type: C<string>


=back


=head3 Responses

=head3 Status Code: C<200>

OK

Content Types:

=over 4

=item * C<application/json>

Example:

    {
       "object" : "list",
       "data" : [
          {
             "temperature" : 1,
             "top_p" : 1,
             "tool_resources" : {
                "code_interpreter" : {
                   "file_ids" : [
                      null
                   ]
                },
                "file_search" : {
                   "vector_store_ids" : [
                      null
                   ]
                }
             },
             "tools" : [
                null
             ]
          }
       ],
       "has_more" : false,
       "first_id" : "asst_abc123",
       "last_id" : "asst_abc456"
    }



=back

=head2 C<POST /assistants>

Create an assistant with a model and instructions.

=head3 Operation ID

C<createAssistant>

    $client->createAssistant( ... );


=head3 Request Body

=head3 Content Type: C<application/json>


=head3 Example:

    {
       "tools" : [
          null
       ],
       "tool_resources" : {
          "code_interpreter" : {
             "file_ids" : [
                null
             ]
          },
          "file_search" : {
             "vector_store_ids" : [
                null
             ],
             "vector_stores" : [
                {
                   "file_ids" : [
                      null
                   ]
                }
             ]
          }
       },
       "top_p" : 1,
       "model" : "gpt-4o",
       "temperature" : 1
    }



=head3 Responses

=head3 Status Code: C<200>

OK

Content Types:

=over 4

=item * C<application/json>

Example:

    {
       "top_p" : 1,
       "tool_resources" : {
          "file_search" : {
             "vector_store_ids" : [
                null
             ]
          },
          "code_interpreter" : {
             "file_ids" : [
                null
             ]
          }
       },
       "temperature" : 1,
       "tools" : [
          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
