Replacing Private message module with nodes
If by API you mean documentation, there is a documentation for the module in the following link: https://www.drupal.org/documentation/modules/privatemsg
For actual API file: https://cgit.drupalcode.org/privatemsg/tree/privatemsg.api.php?h=7.x-1.x
In the same code repository, the module contains views folder with views integration, so I don't understand what you mean by no views integration?
And here is an example on how to theme the new messages block, you should check this file for more theming functions.
Hope that helps.