AI · AI
Responses, files, vector stores, and fine-tuning jobs in their own project.
Each user connects their own account. Every call carries both identities — the agent and the person it is acting for — so the agent can never reach past what that individual can already do.
Tokens live in the vault and attach server-side at call time. The agent holds a session, not a secret, and revoking access does not mean rotating a key.
Who asked, which agent acted, which action ran, and the verdict that let it through — one audit trail across every integration, not one per vendor.
Each action is granted on its own. An agent allowed to read is not thereby allowed to write, and the scope beside each row is what the acting user must have connected for it to run at all.
openai_delete_assistants_by_assistant_idWRITEDelete an assistant. via DELETE /assistants/{assistant_id} OpenAI marks this operation deprecated.
openai_delete_audio_voice_consents_by_consent_idWRITEDeletes a voice consent recording. Delete a consent recording that was uploaded for creating custom voices. See the [custom voices guide](/docs/guides/text-to-speech#custom-voices). Custom voices are limited to eligible customers. via DELETE /audio/voice_consents/{consent_id}
openai_delete_chat_completions_by_completion_idWRITEDelete a stored chat completion. Only Chat Completions that have been created with the `store` parameter set to `true` can be deleted. via DELETE /chat/completions/{completion_id}
openai_delete_chatkit_threads_by_thread_idWRITEDelete a ChatKit thread along with its items and stored attachments. via DELETE /chatkit/threads/{thread_id}
openai_delete_containers_by_container_idWRITEDelete Container Delete a container. via DELETE /containers/{container_id}
openai_delete_containers_by_container_id_files_by_file_idWRITEDelete Container File Delete a container file. via DELETE /containers/{container_id}/files/{file_id}
openai_delete_conversations_by_conversation_idWRITEDelete a conversation. Items in the conversation will not be deleted. via DELETE /conversations/{conversation_id}
openai_delete_conversations_by_conversation_id_items_by_item_idWRITEDelete an item from a conversation with the given IDs. via DELETE /conversations/{conversation_id}/items/{item_id}
openai_delete_evals_by_eval_idWRITEDelete an evaluation. via DELETE /evals/{eval_id}
openai_delete_evals_by_eval_id_runs_by_run_idWRITEDelete an eval run. via DELETE /evals/{eval_id}/runs/{run_id}
openai_delete_files_by_file_idWRITEDelete a file and remove it from all vector stores. via DELETE /files/{file_id}
openai_delete_fine_tuning_checkpoints_by_fine_tuned_model_checkpoint_permissions_by_permission_idWRITE**NOTE:** This endpoint requires an [admin API key](../admin-api-keys). Organization owners can use this endpoint to delete a permission for a fine-tuned model checkpoint. via DELETE /fine_tuning/checkpoints/{fine_tuned_model_checkpoint}/permissions/{permission_id}
openai_delete_models_by_modelWRITEDelete a fine-tuned model. You must have the Owner role in your organization to delete a model. via DELETE /models/{model}
openai_delete_organization_admin_api_keys_by_key_idWRITEDelete an organization admin API key Delete the specified admin API key. via DELETE /organization/admin_api_keys/{key_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_certificates_by_certificate_idWRITEDelete a certificate from the organization. The certificate must be inactive for the organization and all projects. via DELETE /organization/certificates/{certificate_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_groups_by_group_idWRITEDeletes a group from the organization. via DELETE /organization/groups/{group_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_groups_by_group_id_roles_by_role_idWRITEUnassigns an organization role from a group within the organization. via DELETE /organization/groups/{group_id}/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_groups_by_group_id_users_by_user_idWRITERemoves a user from a group. via DELETE /organization/groups/{group_id}/users/{user_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_invites_by_invite_idWRITEDelete an invite. If the invite has already been accepted, it cannot be deleted. via DELETE /organization/invites/{invite_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_projects_by_project_id_api_keys_by_api_key_idWRITEDeletes an API key from the project. Returns confirmation of the key deletion, or an error if the key belonged to a service account. via DELETE /organization/projects/{project_id}/api_keys/{api_key_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_projects_by_project_id_groups_by_group_idWRITERevokes a group's access to a project. via DELETE /organization/projects/{project_id}/groups/{group_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_projects_by_project_id_model_permissionsWRITEDeletes model permissions for a project. via DELETE /organization/projects/{project_id}/model_permissions Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_projects_by_project_id_service_accounts_by_service_account_idWRITEDeletes 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). via DELETE /organization/projects/{project_id}/service_accounts/{service_account_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_projects_by_project_id_spend_alerts_by_alert_idWRITEDeletes a project spend alert. via DELETE /organization/projects/{project_id}/spend_alerts/{alert_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_projects_by_project_id_spend_limitWRITEDelete a project's hard spend limit. via DELETE /organization/projects/{project_id}/spend_limit Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_projects_by_project_id_users_by_user_idWRITEDeletes a user from the project. Returns confirmation of project user deletion, or an error if the project is archived (archived projects have no users). via DELETE /organization/projects/{project_id}/users/{user_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_roles_by_role_idWRITEDeletes a custom role from the organization. via DELETE /organization/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_spend_alerts_by_alert_idWRITEDeletes an organization spend alert. via DELETE /organization/spend_alerts/{alert_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_spend_limitWRITEDelete the organization's hard spend limit. via DELETE /organization/spend_limit Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_users_by_user_idWRITEDeletes a user from the organization. via DELETE /organization/users/{user_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_organization_users_by_user_id_roles_by_role_idWRITEUnassigns an organization role from a user within the organization. via DELETE /organization/users/{user_id}/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_projects_by_project_id_groups_by_group_id_roles_by_role_idWRITEUnassigns a project role from a group within a project. via DELETE /projects/{project_id}/groups/{group_id}/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_projects_by_project_id_roles_by_role_idWRITEDeletes a custom role from a project. via DELETE /projects/{project_id}/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_projects_by_project_id_users_by_user_id_roles_by_role_idWRITEUnassigns a project role from a user within a project. via DELETE /projects/{project_id}/users/{user_id}/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_delete_responses_by_response_idWRITEDeletes a model response with the given ID. via DELETE /responses/{response_id}
openai_delete_skills_by_skill_idWRITEDelete a skill by its ID. via DELETE /skills/{skill_id}
openai_delete_skills_by_skill_id_versions_by_versionWRITEDelete a skill version. via DELETE /skills/{skill_id}/versions/{version}
openai_delete_threads_by_thread_idWRITEDelete a thread. via DELETE /threads/{thread_id}
openai_delete_threads_by_thread_id_messages_by_message_idWRITEDeletes a message. via DELETE /threads/{thread_id}/messages/{message_id}
openai_delete_vector_stores_by_vector_store_idWRITEDelete a vector store. via DELETE /vector_stores/{vector_store_id}
openai_delete_vector_stores_by_vector_store_id_files_by_file_idWRITEDelete a vector store file. This will remove the file from the vector store but the file itself will not be deleted. To delete the file, use the [delete file](/docs/api-reference/files/delete) endpoint. via DELETE /vector_stores/{vector_store_id}/files/{file_id}
openai_delete_videos_by_video_idWRITEPermanently delete a completed or failed video and its stored assets. via DELETE /videos/{video_id} OpenAI marks this operation deprecated.
openai_get_assistantsREADReturns a list of assistants. via GET /assistants OpenAI marks this operation deprecated.
openai_get_assistants_by_assistant_idREADRetrieves an assistant. via GET /assistants/{assistant_id} OpenAI marks this operation deprecated.
openai_get_audio_voice_consentsREADReturns a list of voice consent recordings. List consent recordings available to your organization for creating custom voices. See the [custom voices guide](/docs/guides/text-to-speech#custom-voices). Custom voices are limited to eligible customers. via GET /audio/voice_consents
openai_get_audio_voice_consents_by_consent_idREADRetrieves a voice consent recording. Retrieve consent recording metadata used for creating custom voices. See the [custom voices guide](/docs/guides/text-to-speech#custom-voices). Custom voices are limited to eligible customers. via GET /audio/voice_consents/{consent_id}
openai_get_batchesREADList your organization's batches. via GET /batches
openai_get_batches_by_batch_idREADRetrieves a batch. via GET /batches/{batch_id}
openai_get_chat_completionsREADList stored Chat Completions. Only Chat Completions that have been stored with the `store` parameter set to `true` will be returned. via GET /chat/completions
openai_get_chat_completions_by_completion_idREADGet a stored chat completion. Only Chat Completions that have been created with the `store` parameter set to `true` will be returned. via GET /chat/completions/{completion_id}
openai_get_chat_completions_by_completion_id_messagesREADGet the messages in a stored chat completion. Only Chat Completions that have been created with the `store` parameter set to `true` will be returned. via GET /chat/completions/{completion_id}/messages
openai_get_chatkit_threadsREADList ChatKit threads with optional pagination and user filters. via GET /chatkit/threads
openai_get_chatkit_threads_by_thread_idREADRetrieve a ChatKit thread by its identifier. via GET /chatkit/threads/{thread_id}
openai_get_chatkit_threads_by_thread_id_itemsREADList items that belong to a ChatKit thread. via GET /chatkit/threads/{thread_id}/items
openai_get_containersREADList Containers Lists containers. via GET /containers
openai_get_containers_by_container_idREADRetrieve Container Retrieves a container. via GET /containers/{container_id}
openai_get_containers_by_container_id_filesREADList Container files Lists container files. via GET /containers/{container_id}/files
openai_get_containers_by_container_id_files_by_file_idREADRetrieve Container File Retrieves a container file. via GET /containers/{container_id}/files/{file_id}
openai_get_conversations_by_conversation_idREADGet a conversation via GET /conversations/{conversation_id}
openai_get_conversations_by_conversation_id_itemsREADList all items for a conversation with the given ID. via GET /conversations/{conversation_id}/items
openai_get_conversations_by_conversation_id_items_by_item_idREADGet a single item from a conversation with the given IDs. via GET /conversations/{conversation_id}/items/{item_id}
openai_get_evalsREADList evaluations for a project. via GET /evals
openai_get_evals_by_eval_idREADGet an evaluation by ID. via GET /evals/{eval_id}
openai_get_evals_by_eval_id_runsREADGet a list of runs for an evaluation. via GET /evals/{eval_id}/runs
openai_get_evals_by_eval_id_runs_by_run_idREADGet an evaluation run by ID. via GET /evals/{eval_id}/runs/{run_id}
openai_get_evals_by_eval_id_runs_by_run_id_output_itemsREADGet a list of output items for an evaluation run. via GET /evals/{eval_id}/runs/{run_id}/output_items
openai_get_evals_by_eval_id_runs_by_run_id_output_items_by_output_item_idREADGet an evaluation run output item by ID. via GET /evals/{eval_id}/runs/{run_id}/output_items/{output_item_id}
openai_get_filesREADReturns a list of files. via GET /files
openai_get_files_by_file_idREADReturns information about a specific file. via GET /files/{file_id}
openai_get_files_by_file_id_contentREADReturns a response containing the contents of the specified file. via GET /files/{file_id}/content
openai_get_fine_tuning_checkpoints_by_fine_tuned_model_checkpoint_permissionsREAD**NOTE:** This endpoint requires an [admin API key](../admin-api-keys). Organization owners can use this endpoint to view all permissions for a fine-tuned model checkpoint. via GET /fine_tuning/checkpoints/{fine_tuned_model_checkpoint}/permissions
openai_get_fine_tuning_jobsREADList your organization's fine-tuning jobs via GET /fine_tuning/jobs
openai_get_fine_tuning_jobs_by_fine_tuning_job_idREADGet info about a fine-tuning job. [Learn more about fine-tuning](/docs/guides/model-optimization) via GET /fine_tuning/jobs/{fine_tuning_job_id}
openai_get_fine_tuning_jobs_by_fine_tuning_job_id_checkpointsREADList checkpoints for a fine-tuning job. via GET /fine_tuning/jobs/{fine_tuning_job_id}/checkpoints
openai_get_fine_tuning_jobs_by_fine_tuning_job_id_eventsREADGet status updates for a fine-tuning job. via GET /fine_tuning/jobs/{fine_tuning_job_id}/events
openai_get_modelsREADLists the currently available models, and provides basic information about each one such as the owner and availability. via GET /models
openai_get_models_by_modelREADRetrieves a model instance, providing basic information about the model such as the owner and permissioning. via GET /models/{model}
openai_get_organization_admin_api_keysREADList organization API keys Retrieve a paginated list of organization admin API keys. via GET /organization/admin_api_keys Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_admin_api_keys_by_key_idREADRetrieve a single organization API key Get details for a specific organization API key by its ID. via GET /organization/admin_api_keys/{key_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_audit_logsREADList user actions and configuration changes within this organization. via GET /organization/audit_logs Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_certificatesREADList uploaded certificates for this organization. via GET /organization/certificates Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_certificates_by_certificate_idREADGet a certificate that has been uploaded to the organization. You can get a certificate regardless of whether it is active or not. via GET /organization/certificates/{certificate_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_costsREADGet costs details for the organization. via GET /organization/costs Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_data_retentionREADRetrieves organization data retention controls. via GET /organization/data_retention Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_groupsREADLists all groups in the organization. via GET /organization/groups Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_groups_by_group_idREADRetrieves a group. via GET /organization/groups/{group_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_groups_by_group_id_rolesREADLists the organization roles assigned to a group within the organization. via GET /organization/groups/{group_id}/roles Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_groups_by_group_id_roles_by_role_idREADRetrieves an organization role assigned to a group. via GET /organization/groups/{group_id}/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_groups_by_group_id_usersREADLists the users assigned to a group. via GET /organization/groups/{group_id}/users Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_groups_by_group_id_users_by_user_idREADRetrieves a user in a group. via GET /organization/groups/{group_id}/users/{user_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_invitesREADReturns a list of invites in the organization. via GET /organization/invites Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_invites_by_invite_idREADRetrieves an invite. via GET /organization/invites/{invite_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projectsREADReturns a list of projects. via GET /organization/projects Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_idREADRetrieves a project. via GET /organization/projects/{project_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_api_keysREADReturns a list of API keys in the project. via GET /organization/projects/{project_id}/api_keys Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_api_keys_by_api_key_idREADRetrieves an API key in the project. via GET /organization/projects/{project_id}/api_keys/{api_key_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_certificatesREADList certificates for this project. via GET /organization/projects/{project_id}/certificates Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_data_retentionREADRetrieves project data retention controls. via GET /organization/projects/{project_id}/data_retention Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_groupsREADLists the groups that have access to a project. via GET /organization/projects/{project_id}/groups Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_groups_by_group_idREADRetrieves a project's group. via GET /organization/projects/{project_id}/groups/{group_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_hosted_tool_permissionsREADReturns hosted tool permissions for a project. via GET /organization/projects/{project_id}/hosted_tool_permissions Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_model_permissionsREADReturns model permissions for a project. via GET /organization/projects/{project_id}/model_permissions Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_rate_limitsREADReturns the rate limits per model for a project. via GET /organization/projects/{project_id}/rate_limits Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_service_accountsREADReturns a list of service accounts in the project. via GET /organization/projects/{project_id}/service_accounts Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_service_accounts_by_service_account_idREADRetrieves a service account in the project. via GET /organization/projects/{project_id}/service_accounts/{service_account_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_spend_alertsREADLists project spend alerts. via GET /organization/projects/{project_id}/spend_alerts Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_spend_alerts_by_alert_idREADRetrieves a project spend alert. via GET /organization/projects/{project_id}/spend_alerts/{alert_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_spend_limitREADGet a project's hard spend limit. via GET /organization/projects/{project_id}/spend_limit Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_usersREADReturns a list of users in the project. via GET /organization/projects/{project_id}/users Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_projects_by_project_id_users_by_user_idREADRetrieves a user in the project. via GET /organization/projects/{project_id}/users/{user_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_rolesREADLists the roles configured for the organization. via GET /organization/roles Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_roles_by_role_idREADRetrieves an organization role. via GET /organization/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_spend_alertsREADLists organization spend alerts. via GET /organization/spend_alerts Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_spend_alerts_by_alert_idREADRetrieves an organization spend alert. via GET /organization/spend_alerts/{alert_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_spend_limitREADGet the organization's hard spend limit. via GET /organization/spend_limit Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_usage_audio_speechesREADGet audio speeches usage details for the organization. via GET /organization/usage/audio_speeches Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_usage_audio_transcriptionsREADGet audio transcriptions usage details for the organization. via GET /organization/usage/audio_transcriptions Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_usage_code_interpreter_sessionsREADGet code interpreter sessions usage details for the organization. via GET /organization/usage/code_interpreter_sessions Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_usage_completionsREADGet completions usage details for the organization. via GET /organization/usage/completions Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_usage_embeddingsREADGet embeddings usage details for the organization. via GET /organization/usage/embeddings Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_usage_file_search_callsREADGet file search calls usage details for the organization. via GET /organization/usage/file_search_calls Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_usage_imagesREADGet images usage details for the organization. via GET /organization/usage/images Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_usage_moderationsREADGet moderations usage details for the organization. via GET /organization/usage/moderations Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_usage_vector_storesREADGet vector stores usage details for the organization. via GET /organization/usage/vector_stores Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_usage_web_search_callsREADGet web search calls usage details for the organization. via GET /organization/usage/web_search_calls Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_usersREADLists all of the users in the organization. via GET /organization/users Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_users_by_user_idREADRetrieves a user by their identifier. via GET /organization/users/{user_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_users_by_user_id_rolesREADLists the organization roles assigned to a user within the organization. via GET /organization/users/{user_id}/roles Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_organization_users_by_user_id_roles_by_role_idREADRetrieves an organization role assigned to a user. via GET /organization/users/{user_id}/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_projects_by_project_id_groups_by_group_id_rolesREADLists the project roles assigned to a group within a project. via GET /projects/{project_id}/groups/{group_id}/roles Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_projects_by_project_id_groups_by_group_id_roles_by_role_idREADRetrieves a project role assigned to a group. via GET /projects/{project_id}/groups/{group_id}/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_projects_by_project_id_rolesREADLists the roles configured for a project. via GET /projects/{project_id}/roles Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_projects_by_project_id_roles_by_role_idREADRetrieves a project role. via GET /projects/{project_id}/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_projects_by_project_id_users_by_user_id_rolesREADLists the project roles assigned to a user within a project. via GET /projects/{project_id}/users/{user_id}/roles Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_projects_by_project_id_users_by_user_id_roles_by_role_idREADRetrieves a project role assigned to a user. via GET /projects/{project_id}/users/{user_id}/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_get_responses_by_response_idREADRetrieves a model response with the given ID. via GET /responses/{response_id}
openai_get_responses_by_response_id_input_itemsREADReturns a list of input items for a given response. via GET /responses/{response_id}/input_items
openai_get_skillsREADList all skills for the current project. via GET /skills
openai_get_skills_by_skill_idREADGet a skill by its ID. via GET /skills/{skill_id}
openai_get_skills_by_skill_id_versionsREADList skill versions for a skill. via GET /skills/{skill_id}/versions
openai_get_skills_by_skill_id_versions_by_versionREADGet a specific skill version. via GET /skills/{skill_id}/versions/{version}
openai_get_threads_by_thread_idREADRetrieves a thread. via GET /threads/{thread_id}
openai_get_threads_by_thread_id_messagesREADReturns a list of messages for a given thread. via GET /threads/{thread_id}/messages
openai_get_threads_by_thread_id_messages_by_message_idREADRetrieve a message. via GET /threads/{thread_id}/messages/{message_id}
openai_get_threads_by_thread_id_runsREADReturns a list of runs belonging to a thread. via GET /threads/{thread_id}/runs
openai_get_threads_by_thread_id_runs_by_run_idREADRetrieves a run. via GET /threads/{thread_id}/runs/{run_id}
openai_get_threads_by_thread_id_runs_by_run_id_stepsREADReturns a list of run steps belonging to a run. via GET /threads/{thread_id}/runs/{run_id}/steps
openai_get_threads_by_thread_id_runs_by_run_id_steps_by_step_idREADRetrieves a run step. via GET /threads/{thread_id}/runs/{run_id}/steps/{step_id}
openai_get_vector_storesREADReturns a list of vector stores. via GET /vector_stores
openai_get_vector_stores_by_vector_store_idREADRetrieves a vector store. via GET /vector_stores/{vector_store_id}
openai_get_vector_stores_by_vector_store_id_file_batches_by_batch_idREADRetrieves a vector store file batch. via GET /vector_stores/{vector_store_id}/file_batches/{batch_id}
openai_get_vector_stores_by_vector_store_id_file_batches_by_batch_id_filesREADReturns a list of vector store files in a batch. via GET /vector_stores/{vector_store_id}/file_batches/{batch_id}/files
openai_get_vector_stores_by_vector_store_id_filesREADReturns a list of vector store files. via GET /vector_stores/{vector_store_id}/files
openai_get_vector_stores_by_vector_store_id_files_by_file_idREADRetrieves a vector store file. via GET /vector_stores/{vector_store_id}/files/{file_id}
openai_get_vector_stores_by_vector_store_id_files_by_file_id_contentREADRetrieve the parsed contents of a vector store file. via GET /vector_stores/{vector_store_id}/files/{file_id}/content
openai_get_videosREADList recently generated videos for the current project. via GET /videos OpenAI marks this operation deprecated.
openai_get_videos_by_video_idREADFetch the latest metadata for a generated video. via GET /videos/{video_id} OpenAI marks this operation deprecated.
openai_get_videos_characters_by_character_idREADFetch a character. via GET /videos/characters/{character_id} OpenAI marks this operation deprecated.
openai_post_assistantsWRITECreate an assistant with a model and instructions. via POST /assistants OpenAI marks this operation deprecated.
openai_post_assistants_by_assistant_idWRITEModifies an assistant. via POST /assistants/{assistant_id} OpenAI marks this operation deprecated.
openai_post_audio_voice_consents_by_consent_idWRITEUpdates a voice consent recording (metadata only). Update consent recording metadata used for creating custom voices. This endpoint updates metadata only and does not replace the underlying audio. See the [custom voices guide](/docs/guides/text-to-speech#custom-voices). Custom voices are limited to eligible customers. via POST /audio/voice_consents/{consent_id}
openai_post_batchesWRITECreates and executes a batch from an uploaded file of requests via POST /batches
openai_post_batches_by_batch_id_cancelWRITECancels an in-progress batch. The batch will be in status `cancelling` for up to 10 minutes, before changing to `cancelled`, where it will have partial results (if any) available in the output file. via POST /batches/{batch_id}/cancel
openai_post_chat_completionsWRITE**Starting a new project?** We recommend trying [Responses](/docs/api-reference/responses) to take advantage of the latest OpenAI platform features. Compare [Chat Completions with Responses](/docs/guides/responses-vs-chat-completions?api-mode=responses). --- Creates a model response for the given chat conversation. Learn more in the [text generation](/docs/guides/text-generation), [vision](/docs/guides/vision), and [audio](/docs/guides/audio) guides. Parameter support can differ depending on the model used to generate the response, particularly for newer reasoning models. Parameters that are only supported for reasoning models are noted below. For the current state of unsupported parameters in reasoning models, [refer to the reasoning guide](/docs/guides/reasoning). Returns a chat completion object, or a streamed sequence of chat completion chunk objects if the request is streamed. via POST /chat/completions
openai_post_chat_completions_by_completion_idWRITEModify a stored chat completion. Only Chat Completions that have been created with the `store` parameter set to `true` can be modified. Currently, the only supported modification is to update the `metadata` field. via POST /chat/completions/{completion_id}
openai_post_chatkit_sessionsWRITECreate a ChatKit session. via POST /chatkit/sessions
openai_post_chatkit_sessions_by_session_id_cancelWRITECancel an active ChatKit session and return its most recent metadata. Cancelling prevents new requests from using the issued client secret. via POST /chatkit/sessions/{session_id}/cancel
openai_post_completionsWRITECreates a completion for the provided prompt and parameters. Returns a completion object, or a sequence of completion objects if the request is streamed. via POST /completions
openai_post_containersWRITECreate Container Creates a container. via POST /containers
openai_post_containers_by_container_id_filesWRITECreate a Container File You can send either a multipart/form-data request with the raw file content, or a JSON request with a file ID. Creates a container file. via POST /containers/{container_id}/files
openai_post_conversationsWRITECreate a conversation. via POST /conversations
openai_post_conversations_by_conversation_idWRITEUpdate a conversation via POST /conversations/{conversation_id}
openai_post_conversations_by_conversation_id_itemsWRITECreate items in a conversation with the given ID. via POST /conversations/{conversation_id}/items
openai_post_embeddingsWRITECreates an embedding vector representing the input text. via POST /embeddings
openai_post_evalsWRITECreate the structure of an evaluation that can be used to test a model's performance. An evaluation is a set of testing criteria and the config for a data source, which dictates the schema of the data used in the evaluation. After creating an evaluation, you can run it on different models and model parameters. We support several types of graders and datasources. For more information, see the [Evals guide](/docs/guides/evals). via POST /evals
openai_post_evals_by_eval_idWRITEUpdate certain properties of an evaluation. via POST /evals/{eval_id}
openai_post_evals_by_eval_id_runsWRITEKicks off a new run for a given evaluation, specifying the data source, and what model configuration to use to test. The datasource will be validated against the schema specified in the config of the evaluation. via POST /evals/{eval_id}/runs
openai_post_evals_by_eval_id_runs_by_run_idWRITECancel an ongoing evaluation run. via POST /evals/{eval_id}/runs/{run_id}
openai_post_fine_tuning_alpha_graders_runWRITERun a grader. via POST /fine_tuning/alpha/graders/run
openai_post_fine_tuning_alpha_graders_validateWRITEValidate a grader. via POST /fine_tuning/alpha/graders/validate
openai_post_fine_tuning_checkpoints_by_fine_tuned_model_checkpoint_permissionsWRITE**NOTE:** Calling this endpoint requires an [admin API key](../admin-api-keys). This enables organization owners to share fine-tuned models with other projects in their organization. via POST /fine_tuning/checkpoints/{fine_tuned_model_checkpoint}/permissions
openai_post_fine_tuning_jobsWRITECreates a fine-tuning job which begins the process of creating a new model from a given dataset. Response includes details of the enqueued job including job status and the name of the fine-tuned models once complete. [Learn more about fine-tuning](/docs/guides/model-optimization) via POST /fine_tuning/jobs
openai_post_fine_tuning_jobs_by_fine_tuning_job_id_cancelWRITEImmediately cancel a fine-tune job. via POST /fine_tuning/jobs/{fine_tuning_job_id}/cancel
openai_post_fine_tuning_jobs_by_fine_tuning_job_id_pauseWRITEPause a fine-tune job. via POST /fine_tuning/jobs/{fine_tuning_job_id}/pause
openai_post_fine_tuning_jobs_by_fine_tuning_job_id_resumeWRITEResume a fine-tune job. via POST /fine_tuning/jobs/{fine_tuning_job_id}/resume
openai_post_images_editsWRITECreates an edited or extended image given one or more source images and a prompt. This endpoint supports GPT Image models (`gpt-image-1.5`, `gpt-image-1`, `gpt-image-1-mini`, and `chatgpt-image-latest`) and `dall-e-2`. You can call this endpoint with either: - `multipart/form-data`: use binary uploads via `image` (and optional `mask`). - `application/json`: use `images` (and optional `mask`) as references with either `image_url` or `file_id`. Note that JSON requests use `images` (array) instead of the multipart `image` field. via POST /images/edits
openai_post_images_generationsWRITECreates an image given a prompt. [Learn more](/docs/guides/images). via POST /images/generations
openai_post_moderationsWRITEClassifies if text and/or image inputs are potentially harmful. Learn more in the [moderation guide](/docs/guides/moderation). via POST /moderations
openai_post_organization_admin_api_keysWRITECreate an organization admin API key Create a new admin-level API key for the organization. via POST /organization/admin_api_keys Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_certificatesWRITEUpload a certificate to the organization. This does **not** automatically activate the certificate. Organizations can upload up to 50 certificates. via POST /organization/certificates Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_certificates_activateWRITEActivate certificates at the organization level. You can atomically and idempotently activate up to 10 certificates at a time. via POST /organization/certificates/activate Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_certificates_by_certificate_idWRITEModify a certificate. Note that only the name can be modified. via POST /organization/certificates/{certificate_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_certificates_deactivateWRITEDeactivate certificates at the organization level. You can atomically and idempotently deactivate up to 10 certificates at a time. via POST /organization/certificates/deactivate Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_data_retentionWRITEUpdates organization data retention controls. via POST /organization/data_retention Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_groupsWRITECreates a new group in the organization. via POST /organization/groups Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_groups_by_group_idWRITEUpdates a group's information. via POST /organization/groups/{group_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_groups_by_group_id_rolesWRITEAssigns an organization role to a group within the organization. via POST /organization/groups/{group_id}/roles Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_groups_by_group_id_usersWRITEAdds a user to a group. via POST /organization/groups/{group_id}/users Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_invitesWRITECreate an invite for a user to the organization. The invite must be accepted by the user before they have access to the organization. via POST /organization/invites Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projectsWRITECreate a new project in the organization. Projects can be created and archived, but cannot be deleted. via POST /organization/projects Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_idWRITEModifies a project in the organization. via POST /organization/projects/{project_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_archiveWRITEArchives a project in the organization. Archived projects cannot be used or updated. via POST /organization/projects/{project_id}/archive Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_certificates_activateWRITEActivate certificates at the project level. You can atomically and idempotently activate up to 10 certificates at a time. via POST /organization/projects/{project_id}/certificates/activate Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_certificates_deactivateWRITEDeactivate certificates at the project level. You can atomically and idempotently deactivate up to 10 certificates at a time. via POST /organization/projects/{project_id}/certificates/deactivate Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_data_retentionWRITEUpdates project data retention controls. via POST /organization/projects/{project_id}/data_retention Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_groupsWRITEGrants a group access to a project. via POST /organization/projects/{project_id}/groups Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_hosted_tool_permissionsWRITEUpdates hosted tool permissions for a project. via POST /organization/projects/{project_id}/hosted_tool_permissions Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_model_permissionsWRITEUpdates model permissions for a project. via POST /organization/projects/{project_id}/model_permissions Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_rate_limits_by_rate_limit_idWRITEUpdates a project rate limit. via POST /organization/projects/{project_id}/rate_limits/{rate_limit_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_service_accountsWRITECreates a new service account in the project. By default, this also returns an unredacted API key for the service account. via POST /organization/projects/{project_id}/service_accounts Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_service_accounts_by_service_account_idWRITEUpdates a service account in the project. via POST /organization/projects/{project_id}/service_accounts/{service_account_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_service_accounts_by_service_account_id_api_keysWRITECreates an API key for a service account in the project. via POST /organization/projects/{project_id}/service_accounts/{service_account_id}/api_keys Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_spend_alertsWRITECreates a project spend alert. via POST /organization/projects/{project_id}/spend_alerts Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_spend_alerts_by_alert_idWRITEUpdates a project spend alert. via POST /organization/projects/{project_id}/spend_alerts/{alert_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_spend_limitWRITECreate or replace a project's hard spend limit. via POST /organization/projects/{project_id}/spend_limit Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_usersWRITEAdds a user to the project. Users must already be members of the organization to be added to a project. via POST /organization/projects/{project_id}/users Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_projects_by_project_id_users_by_user_idWRITEModifies a user's role in the project. via POST /organization/projects/{project_id}/users/{user_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_rolesWRITECreates a custom role for the organization. via POST /organization/roles Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_roles_by_role_idWRITEUpdates an existing organization role. via POST /organization/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_spend_alertsWRITECreates an organization spend alert. via POST /organization/spend_alerts Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_spend_alerts_by_alert_idWRITEUpdates an organization spend alert. via POST /organization/spend_alerts/{alert_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_spend_limitWRITECreate or replace the organization's hard spend limit. via POST /organization/spend_limit Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_users_by_user_idWRITEModifies a user's role in the organization. via POST /organization/users/{user_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_organization_users_by_user_id_rolesWRITEAssigns an organization role to a user within the organization. via POST /organization/users/{user_id}/roles Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_projects_by_project_id_groups_by_group_id_rolesWRITEAssigns a project role to a group within a project. via POST /projects/{project_id}/groups/{group_id}/roles Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_projects_by_project_id_rolesWRITECreates a custom role for a project. via POST /projects/{project_id}/roles Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_projects_by_project_id_roles_by_role_idWRITEUpdates an existing project role. via POST /projects/{project_id}/roles/{role_id} Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_projects_by_project_id_users_by_user_id_rolesWRITEAssigns a project role to a user within a project. via POST /projects/{project_id}/users/{user_id}/roles Requires an ORGANIZATION ADMIN API key (Organization settings > Admin keys); an ordinary project API key answers 403 here.
openai_post_realtime_calls_by_call_id_acceptWRITEAccept an incoming SIP call and configure the realtime session that will handle it. via POST /realtime/calls/{call_id}/accept
openai_post_realtime_calls_by_call_id_hangupWRITEEnd an active Realtime API call, whether it was initiated over SIP or WebRTC. via POST /realtime/calls/{call_id}/hangup
openai_post_realtime_calls_by_call_id_referWRITETransfer an active SIP call to a new destination using the SIP REFER verb. via POST /realtime/calls/{call_id}/refer
openai_post_realtime_calls_by_call_id_rejectWRITEDecline an incoming SIP call by returning a SIP status code to the caller. via POST /realtime/calls/{call_id}/reject
openai_post_realtime_client_secretsWRITECreate a Realtime client secret with an associated session configuration. Client secrets are short-lived tokens that can be passed to a client app, such as a web frontend or mobile client, which grants access to the Realtime API without leaking your main API key. You can configure a custom TTL for each client secret. You can also attach session configuration options to the client secret, which will be applied to any sessions created using that client secret, but these can also be overridden by the client connection. [Learn more about authentication with client secrets over WebRTC](/docs/guides/realtime-webrtc). Returns the created client secret and the effective session object. The client secret is a string that looks like `ek_1234`. via POST /realtime/client_secrets
openai_post_realtime_sessionsWRITECreate an ephemeral API token for use in client-side applications with the Realtime API. Can be configured with the same session parameters as the `session.update` client event. It responds with a session object, plus a `client_secret` key which contains a usable ephemeral API token that can be used to authenticate browser clients for the Realtime API. Returns the created Realtime session object, plus an ephemeral key. via POST /realtime/sessions
openai_post_realtime_transcription_sessionsWRITECreate an ephemeral API token for use in client-side applications with the Realtime API specifically for realtime transcriptions. Can be configured with the same session parameters as the `transcription_session.update` client event. It responds with a session object, plus a `client_secret` key which contains a usable ephemeral API token that can be used to authenticate browser clients for the Realtime API. Returns the created Realtime transcription session object, plus an ephemeral key. via POST /realtime/transcription_sessions
openai_post_realtime_translations_client_secretsWRITECreate a Realtime translation client secret with an associated translation session configuration. Client secrets are short-lived tokens that can be passed to a client app, such as a web frontend or mobile client, which grants access to the Realtime Translation API without leaking your main API key. You can configure a custom TTL for each client secret. Returns the created client secret and the effective translation session object. The client secret is a string that looks like `ek_1234`. via POST /realtime/translations/client_secrets
openai_post_responsesWRITECreates a model response. Provide [text](/docs/guides/text) or [image](/docs/guides/images) inputs to generate [text](/docs/guides/text) or [JSON](/docs/guides/structured-outputs) outputs. Have the model call your own [custom code](/docs/guides/function-calling) or use built-in [tools](/docs/guides/tools) like [web search](/docs/guides/tools-web-search) or [file search](/docs/guides/tools-file-search) to use your own data as input for the model's response. via POST /responses
openai_post_responses_by_response_id_cancelWRITECancels a model response with the given ID. Only responses created with the `background` parameter set to `true` can be cancelled. [Learn more](/docs/guides/background). via POST /responses/{response_id}/cancel
openai_post_responses_compactWRITECompact a conversation. Returns a compacted response object. Learn when and how to compact long-running conversations in the [conversation state guide](/docs/guides/conversation-state#managing-the-context-window). For ZDR-compatible compaction details, see [Compaction (advanced)](/docs/guides/conversation-state#compaction-advanced). via POST /responses/compact
openai_post_responses_input_tokensWRITEReturns input token counts of the request. Returns an object with `object` set to `response.input_tokens` and an `input_tokens` count. via POST /responses/input_tokens
openai_post_skills_by_skill_idWRITEUpdate the default version pointer for a skill. via POST /skills/{skill_id}
openai_post_threadsWRITECreate a thread. via POST /threads
openai_post_threads_by_thread_idWRITEModifies a thread. via POST /threads/{thread_id}
openai_post_threads_by_thread_id_messagesWRITECreate a message. via POST /threads/{thread_id}/messages
openai_post_threads_by_thread_id_messages_by_message_idWRITEModifies a message. via POST /threads/{thread_id}/messages/{message_id}
openai_post_threads_by_thread_id_runsWRITECreate a run. via POST /threads/{thread_id}/runs
openai_post_threads_by_thread_id_runs_by_run_idWRITEModifies a run. via POST /threads/{thread_id}/runs/{run_id}
openai_post_threads_by_thread_id_runs_by_run_id_cancelWRITECancels a run that is `in_progress`. via POST /threads/{thread_id}/runs/{run_id}/cancel
openai_post_threads_by_thread_id_runs_by_run_id_submit_tool_outputsWRITEWhen a run has the `status: "requires_action"` and `required_action.type` is `submit_tool_outputs`, this endpoint can be used to submit the outputs from the tool calls once they're all completed. All outputs must be submitted in a single request. via POST /threads/{thread_id}/runs/{run_id}/submit_tool_outputs
openai_post_threads_runsWRITECreate a thread and run it in one request. via POST /threads/runs
openai_post_uploadsWRITECreates an intermediate [Upload](/docs/api-reference/uploads/object) object that you can add [Parts](/docs/api-reference/uploads/part-object) to. Currently, an Upload can accept at most 8 GB in total and expires after an hour after you create it. Once you complete the Upload, we will create a [File](/docs/api-reference/files/object) object that contains all the parts you uploaded. This File is usable in the rest of our platform as a regular File object. For certain `purpose` values, the correct `mime_type` must be specified. Please refer to documentation for the [supported MIME types for your use case](/docs/assistants/tools/file-search#supported-files). For guidance on the proper filename extensions for each purpose, please follow the documentation on [creating a File](/docs/api-reference/files/create). Returns the Upload object with status `pending`. via POST /uploads
openai_post_uploads_by_upload_id_cancelWRITECancels the Upload. No Parts may be added after an Upload is cancelled. Returns the Upload object with status `cancelled`. via POST /uploads/{upload_id}/cancel
openai_post_uploads_by_upload_id_completeWRITECompletes the [Upload](/docs/api-reference/uploads/object). Within the returned Upload object, there is a nested [File](/docs/api-reference/files/object) object that is ready to use in the rest of the platform. You can specify the order of the Parts by passing in an ordered list of the Part IDs. The number of bytes uploaded upon completion must match the number of bytes initially specified when creating the Upload object. No Parts may be added after an Upload is completed. Returns the Upload object with status `completed`, including an additional `file` property containing the created usable File object. via POST /uploads/{upload_id}/complete
openai_post_vector_storesWRITECreate a vector store. via POST /vector_stores
openai_post_vector_stores_by_vector_store_idWRITEModifies a vector store. via POST /vector_stores/{vector_store_id}
openai_post_vector_stores_by_vector_store_id_file_batchesWRITECreate a vector store file batch. The maximum number of files in a single batch request is 2000. Vector store file attach requests are rate limited per vector store (300 requests per minute across both this endpoint and `/vector_stores/{vector_store_id}/files`). For ingesting multiple files into the same vector store, this batch endpoint is recommended. via POST /vector_stores/{vector_store_id}/file_batches
openai_post_vector_stores_by_vector_store_id_file_batches_by_batch_id_cancelWRITECancel a vector store file batch. This attempts to cancel the processing of files in this batch as soon as possible. via POST /vector_stores/{vector_store_id}/file_batches/{batch_id}/cancel
openai_post_vector_stores_by_vector_store_id_filesWRITECreate a vector store file by attaching a [File](/docs/api-reference/files) to a [vector store](/docs/api-reference/vector-stores/object). This endpoint is subject to a per-vector-store write rate limit of 300 requests per minute, shared with `/vector_stores/{vector_store_id}/file_batches`. For uploading multiple files to the same vector store, use the file batches endpoint to reduce request volume. via POST /vector_stores/{vector_store_id}/files
openai_post_vector_stores_by_vector_store_id_files_by_file_idWRITEUpdate attributes on a vector store file. via POST /vector_stores/{vector_store_id}/files/{file_id}
openai_post_vector_stores_by_vector_store_id_searchWRITESearch a vector store for relevant chunks based on a query and file attributes filter. via POST /vector_stores/{vector_store_id}/search
openai_post_videosWRITECreate a new video generation job from a prompt and optional reference assets. via POST /videos OpenAI marks this operation deprecated.
openai_post_videos_by_video_id_remixWRITECreate a remix of a completed video using a refreshed prompt. via POST /videos/{video_id}/remix OpenAI marks this operation deprecated.
openai_post_videos_editsWRITECreate a new video generation job by editing a source video or existing generated video. via POST /videos/edits OpenAI marks this operation deprecated.
openai_post_videos_extensionsWRITECreate an extension of a completed video. via POST /videos/extensions OpenAI marks this operation deprecated.
Put OpenAI behind one governed endpoint.
Same permissions, same audit trail, whatever else you connect next.