@@ -761,22 +761,52 @@ class QueryListComp extends QueryListTmpComp implements BottomResListComp {
761761
762762// If this is a REST API created from cURL, pre-populate the HTTP query fields
763763if ( compType === "restApi" && curlData ) {
764- const headersArr = curlData . header
765- ?Object . entries ( curlData . header ) . map ( ( [ key , value ] ) => ( { key, value} ) )
764+ // Normalize possible field names returned by different curl parsers
765+ const rawHeaders :Record < string , any > | undefined =
766+ curlData . header || curlData . headers ;
767+ const rawParams :Record < string , any > | undefined =
768+ curlData . params || curlData . parameters || curlData . query ;
769+
770+ // Convert headers & params objects to the key/value array expected by the UI controls
771+ const headersArr = rawHeaders
772+ ?Object . entries ( rawHeaders ) . map ( ( [ key , value ] ) => ( { key, value} ) )
766773 :[ { key :"" , value :"" } ] ;
767- const paramsArr = curlData . params
768- ?Object . entries ( curlData . params ) . map ( ( [ key , value ] ) => ( { key, value} ) )
774+
775+ const paramsArr = rawParams
776+ ?Object . entries ( rawParams ) . map ( ( [ key , value ] ) => ( { key, value} ) )
769777 :[ { key :"" , value :"" } ] ;
770778
779+ // Detect request body – different parsers may expose it under various keys
780+ const bodyContent :any =
781+ curlData . body ?? curlData . data ?? curlData . postData ?? undefined ;
782+
783+ // Determine body type – prefer the Content-Type header if present
784+ let bodyType :string = "none" ;
785+ if ( bodyContent !== undefined && bodyContent !== "" ) {
786+ const contentTypeHeader =
787+ ( rawHeaders && ( rawHeaders [ "Content-Type" ] || rawHeaders [ "content-type" ] ) ) ||
788+ "" ;
789+ if ( contentTypeHeader ) {
790+ bodyType = contentTypeHeader ;
791+ } else if ( typeof bodyContent === "object" ) {
792+ bodyType = "application/json" ;
793+ } else {
794+ bodyType = "text/plain" ;
795+ }
796+ }
797+
771798payload = {
772799 ...payload ,
773800comp :{
774801httpMethod :curlData . method || "GET" ,
775- path :curlData . url || "" ,
802+ path :curlData . url || curlData . path || "" ,
776803headers :headersArr ,
777804params :paramsArr ,
778- bodyType :curlData . body ?"application/json" :"none" ,
779- body :curlData . body ?JSON . stringify ( curlData . body , null , 2 ) :"" ,
805+ bodyType :bodyType ,
806+ body :
807+ typeof bodyContent === "object"
808+ ?JSON . stringify ( bodyContent , null , 2 )
809+ :bodyContent || "" ,
780810bodyFormData :[ { key :"" , value :"" , type :"text" } ] ,
781811} ,
782812} ;