UNPKG

@arizeai/phoenix-client

Version:

A client for the Phoenix API

52 lines 1.85 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.deleteExperiment = deleteExperiment; const client_1 = require("../client"); const ensureString_1 = require("../utils/ensureString"); /** * Delete an experiment by ID. * * **Important**: This operation permanently deletes the experiment and all its associated * runs, evaluations, and annotations. * * Behavior: * - Deletes the experiment and all its data * - Returns successfully if experiment is found and deleted * - Throws error if experiment is not found (404) or other errors occur * * @param params - The parameters to delete an experiment * @returns Promise that resolves when the experiment is successfully deleted * @throws Error if the experiment is not found or deletion fails * * @example * ```ts * import { deleteExperiment } from "@arizeai/phoenix-client/experiments"; * * await deleteExperiment({ * experimentId: "exp_123", * }); * ``` */ async function deleteExperiment({ client: _client, experimentId, }) { const client = _client !== null && _client !== void 0 ? _client : (0, client_1.createClient)(); const { error } = await client.DELETE("/v1/experiments/{experiment_id}", { params: { path: { experiment_id: experimentId, }, }, }); if (error) { const isNotFound = typeof error === "object" && error !== null && "status" in error && error.status === 404; if (isNotFound) { throw new Error(`Experiment not found: ${experimentId}`); } // Extract meaningful error information const errorMessage = (0, ensureString_1.ensureString)(error); throw new Error(`Failed to delete experiment: ${errorMessage}`); } } //# sourceMappingURL=deleteExperiment.js.map