I found the way to have DKPSystem query the WoW Armory and populate my guild roster. My question is this:
Will I have to do this every time someone leaves or joins the guild?
The last guild I was an officer in, used a different website. It automatically queried the armory every day at 5 PM and updated the roster. It made it much easier for the officers.
Currently, our system doesn't have an automatic roster updater.
There is a reason we don't do this is for ensured integrity of the data. Adding characters is no problem, we could perhaps do this. But deleting characters can cause problems: deleting characters will delete the DKP, raid history, etc, and we can't have that.
Some guilds prefer to have characters deleted with their DKP, and others prefer to have the characters marked as retired, and just hide them from lists. That, combined with the fact that some guilds run DKP players who are not in the guild but still have must have characters on the site, and an autoroster would autodelete these characters, since they wouldn't show in the armory.
Or, you have the problem of a user who changes their character name (I've had this where blizzard forced the renaming of characters in my guild) but is still in the guild. An autodeleter will remove that DKP history and create a new character, since the armory doesn't show a history of names.
Finally, there's the ever prevalent problem of the armory being behind in the updates. A character might have left the guild or joined the guild but it hasn't yet been reflected in the Armory.
All of these potential reasons are why we have the secondary step of "Make sure this data looks right".
I recognize that that can lead to more work, but you've got two convenient tools to help you with this:
1) Users can create their own characters (clicking [Create a Character]) 2) The DKP uploaders will create characters as needed (if they're not found in the database)
Combine those two functions with the armory importer and our in-game importer (part of the GRSS mod) (run, say, once ever week or two), and your roster will remain reasonably up to date with minimal work.