Yanny,
Unfortunately there is no SDK method to perform a deployment. You can use the SDK to script an export, move a file and script an import but for most this is an undesirable solution to the problem. Deploying or copying an object to another server in the SDK is a very difficult process with lots of implications if you're going to support it generically. We've done this in our MetaManager and Integrated Control Suite software and have a fairly robust solution. We also support the process in our Script Runner API for customers who are looking to wrap some code logic around a deployment process. If this is something you would be interested in you can try out the deploy module and the script runner by downloading the software from here:
http://www.bspsoftware.com/MetaManager.
If however you're committed to developing this with the SDK, you'll need to query all of the properties of the object and craft a corresponding Update call to the target server with those properties.
A few tips:
Stay away from the readonly properties except for searchPath which is required
Only update properties with security references if the CAMID's match in both environments (e.g. owner, credential, policies)
Only update the policies property if security should match in both environments AND the property is not currently set to inherit. (overwriting inherited properties makes them explicit)
If you're deploying objects with references to other objects (e.g. shortcut and a report, reportView and a report) then deploy the target before deploying the object with the reference.
As I mentioned there are a lot of gotchas and edge conditions when supporting this generically, but if you're developing a very specific script to copy a report and all you need is the specification to be copied, then it's not nearly as difficult.
Good Luck,
-Andy