1
- import 'dart:convert' ;
2
1
import '../services/dashbot_service.dart' ;
3
2
import 'package:apidash/models/request_model.dart' ;
4
3
@@ -19,20 +18,14 @@ class ExplainFeature {
19
18
return "Error: Invalid API request (missing endpoint)." ;
20
19
}
21
20
22
- final method = requestModel.httpRequestModel? .method
23
- .toString ()
24
- .split ('.' )
25
- .last
26
- .toUpperCase () ??
27
- "GET" ;
28
- final endpoint = requestModel.httpRequestModel! .url;
21
+ final method =
22
+ requestModel.httpRequestModel? .method.name.toUpperCase () ?? "GET" ;
23
+ final url = requestModel.httpRequestModel! .url;
29
24
final headers = requestModel.httpRequestModel? .enabledHeadersMap ?? {};
30
25
final parameters = requestModel.httpRequestModel? .enabledParamsMap ?? {};
31
- final body = requestModel.httpRequestModel? .body;
32
- final rawResponse = responseModel.body;
33
- final responseBody =
34
- rawResponse is String ? rawResponse : jsonEncode (rawResponse);
35
- final statusCode = responseModel.statusCode ?? 0 ;
26
+ final body = requestModel.httpRequestModel? .body ?? '' ;
27
+ final responseBody = responseModel.body;
28
+ final statusCode = responseModel.statusCode;
36
29
37
30
final prompt = '''
38
31
FOCUSED API INTERACTION BREAKDOWN
@@ -41,10 +34,16 @@ FOCUSED API INTERACTION BREAKDOWN
41
34
- Endpoint Purpose: What is this API endpoint designed to do?
42
35
- Interaction Type: Describe the core purpose of this specific request
43
36
44
- **Request Mechanics :**
45
- - Exact Endpoint: $endpoint
37
+ **Request Details :**
38
+ - Endpoint: $url
46
39
- HTTP Method: $method
47
- - Key Parameters: ${parameters .isNotEmpty ? 'Specific inputs driving the request' : 'No custom parameters' }
40
+ - Request Headers: ${headers .isEmpty ? "None" : headers }
41
+ - URL Parameters: ${parameters .isEmpty ? "None" : parameters }
42
+ - Request Body: ${body .isEmpty ? "None" : body }
43
+
44
+ **Response Details**
45
+ - Status Code: $statusCode
46
+ - Content: $responseBody
48
47
49
48
**Response CORE Insights:**
50
49
- Status: Success or Failure?
0 commit comments