<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Apr 11, 2009, at 3:40 AM, Alan Castonguay wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; ">This came up on wp-hackers but didn't get much response. Any thoughts, or should I just start hacking up an implementation?<div><br></div></span></blockquote><div><br></div><div><br></div><div>Sorry I missed that on wp-hackers.</div><div><br></div><div>If we're going to add support for adding/managing WP users I think we'll end up needed our own namespace to support the more WP specific fields (role being the biggie).</div><div><br></div><div><br></div><br><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div><div apple-content-edited="true"><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div><br></div></span></span></div><div><div>Begin forwarded message:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: normal normal normal 12px/normal Helvetica; color: rgb(0, 0, 0); "><b>From:<span class="Apple-converted-space"> </span></b></font><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">Alan Castonguay <<a href="mailto:alan@verselogic.net">alan@verselogic.net</a>></font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: normal normal normal 12px/normal Helvetica; color: rgb(0, 0, 0); "><b>Date:<span class="Apple-converted-space"> </span></b></font><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">April 6, 2009 5:13:44 PM GMT-04:00</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: normal normal normal 12px/normal Helvetica; color: rgb(0, 0, 0); "><b>To:<span class="Apple-converted-space"> </span></b></font><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; "><a href="mailto:wp-hackers@lists.automattic.com">wp-hackers@lists.automattic.com</a></font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: normal normal normal 12px/normal Helvetica; color: rgb(0, 0, 0); "><b>Subject:<span class="Apple-converted-space"> </span></b></font><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; "><b>Re: [wp-hackers] wpmu / adding users/sites/any other admin</b></font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" color="#000000" style="font: normal normal normal 12px/normal Helvetica; color: rgb(0, 0, 0); "><b>Reply-To:<span class="Apple-converted-space"> </span></b></font><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; "><a href="mailto:wp-hackers@lists.automattic.com">wp-hackers@lists.automattic.com</a></font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div></div><div><blockquote type="cite">Alan, how about "gaping pits of hell"?<br></blockquote>heh. =)<br><br>As noted, there's a lot of configurables in the Wordpress admin interface that are not exposed by either xmlrpc or atompub. The xmlrpc function "wp_getAuthors" will provide user_id, user_login, display_name, but there is no method to Edit existing user/usermeta, Register new users, or Delete existing ones.<br><br>The only fleshed out implementation of user management via atompub that I'm aware of is Google's GDATA API for Provisioning on Google Apps (for Premier and Education Edition). This seems well thought out, and at least some of the decisions can be borrowed.<br><br><a href="http://code.google.com/apis/apps/gdata_provisioning_api_v2.0_developers_protocol.html#Create_Account_Example">http://code.google.com/apis/apps/gdata_provisioning_api_v2.0_developers_protocol.html#Create_Account_Example</a><br><br>Gallery3's API is supposed to provide user registration and editing:<span class="Apple-converted-space"> </span><a href="http://codex.gallery2.org/Gallery3:API:REST">http://codex.gallery2.org/Gallery3:API:REST</a><br>Second Life's API supports user registration:<span class="Apple-converted-space"> </span><a href="http://wiki.secondlife.com/wiki/Registration_API">http://wiki.secondlife.com/wiki/Registration_API</a><br><br>A proper implementation has to start somewhere. So, what thinks people of creating the following endpoints, and defining an atom entry for a "user"? I'm not sure if this can borrow from hCard or the DiSo project.<br><br>+<span class="Apple-converted-space"> </span><a href="http://blog.example.com/(wp-)app.php/user/">http://blog.example.com/(wp-)app.php/user/</a>{id} or {username}?<br>+<span class="Apple-converted-space"> </span><a href="http://blog.example.com/(wp-)app.php/users/">http://blog.example.com/(wp-)app.php/users/</a>{page}?<br><br></div></blockquote></div></div></span></blockquote></div><br><div apple-content-edited="true"> <span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div><br class="Apple-interchange-newline">--</div><div>Joseph Scott</div><div><a href="mailto:joseph@josephscott.org">joseph@josephscott.org</a></div><div><a href="http://josephscott.org/">http://josephscott.org/</a></div><div><br></div></span><br class="Apple-interchange-newline"></div></span><br class="Apple-interchange-newline"> </div><br></body></html>