In general, data transformation involves both mapping data from a source to a target, and performing any conversions or other transformations on that data that might be required to achieve the intended mapped results .
Even though an activity could be used to set many property values on a page, using a data transform speeds development, because the data transform form is easier to understand than the Activity form.
Yes to parse the response we should have create classes which will match exact structure of incoming data .
Kindly let us know what do you mean exactly by that step is not an insignificant amount of work?
I understand your concern. We are continuously improving our mapping capabilities as far as JSON is concerned and you can expect further refinements in this area in future releases. Unfortunately, at this point, if you want to map JSON data directly to application class structure, you have two options. The issue stems from the fact that we don't have a Parse XML equivalent for JSON.
1. (Recommended) Create class structure corresponding to JSON data and use data transform/activity to map the data to application class structure. You haven't mentioned which version of Pega you are using. But in 7.x series, we have a REST wizard (that's primarily meant to create REST connectors) that you could leverage to upload your JSON sample and create its corresponding class structure in Pega. This is helpful in your case as you mentioned that creating the class structure manually isn't an insignificant amount of work.
2. (Not recommended) Even without class structure, as you observed, JSON data is mapped to a page on the clipboard. However, all these properties are virtual properties. So you need to write Java step in activity to read data from this page and map the data to your application class structure. I wouldn't recommend this though, especially when you have a large number of properties to map.