91 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			91 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 
								 | 
							
								// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
							 | 
						||
| 
								 | 
							
								import { APIResource } from "../../core/resource.mjs";
							 | 
						||
| 
								 | 
							
								import { CursorPage } from "../../core/pagination.mjs";
							 | 
						||
| 
								 | 
							
								import { buildHeaders } from "../../internal/headers.mjs";
							 | 
						||
| 
								 | 
							
								import { path } from "../../internal/utils/path.mjs";
							 | 
						||
| 
								 | 
							
								export class Assistants extends APIResource {
							 | 
						||
| 
								 | 
							
								    /**
							 | 
						||
| 
								 | 
							
								     * Create an assistant with a model and instructions.
							 | 
						||
| 
								 | 
							
								     *
							 | 
						||
| 
								 | 
							
								     * @example
							 | 
						||
| 
								 | 
							
								     * ```ts
							 | 
						||
| 
								 | 
							
								     * const assistant = await client.beta.assistants.create({
							 | 
						||
| 
								 | 
							
								     *   model: 'gpt-4o',
							 | 
						||
| 
								 | 
							
								     * });
							 | 
						||
| 
								 | 
							
								     * ```
							 | 
						||
| 
								 | 
							
								     */
							 | 
						||
| 
								 | 
							
								    create(body, options) {
							 | 
						||
| 
								 | 
							
								        return this._client.post('/assistants', {
							 | 
						||
| 
								 | 
							
								            body,
							 | 
						||
| 
								 | 
							
								            ...options,
							 | 
						||
| 
								 | 
							
								            headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
							 | 
						||
| 
								 | 
							
								        });
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    /**
							 | 
						||
| 
								 | 
							
								     * Retrieves an assistant.
							 | 
						||
| 
								 | 
							
								     *
							 | 
						||
| 
								 | 
							
								     * @example
							 | 
						||
| 
								 | 
							
								     * ```ts
							 | 
						||
| 
								 | 
							
								     * const assistant = await client.beta.assistants.retrieve(
							 | 
						||
| 
								 | 
							
								     *   'assistant_id',
							 | 
						||
| 
								 | 
							
								     * );
							 | 
						||
| 
								 | 
							
								     * ```
							 | 
						||
| 
								 | 
							
								     */
							 | 
						||
| 
								 | 
							
								    retrieve(assistantID, options) {
							 | 
						||
| 
								 | 
							
								        return this._client.get(path `/assistants/${assistantID}`, {
							 | 
						||
| 
								 | 
							
								            ...options,
							 | 
						||
| 
								 | 
							
								            headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
							 | 
						||
| 
								 | 
							
								        });
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    /**
							 | 
						||
| 
								 | 
							
								     * Modifies an assistant.
							 | 
						||
| 
								 | 
							
								     *
							 | 
						||
| 
								 | 
							
								     * @example
							 | 
						||
| 
								 | 
							
								     * ```ts
							 | 
						||
| 
								 | 
							
								     * const assistant = await client.beta.assistants.update(
							 | 
						||
| 
								 | 
							
								     *   'assistant_id',
							 | 
						||
| 
								 | 
							
								     * );
							 | 
						||
| 
								 | 
							
								     * ```
							 | 
						||
| 
								 | 
							
								     */
							 | 
						||
| 
								 | 
							
								    update(assistantID, body, options) {
							 | 
						||
| 
								 | 
							
								        return this._client.post(path `/assistants/${assistantID}`, {
							 | 
						||
| 
								 | 
							
								            body,
							 | 
						||
| 
								 | 
							
								            ...options,
							 | 
						||
| 
								 | 
							
								            headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
							 | 
						||
| 
								 | 
							
								        });
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    /**
							 | 
						||
| 
								 | 
							
								     * Returns a list of assistants.
							 | 
						||
| 
								 | 
							
								     *
							 | 
						||
| 
								 | 
							
								     * @example
							 | 
						||
| 
								 | 
							
								     * ```ts
							 | 
						||
| 
								 | 
							
								     * // Automatically fetches more pages as needed.
							 | 
						||
| 
								 | 
							
								     * for await (const assistant of client.beta.assistants.list()) {
							 | 
						||
| 
								 | 
							
								     *   // ...
							 | 
						||
| 
								 | 
							
								     * }
							 | 
						||
| 
								 | 
							
								     * ```
							 | 
						||
| 
								 | 
							
								     */
							 | 
						||
| 
								 | 
							
								    list(query = {}, options) {
							 | 
						||
| 
								 | 
							
								        return this._client.getAPIList('/assistants', (CursorPage), {
							 | 
						||
| 
								 | 
							
								            query,
							 | 
						||
| 
								 | 
							
								            ...options,
							 | 
						||
| 
								 | 
							
								            headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
							 | 
						||
| 
								 | 
							
								        });
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    /**
							 | 
						||
| 
								 | 
							
								     * Delete an assistant.
							 | 
						||
| 
								 | 
							
								     *
							 | 
						||
| 
								 | 
							
								     * @example
							 | 
						||
| 
								 | 
							
								     * ```ts
							 | 
						||
| 
								 | 
							
								     * const assistantDeleted =
							 | 
						||
| 
								 | 
							
								     *   await client.beta.assistants.delete('assistant_id');
							 | 
						||
| 
								 | 
							
								     * ```
							 | 
						||
| 
								 | 
							
								     */
							 | 
						||
| 
								 | 
							
								    delete(assistantID, options) {
							 | 
						||
| 
								 | 
							
								        return this._client.delete(path `/assistants/${assistantID}`, {
							 | 
						||
| 
								 | 
							
								            ...options,
							 | 
						||
| 
								 | 
							
								            headers: buildHeaders([{ 'OpenAI-Beta': 'assistants=v2' }, options?.headers]),
							 | 
						||
| 
								 | 
							
								        });
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								//# sourceMappingURL=assistants.mjs.map
							 |