I have an AngularJS app that is using formly to generate a form. Below is an example of the model data.
"form_field_17": "None Required",
if you really want to be able to accept ANY type of valid JSON (and there are probably good business and security rules for NOT doing this) and you want to deserialize before reaching the method (rather than accepting the raw JSON string), then you're down to two options.
JToken, if using Newtonsoft Json.NET:
public ResultType DynamicPayloadEndpoint(JToken dynamicObject)
or use the actual
public ResultType DynamicPayloadEndpoint(dynamic dynamicObject)
How you handle exposing that data at that point will always be tricky, but you'll be able to accept anything.
Keep in mind that if using ASP.NET MVC, this makes modelbinding useless.