I'm not sure what to suggest, because I don't know what the issue is. You cannot get the name of an atom, without first obtaining a pointer to it, so, whatever your API is, it does have to have pointers in it, somehow.
If you want to always use ints, you could keep a private table that translates from ints to atoms and back.
My long-term goal is to create such a "private table" in the database backends, and remove UUID's in general. The rest API would need to do something similar, too. The advantages are that it should make the management of atoms easier. But this remains fairly low-priority, for now.
--linas