There is not. I'm patiently waiting for the rest API. I've built a few custom apps that act like a rest API but they're not near as versatile as what I expect the new API to be and they're created by leveraging tabcmd. I will say that I am highly doubtful that they will allow the setting of permissions upon publish as this isn't even functionality in tabcmd. The number of name value pairs that would be required in the payload to add permissions to content during publish would be excessive and become a confusing process (but I could be wrong).
I'm a firm believer in controlling permissions at the project level (At least until Tableau comes up with a truly hierarchical content structure.)