You find a documentation of all possible functions in the wiki. Most libraries, like mine, are a more or less complete wrapper around it. Some try to do it more object oriented some less. But in the end all these libraries do is to send these commands over a TCP/IP connection to CasparCG-Server. That is all the magic.