SD_BUS_NAMES_WITH_ARGS is a less error-prone way of specifying D-Bus method arguments.
The interface provided by those two functions is huge, so this text could probably be made two or three times as long if all details were described. But I think it's a good start.