I wrote up some introductory info about using the !gnusocial API for writing a client https://karp.id.au/a/2017/02/09/introduction-to-the-gnu-social-api/