Using complex type in C# plugin calls

what’s the correct way to use complex types with C# Plugins?the signature is:
public string addJob(Job job) where Job is a C# class.

Error: Failed to execute addJob on JobsTrackingDBManager with 1 arguments. details: |addJob|Wrong parameter type in position 1. Should be Job. value {"profile_id":null,"source_city_id":"calais","destination_city_id":"calais","source_company_id":"nbfc","destination_company_id":"stokes","cargo_id":"caviar","fuel_used":0,"distance_driven":0,"remote_job_id":0,"vehicle_damage":0,"trailers_damage":0,"cargo_damage":0,"fines":[],"transports":[],"tollgates":[],"max_speed":0,"delivery_time":17578077,"status":"in_progress","hash":"09f35ea66bd1318ac0ec2a84025d3a78"}


Strings with JSON encoded contents is what I personally use

surprisingly, the object sent from js to the plugin arrives as string, don’t need to stringify from Js.
Then C# side, JsonConvert.Deserialize with the string parameter works perfectly

this topic can be closed.