Take a look at Armeen's answer. What he says can be achieved in .net (a com visible object)...
Based on your conversation with Mike take a look at the following examples. They are both based on the information you provided. It's not the best solution but it can give you an idea of how to. Of course json can have more that one "rows" of data, and also nested information not to mention that you can even have arrays. So depending on how simplistic is your case it may be easy or complicated.
// 1st Example
string ls_15_rec, ls_transtype, ls_vin, ls_veh_make
ls_transtype = "My Transaction"
ls_vin = "My Vin"
ls_veh_make = "My value"
ls_15_rec = "{~n~"TransactionId~":~"" + ls_transtype + "~",~n~"Vin~":~"" + ls_vin + "~",~n~"Make~":~"" + ls_veh_make + "~"~n}"
messagebox("", ls_15_rec)
// 2nd Example
string ls_array1[], ls_array2[], ls_json = "", ls_open_char = "", ls_close_char = ""
char lc_type[] // C -> string, N -> number
long ll_i
ls_array1[upperbound(ls_array1) + 1] = "OriginJurisdiction"
ls_array2[upperbound(ls_array1)] = "YT"
lc_type[upperbound(ls_array1)] = "C"
ls_array1[upperbound(ls_array1) + 1] = "ControlNumber"
ls_array2[upperbound(ls_array1)] = "000202009"
lc_type[upperbound(ls_array1)] = "C"
ls_array1[upperbound(ls_array1) + 1] = "VersionNo"
ls_array2[upperbound(ls_array1)] = "000"
lc_type[upperbound(ls_array1)] = "C"
ls_array1[upperbound(ls_array1) + 1] = "SentCount"
ls_array2[upperbound(ls_array1)] = string(28339)
lc_type[upperbound(ls_array1)] = "N"
ls_array1[upperbound(ls_array1) + 1] = "FileTime"
ls_array2[upperbound(ls_array1)] = "2020-09-04T00:05:39"
lc_type[upperbound(ls_array1)] = "C"
for ll_i = 1 to upperbound(ls_array1)
if lc_type[ll_i] = 'N' then
ls_open_char = ""
ls_close_char = ""
else
ls_open_char = "~""
ls_close_char = "~""
end if
if ll_i < upperbound(ls_array1) then
ls_close_char = ls_close_char + ",~n"
else
ls_close_char = ls_close_char + "~n"
end if
ls_json = ls_json + "~"" + ls_array1[ll_i] + "~":~"" + ls_open_char + ls_array2[ll_i] + ls_close_char
next
ls_json = "{~n" + ls_json + "~}"
messagebox("", ls_json)
Andreas.