I have an ArcGIS online webmap that I'd like to update using the ArcGIS REST API. The Web Map has many layers but I'd like to update just one layer and leave the rest as-is. It appears that I have to create JSON to fully specify the webmap (the base layer, all operational layers, all tables, etc). The problem with this is that I don't know the full specification (a user may have altered the original web map) and I don't see any way to retrieve the full specification in a way that can be simply updated and sent back on the update. Is it possible to either
1) create JSON that will selectively update the webmap specification (eg. add/update/remove just one layer) OR
2) retrieve the full webmap specification in a JSON form that can be tweaked and sent back to the server on an update request?