for these two calls I used:
curl -s -X 'POST' --header 'content-type: application/xml' --user <SPECUSER>:<SPECPASS> "http://<ONECLICK>:<PORT>/spectrum/restful/model?landscapeid=<LANDSCAPE ID>&ipaddress=<IP ADDRESS>&attr=0x1006e&val=<DEVICE NAME>&commstring=<SNMPCOMMUNITY>&port=<SNMP PORT>&parentmh=<PARENT CONTAINER MH>&retry=1&timeout=1000"
This is the command line version using curl - I use the 'LWP' module in perl.
I can confirm this works currently with 9.2.x with both ICMP and SNMP.
The GET doesn't make sense to use here. Most of the times GET is used to get values from Spectrum only (except in some cases where you want to trigger an Inference Handler)
DELETE makes no sense here either
and PUT just didn't work after I tested it.
This is the info I wish they would put in their documentation. It's been a painful ride so far trying to work this stuff out, where a well documented API guide would have been ideal. I've used other REST API's like the Cisco Prime Infrastructure and it's just so well documented (although fails to provide good example code).