You're right.
I made requests in both versions 11.6.0 and 12.0.0.
The request for v11.6.0, doesn't put quotes in your key and values pairs.
For the v12.0.0, it's including quotes in your keys but not in the values.
In my opinion, the v12.0.0 is closer to the truth.
Regards.
test 1:
curl -k -u "admin:admin" -X POST -d '{"name":"dg_test","type":"string","records":[{"name":"\"KEY\"","data":"\"VALUE\""}]}' https://localhost/mgmt/tm/ltm/data-group/internal --header "Content-Type:application/json"
v11.6.0
[root@bigipbeta:Active:Standalone] config tmsh list ltm data-group internal dg_test
ltm data-group internal dg_test {
records {
KEY {
data VALUE
}
}
type string
}
v12.0.0
[root@bigiplab:ModuleNotLicensed:Active:Standalone] config tmsh list ltm data-group internal dg_test
ltm data-group internal dg_test {
records {
\"KEY\" {
data VALUE
}
}
type string
}
test 2:
curl -k -u "admin:admin" -X POST -d '{"name":"dg_test_space","type":"string","records":[{"name":"\"KEY WITH SPACE\"","data":"\"VALUE WITH SPACE\""}]}' https://localhost/mgmt/tm/ltm/data-group/internal --header "Content-Type:application/json"
v11.6.0
[root@bigipbeta:Active:Standalone] config tmsh list ltm data-group internal dg_test_space ltm data-group internal dg_test_space {
records {
"KEY WITH SPACE" {
data "VALUE WITH SPACE"
}
}
type string
}
v12.0.0
[root@bigiplab:ModuleNotLicensed:Active:Standalone] config tmsh list ltm data-group internal dg_test_space
ltm data-group internal dg_test_space {
records {
"\"KEY WITH SPACE\"" {
data "VALUE WITH SPACE"
}
}
type string
}