212 lines
7.2 KiB
XML
212 lines
7.2 KiB
XML
<article
|
|
id="users"
|
|
authorId=""
|
|
categoryId="api"
|
|
title="Users"
|
|
created="300"
|
|
snippet="Developer documentation for Users"
|
|
banner=""
|
|
noindex="false"
|
|
>
|
|
<!-- User Object Reference -->
|
|
<header>User Object</header>
|
|
<text>
|
|
Fields for a user object and the required oAuth2 Scope to view them.
|
|
Optional fields <h>(Type ending with ?)</h> or hidden fields <h>(Missing oAuth2 Scope)</h>
|
|
will have their value set as <c>null</c> instead.
|
|
</text>
|
|
<table>
|
|
<row>
|
|
<column>Field</column>
|
|
<column>Type</column>
|
|
<column>Description</column>
|
|
<column>Required oAuth2 Scope</column>
|
|
</row>
|
|
<row>
|
|
<column>id</column>
|
|
<column>integer</column>
|
|
<column>their unique account id</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>created</column>
|
|
<column>timestamp</column>
|
|
<column>their account creation timestamp</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>public_flags</column>
|
|
<column>integer</column>
|
|
<column>their public flags (badges)</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>username</column>
|
|
<column>string</column>
|
|
<column>their username</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>displayname</column>
|
|
<column>string</column>
|
|
<column>their displayname</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>subtitle</column>
|
|
<column>string</column>
|
|
<column>their pronouns, status, etc.</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>biography</column>
|
|
<column>string</column>
|
|
<column>their biography</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>accent_background</column>
|
|
<column>integer</column>
|
|
<column>their profile background color</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>accent_banner</column>
|
|
<column>integer</column>
|
|
<column>their profile banner color</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>accent_border</column>
|
|
<column>integer</column>
|
|
<column>their profile border color</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>avatar</column>
|
|
<column>string?</column>
|
|
<column>their avatar image hash</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>banner</column>
|
|
<column>string?</column>
|
|
<column>their banner image hash</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>verified</column>
|
|
<column>boolean</column>
|
|
<column>has email been verified?</column>
|
|
<column>identify</column>
|
|
</row>
|
|
<row>
|
|
<column>email</column>
|
|
<column>string?</column>
|
|
<column>their email address</column>
|
|
<column>email</column>
|
|
</row>
|
|
</table>
|
|
<quote>Usernames will always be alphanumeric with underscores and between 3-32 characters long</quote>
|
|
<quote>Usernames may change without warning, use account IDs instead!</quote>
|
|
<quote>Displaynames and Subtitles are up to 32 characters long</quote>
|
|
<quote>Biographies are up to 320 chracters long</quote>
|
|
<quote>Colors are in Decimal Representation</quote>
|
|
|
|
<!-- User Public Flags/Badges -->
|
|
<header>Public Flags</header>
|
|
<text>
|
|
Use a <b>Bitwise AND</b> operation in your language of choice to see if a flag is
|
|
set for a user. Flags are primarily used for badges which are special achievements
|
|
that were obtainable for a limited time or gifted to specific users.
|
|
</text>
|
|
<table>
|
|
<row>
|
|
<column>Value</column>
|
|
<column>Name</column>
|
|
<column>Description</column>
|
|
<column>Obtainable?</column>
|
|
</row>
|
|
<row>
|
|
<column>1 (1 << 0)</column>
|
|
<column>BADGE_CROWN</column>
|
|
<column>Reserved for bakonpancakz</column>
|
|
<column>Never</column>
|
|
</row>
|
|
<row>
|
|
<column>2 (1 << 1)</column>
|
|
<column>BADGE_VIP</column>
|
|
<column>Reserved for important users</column>
|
|
<column>No</column>
|
|
</row>
|
|
<row>
|
|
<column>4 (1 << 2)</column>
|
|
<column>BADGE_PICROSS</column>
|
|
<column>Awarded by completing Challenge #1</column>
|
|
<column>Yes</column>
|
|
</row>
|
|
<row>
|
|
<column>8 (1 << 3)</column>
|
|
<column>PUBLIC_UNAVAILABLE</column>
|
|
<column>Account is Unavailable</column>
|
|
<column>TOS Violation</column>
|
|
</row>
|
|
</table>
|
|
<quote>
|
|
Unavailable accounts, may be banned or deleted.
|
|
The reasoning will be sent to the account owners email.
|
|
</quote>
|
|
|
|
<!-- GET /users/@me -->
|
|
<header>Get Current User</header>
|
|
<text><c>GET /users/@me</c></text>
|
|
<text>
|
|
Returns the current user if you have the <c>identify</c> scope, also
|
|
returns email if you also have the <c>email</c> scope.
|
|
</text>
|
|
|
|
<!-- GET /users/@me/connections -->
|
|
<header>Get Connections for Current User</header>
|
|
<text><c>GET /users/@me/connections</c></text>
|
|
<text>
|
|
Requires the <c>connections</c> <a href='/library/api/oauth2#oauth2-scopes'>OAuth2 Scope</a>.
|
|
Returns an array of <a href="#connection-object">Connection</a> Objects the user is actively connected to.
|
|
</text>
|
|
<subheader>Connection Object</subheader>
|
|
<table>
|
|
<row>
|
|
<column>Field</column>
|
|
<column>Type</column>
|
|
<column>Description</column>
|
|
</row>
|
|
<row>
|
|
<column>id</column>
|
|
<column>integer</column>
|
|
<column>Unique Connection ID</column>
|
|
</row>
|
|
<row>
|
|
<column>created</column>
|
|
<column>Date</column>
|
|
<column>ISO Timestamp of when connection was created</column>
|
|
</row>
|
|
<row>
|
|
<column>scopes</column>
|
|
<column>integer</column>
|
|
<column>Associated OAuth2 scopes with connection</column>
|
|
</row>
|
|
<row>
|
|
<column>application</column>
|
|
<column>Application Object</column>
|
|
<column>An Application Object</column>
|
|
</row>
|
|
</table>
|
|
<text><i>Quick link to</i> <a href="/library/api/applications#application-object">Application Object</a>.</text>
|
|
|
|
<!-- GET /users/<user.username> -->
|
|
<header>Get User by Username </header>
|
|
<text><c>GET /users/<user.username></c></text>
|
|
<text>
|
|
Returns a <a href="#user-object">user object</a> for a given username,
|
|
doesn't require any authorization.
|
|
</text>
|
|
</article> |