delete method

Future<Map<String, dynamic>> delete(
  1. String endpoint, {
  2. CancelToken? cancelToken,
})

Make a DELETE request

Implementation

Future<Map<String, dynamic>> delete(
  String endpoint, {
  CancelToken? cancelToken,
}) async {
  if (config.apiKey.isEmpty) {
    throw const AuthError('Missing OpenAI API key');
  }

  try {
    if (logger.isLoggable(Level.FINE)) {
      logger.fine('OpenAI request: DELETE /$endpoint');
      logger.fine('OpenAI request headers: ${dio.options.headers}');
    }

    final response = await dio.delete(
      endpoint,
      cancelToken: cancelToken,
    );

    if (logger.isLoggable(Level.FINE)) {
      logger.fine('OpenAI HTTP status: ${response.statusCode}');
    }

    if (response.statusCode != 200) {
      _handleErrorResponse(response, endpoint);
    }

    return response.data as Map<String, dynamic>;
  } on DioException catch (e) {
    throw handleDioError(e);
  } catch (e) {
    throw GenericError('Unexpected error: $e');
  }
}