@ughuuu/game_server
v1.0.882
Published
API for the Gamend Game Server. Provides HTTP REST API, real-time WebSocket channels, and WebRTC DataChannels for low-latency game data. Features authentication, users, lobbies, groups, parties, friends, chat, notifications, achievements, leaderboards, se
Readme
@ughuuu/game_server
UghuuuGameServer - JavaScript client for @ughuuu/game_server API for the Gamend Game Server. Provides HTTP REST API, real-time WebSocket channels, and WebRTC DataChannels for low-latency game data. Features authentication, users, lobbies, groups, parties, friends, chat, notifications, achievements, leaderboards, server scripting, and admin portal.
1. Authentication
This API uses JWT (JSON Web Tokens) with access and refresh tokens:
1.1 Getting Tokens
- Email/Password: POST to
/api/v1/loginwith email and password - Device (SDK): POST to
/api/v1/loginwith adevice_idstring (creates/returns a device user) - Discord OAuth: Use
/api/v1/auth/discordflow - Google OAuth: Use
/api/v1/auth/googleflow - Facebook OAuth: Use
/api/v1/auth/facebookflow - Apple Sign In: Use
/auth/applebrowser flow or apple sdk flow - Steam (OpenID): Use
/api/v1/auth/steamflow
Both methods return:
access_token- Short-lived (15 min), use for API requestsrefresh_token- Long-lived (30 days), use to get new access tokens
1.2 Using Tokens
Include the access token in the Authorization header:
Authorization: Bearer <access_token>1.3 Refreshing Tokens
When your access token expires, use POST /api/v1/refresh with your refresh token to get a new access token.
2. Users
Users endpoints cover the user lifecycle and profile features. Key highlights:
- Registration and login (email/password, device token for SDKs, and OAuth providers)
- Profile metadata (JSON blob per user) and editable profile fields
- Account lifecycle: password reset, email confirmation, and account deletion
- Sessions & tokens: both browser sessions and JWT-based API tokens are supported
3. Friends
The Friends domain offers lightweight social features:
- Friend requests (send / accept / reject / block flows)
- Friend listing & pagination, with basic privacy controls
- Domain helpers to manage and query friend relationships from API or UI contexts
4. Lobbies
Lobbies provide matchmaking / room management primitives. Highlights:
- Create / list / update / delete lobbies with rich metadata (mode, region, tags)
- Host-managed or hostless modes (hostless allowed internally, not creatable via public API)
- Membership management: join, leave, kick users, and automatic host transfer
- Controls & protection: max users, hidden/locked states, and optional password protection
- Hidden lobbies are excluded from public listings; public listing endpoints are paginated
5. Notifications
Persistent user-to-user notifications that survive across sessions:
- Send notifications to accepted friends with a title, optional content, and optional metadata
- List own notifications with pagination (ordered oldest-first)
- Delete notifications by ID (single or batch)
- Real-time delivery via the user WebSocket channel (
\"notification\"events) - Offline delivery: undeleted notifications are replayed on WebSocket reconnect
6. Groups
Groups provide persistent community management for players:
- Three group types:
public(anyone joins directly),private(users request to join, admins approve),hidden(invite-only, never listed) - Membership roles:
adminandmember, with promote/demote capabilities - Join requests: for private groups, users submit requests that admins approve or reject
- Invitations: admins can invite users directly (blocked users are rejected)
- CRUD operations: create, update, delete groups with metadata support
- Group chat: integrated via the Chat API with
chat_type: \"group\"
7. Parties
Ephemeral groups of users for short-lived sessions (e.g., matchmaking squads):
- Invite-only joining: the party leader sends invites by user ID to friends or shared-group members
- Invite flow:
POST /parties/invite→ recipient accepts viaPOST /parties/invite/acceptor declines viaPOST /parties/invite/decline; leader can cancel viaPOST /parties/invite/cancel - Invite visibility: leader can list sent invites (
GET /parties/invitations/sent); recipient can list received invites (GET /parties/invitations) - Connection requirement: invites can only be sent to users who are friends or share at least one group with the leader
- One party at a time: a user can only be in one party; accepting an invite while already in a party is rejected
- Leader management: the creator is the leader; leadership can be transferred
- Lobby integration: parties can create or join lobbies as a group
- Party chat: integrated via the Chat API with
chat_type: \"party\" - Real-time events via the party WebSocket channel
8. Chat
Real-time messaging across multiple conversation types:
- Chat types:
lobby(within a lobby),group(within a group),party(within a party),friend(DMs between friends) - Send messages with content, optional metadata, and automatic access validation
- List messages with pagination (newest first)
- Read tracking: mark messages as read and get unread counts per conversation
- Real-time delivery via PubSub and WebSocket channels
- Moderation hooks:
before_chat_messagepipeline hook for filtering/blocking
9. Leaderboards
Server-managed ranked scoreboards:
- Multiple leaderboards: create named leaderboards with configurable sort order
- Score submission: submit scores with optional metadata
- Rankings: retrieve paginated rankings with user details
- Reset support: leaderboards can be reset periodically
10. Key-Value Storage
Per-user persistent key-value storage for game state, preferences, and settings:
- Get/set/delete key-value pairs scoped to the authenticated user
- List keys with optional prefix filtering
- Metadata support: values can include arbitrary JSON metadata
11. Achievements
Track player accomplishments with progress-based or instant-unlock achievements:
- Achievement definitions: admin-created with slug, title, description, icon, sort order, and optional progress target
- Progress tracking: increment progress toward a target; auto-unlocks when progress reaches the target
- Instant unlock: directly unlock achievements without progress tracking
- Hidden achievements: details obscured ("???") until unlocked by the user
- Public listings: paginated, optionally filtered; authenticated users see their own progress
- Admin management: create, update, delete, grant, revoke, unlock, and increment achievements
12. Real-time: WebSocket Channels
The server provides real-time communication via Phoenix WebSocket channels. Connect to the WebSocket endpoint and join topic-based channels for live updates.
12.1 Connection
Connect to wss://your-server.com/socket with your JWT token as a parameter:
const socket = new Socket(\"wss://your-server.com/socket\", { params: { token: \"<access_token>\" } })
socket.connect()12.2 Available Channels
- User channel (
user:<user_id>): notifications, friend events, achievement unlocks, party/group invites - Lobby channel (
lobby:<lobby_id>): lobby member joins/leaves, lobby updates, lobby chat - Lobbies channel (
lobbies): global lobby list changes (created, updated, deleted) - Group channel (
group:<group_id>): group member changes, group updates, group chat - Groups channel (
groups): global group list changes - Party channel (
party:<party_id>): party member changes, party updates, party chat
12.3 JS SDK Helper
The GameRealtime class (included in this SDK) wraps Phoenix.Socket with convenient channel helpers:
import { GameRealtime } from '@ughuuu/game_server'
const realtime = new GameRealtime('https://your-server.com', accessToken)
const userChannel = realtime.joinUserChannel(userId)
userChannel.on('notification', payload => console.log(payload))Requires the phoenix npm package as a peer dependency: npm install phoenix
13. Real-time: WebRTC DataChannels
For low-latency game data, the server supports WebRTC DataChannels alongside WebSocket. The server acts as a WebRTC peer (not P2P between clients).
13.1 How It Works
- Client connects via WebSocket and joins the User channel
- Client sends an SDP offer over the channel (
webrtc:offerevent) - Server responds with an SDP answer (
webrtc:answerevent) - ICE candidates are exchanged (
webrtc:iceevents) - Once connected, named DataChannels carry game data at low latency
13.2 Default DataChannels
events(reliable, ordered): important game events (player actions, state changes)state(unreliable, unordered): high-frequency position/state sync
13.3 JS SDK Helper
The GameWebRTC class (included in this SDK, browser-only) handles signaling automatically:
import { GameRealtime, GameWebRTC } from '@ughuuu/game_server'
const realtime = new GameRealtime('https://your-server.com', token)
const userChannel = realtime.joinUserChannel(userId)
const webrtc = new GameWebRTC(userChannel, {
onData: (label, data) => console.log(label, data)
})
await webrtc.connect()
webrtc.send('events', JSON.stringify({ type: 'move', x: 10, y: 20 }))This SDK is automatically generated by the OpenAPI Generator project:
- API version: 1.0.882
- Package version: 1.0.0
- Generator version: 7.21.0
- Build package: org.openapitools.codegen.languages.JavascriptClientCodegen
Installation
For Node.js
npm
To publish the library as a npm, please follow the procedure in "Publishing npm packages".
Then install it via:
npm install @ughuuu/game_server --saveFinally, you need to build the module:
npm run buildLocal development
To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing package.json (and this README). Let's call this JAVASCRIPT_CLIENT_DIR. Then run:
npm installNext, link it globally in npm with the following, also from JAVASCRIPT_CLIENT_DIR:
npm linkTo use the link you just defined in your project, switch to the directory you want to use your @ughuuu/game_server from, and run:
npm link /path/to/<JAVASCRIPT_CLIENT_DIR>Finally, you need to build the module:
npm run buildgit
If the library is hosted at a git repository, e.g.https://github.com/GIT_USER_ID/GIT_REPO_ID then install it via:
npm install GIT_USER_ID/GIT_REPO_ID --saveFor browser
The library also works in the browser environment via npm and browserify. After following
the above steps with Node.js and installing browserify with npm install -g browserify,
perform the following (assuming main.js is your entry file):
browserify main.js > bundle.jsThen include bundle.js in the HTML pages.
Webpack Configuration
Using Webpack you may encounter the following error: "Module not found: Error: Cannot resolve module", most certainly you should disable AMD loader. Add/merge the following section to your webpack config:
module: {
rules: [
{
parser: {
amd: false
}
}
]
}Getting Started
Please follow the installation instruction and execute the following JS code:
var UghuuuGameServer = require('@ughuuu/game_server');
var api = new UghuuuGameServer.AchievementsApi()
var slug = "slug_example"; // {String}
api.getAchievement(slug).then(function(data) {
console.log('API called successfully. Returned data: ' + data);
}, function(error) {
console.error(error);
});
Documentation for API Endpoints
All URIs are relative to http://localhost:4000
Class | Method | HTTP request | Description ------------ | ------------- | ------------- | ------------- UghuuuGameServer.AchievementsApi | getAchievement | GET /api/v1/achievements/{slug} | Get achievement details UghuuuGameServer.AchievementsApi | listAchievements | GET /api/v1/achievements | List achievements UghuuuGameServer.AchievementsApi | myAchievements | GET /api/v1/achievements/me | List my unlocked achievements UghuuuGameServer.AchievementsApi | userAchievements | GET /api/v1/achievements/user/{user_id} | List a user's unlocked achievements UghuuuGameServer.AdminAchievementsApi | adminCreateAchievement | POST /api/v1/admin/achievements | Create achievement (admin) UghuuuGameServer.AdminAchievementsApi | adminDeleteAchievement | DELETE /api/v1/admin/achievements/{id} | Delete achievement (admin) UghuuuGameServer.AdminAchievementsApi | adminGrantAchievement | POST /api/v1/admin/achievements/grant | Grant achievement to user (admin) UghuuuGameServer.AdminAchievementsApi | adminIncrementAchievement | POST /api/v1/admin/achievements/increment | Increment achievement progress for user (admin) UghuuuGameServer.AdminAchievementsApi | adminListAchievements | GET /api/v1/admin/achievements | List all achievements (admin, includes hidden) UghuuuGameServer.AdminAchievementsApi | adminRevokeAchievement | POST /api/v1/admin/achievements/revoke | Revoke achievement from user (admin) UghuuuGameServer.AdminAchievementsApi | adminUnlockAchievement | POST /api/v1/admin/achievements/unlock | Unlock achievement for user (admin) UghuuuGameServer.AdminAchievementsApi | adminUpdateAchievement | PATCH /api/v1/admin/achievements/{id} | Update achievement (admin) UghuuuGameServer.AdminChatApi | adminDeleteChatConversation | DELETE /api/v1/admin/chat/conversation | Delete all messages in a conversation (admin) UghuuuGameServer.AdminChatApi | adminDeleteChatMessage | DELETE /api/v1/admin/chat/{id} | Delete a chat message (admin) UghuuuGameServer.AdminChatApi | adminListChatMessages | GET /api/v1/admin/chat | List all chat messages (admin) UghuuuGameServer.AdminGroupsApi | adminDeleteGroup | DELETE /api/v1/admin/groups/{id} | Delete a group (admin) UghuuuGameServer.AdminGroupsApi | adminListGroups | GET /api/v1/admin/groups | List all groups (admin) UghuuuGameServer.AdminGroupsApi | adminUpdateGroup | PATCH /api/v1/admin/groups/{id} | Update a group (admin) UghuuuGameServer.AdminKVApi | adminCreateKvEntry | POST /api/v1/admin/kv/entries | Create KV entry (admin) UghuuuGameServer.AdminKVApi | adminDeleteKv | DELETE /api/v1/admin/kv | Delete KV by key (admin) UghuuuGameServer.AdminKVApi | adminDeleteKvEntry | DELETE /api/v1/admin/kv/entries/{id} | Delete KV entry by id (admin) UghuuuGameServer.AdminKVApi | adminListKvEntries | GET /api/v1/admin/kv/entries | List KV entries (admin) UghuuuGameServer.AdminKVApi | adminUpdateKvEntry | PATCH /api/v1/admin/kv/entries/{id} | Update KV entry by id (admin) UghuuuGameServer.AdminKVApi | adminUpsertKv | PUT /api/v1/admin/kv | Upsert KV by key (admin) UghuuuGameServer.AdminLeaderboardsApi | adminCreateLeaderboard | POST /api/v1/admin/leaderboards | Create leaderboard (admin) UghuuuGameServer.AdminLeaderboardsApi | adminDeleteLeaderboard | DELETE /api/v1/admin/leaderboards/{id} | Delete leaderboard (admin) UghuuuGameServer.AdminLeaderboardsApi | adminDeleteLeaderboardRecord | DELETE /api/v1/admin/leaderboards/{id}/records/{record_id} | Delete leaderboard record (admin) UghuuuGameServer.AdminLeaderboardsApi | adminDeleteLeaderboardUserRecord | DELETE /api/v1/admin/leaderboards/{id}/records/user/{user_id} | Delete a user's record (admin) UghuuuGameServer.AdminLeaderboardsApi | adminEndLeaderboard | POST /api/v1/admin/leaderboards/{id}/end | End leaderboard (admin) UghuuuGameServer.AdminLeaderboardsApi | adminSubmitLeaderboardScore | POST /api/v1/admin/leaderboards/{id}/records | Submit score (admin) UghuuuGameServer.AdminLeaderboardsApi | adminUpdateLeaderboard | PATCH /api/v1/admin/leaderboards/{id} | Update leaderboard (admin) UghuuuGameServer.AdminLeaderboardsApi | adminUpdateLeaderboardRecord | PATCH /api/v1/admin/leaderboards/{id}/records/{record_id} | Update leaderboard record (admin) UghuuuGameServer.AdminLobbiesApi | adminDeleteLobby | DELETE /api/v1/admin/lobbies/{id} | Delete lobby by id (admin) UghuuuGameServer.AdminLobbiesApi | adminListLobbies | GET /api/v1/admin/lobbies | List all lobbies (admin) UghuuuGameServer.AdminLobbiesApi | adminUpdateLobby | PATCH /api/v1/admin/lobbies/{id} | Update lobby by id (admin) UghuuuGameServer.AdminNotificationsApi | adminCreateNotification | POST /api/v1/admin/notifications | Create a notification (admin) UghuuuGameServer.AdminNotificationsApi | adminDeleteNotification | DELETE /api/v1/admin/notifications/{id} | Delete a notification (admin) UghuuuGameServer.AdminNotificationsApi | adminListNotifications | GET /api/v1/admin/notifications | List all notifications (admin) UghuuuGameServer.AdminSessionsApi | adminDeleteSession | DELETE /api/v1/admin/sessions/{id} | Delete session token by id (admin) UghuuuGameServer.AdminSessionsApi | adminDeleteUserSessions | DELETE /api/v1/admin/users/{id}/sessions | Delete all session tokens for a user (admin) UghuuuGameServer.AdminSessionsApi | adminListSessions | GET /api/v1/admin/sessions | List sessions (admin) UghuuuGameServer.AdminUsersApi | adminDeleteUser | DELETE /api/v1/admin/users/{id} | Delete user (admin) UghuuuGameServer.AdminUsersApi | adminUpdateUser | PATCH /api/v1/admin/users/{id} | Update user (admin) UghuuuGameServer.AuthenticationApi | deviceLogin | POST /api/v1/login/device | Device login UghuuuGameServer.AuthenticationApi | linkDevice | POST /api/v1/me/device | Link device ID UghuuuGameServer.AuthenticationApi | login | POST /api/v1/login | Login UghuuuGameServer.AuthenticationApi | logout | DELETE /api/v1/logout | Logout UghuuuGameServer.AuthenticationApi | oauthApiCallback | POST /api/v1/auth/{provider}/callback | API callback / code exchange UghuuuGameServer.AuthenticationApi | oauthCallbackApiAppleIos | POST /api/v1/auth/apple/ios/callback | Apple callback (native iOS) UghuuuGameServer.AuthenticationApi | oauthGoogleIdToken | POST /api/v1/auth/google/id_token | Google ID token login (native/mobile) UghuuuGameServer.AuthenticationApi | oauthRequest | GET /api/v1/auth/{provider} | Initiate API OAuth UghuuuGameServer.AuthenticationApi | oauthSessionStatus | GET /api/v1/auth/session/{session_id} | Get OAuth session status UghuuuGameServer.AuthenticationApi | refreshToken | POST /api/v1/refresh | Refresh access token UghuuuGameServer.AuthenticationApi | unlinkDevice | DELETE /api/v1/me/device | Unlink device ID UghuuuGameServer.AuthenticationApi | unlinkProvider | DELETE /api/v1/me/providers/{provider} | Unlink OAuth provider UghuuuGameServer.ChatApi | chatUnreadCount | GET /api/v1/chat/unread | Get unread message count UghuuuGameServer.ChatApi | deleteChatMessage | DELETE /api/v1/chat/messages/{id} | Delete your own chat message UghuuuGameServer.ChatApi | getChatMessage | GET /api/v1/chat/messages/{id} | Get a single chat message UghuuuGameServer.ChatApi | listChatMessages | GET /api/v1/chat/messages | List chat messages UghuuuGameServer.ChatApi | markChatRead | POST /api/v1/chat/read | Mark chat as read UghuuuGameServer.ChatApi | sendChatMessage | POST /api/v1/chat/messages | Send a chat message UghuuuGameServer.ChatApi | updateChatMessage | PATCH /api/v1/chat/messages/{id} | Update your own chat message UghuuuGameServer.FriendsApi | acceptFriendRequest | POST /api/v1/friends/{id}/accept | Accept a friend request UghuuuGameServer.FriendsApi | blockFriendRequest | POST /api/v1/friends/{id}/block | Block a friend request / user UghuuuGameServer.FriendsApi | createFriendRequest | POST /api/v1/friends | Send a friend request UghuuuGameServer.FriendsApi | listBlockedFriends | GET /api/v1/me/blocked | List users you've blocked UghuuuGameServer.FriendsApi | listFriendRequests | GET /api/v1/me/friend-requests | List pending friend requests (incoming and outgoing) UghuuuGameServer.FriendsApi | listFriends | GET /api/v1/me/friends | List current user's friends (returns a paginated set of user objects) UghuuuGameServer.FriendsApi | rejectFriendRequest | POST /api/v1/friends/{id}/reject | Reject a friend request UghuuuGameServer.FriendsApi | removeFriendship | DELETE /api/v1/friends/{id} | Remove/cancel a friendship or request UghuuuGameServer.FriendsApi | unblockFriend | POST /api/v1/friends/{id}/unblock | Unblock a previously-blocked friendship UghuuuGameServer.GroupsApi | acceptGroupInvite | POST /api/v1/groups/invitations/{invite_id}/accept | Accept a group invitation UghuuuGameServer.GroupsApi | approveJoinRequest | POST /api/v1/groups/{id}/join_requests/{request_id}/approve | Approve a join request (admin only) UghuuuGameServer.GroupsApi | cancelGroupInvite | DELETE /api/v1/groups/sent_invitations/{invite_id} | Cancel a sent group invitation UghuuuGameServer.GroupsApi | cancelJoinRequest | DELETE /api/v1/groups/{id}/join_requests/{request_id} | Cancel your own pending join request UghuuuGameServer.GroupsApi | createGroup | POST /api/v1/groups | Create a group UghuuuGameServer.GroupsApi | declineGroupInvite | POST /api/v1/groups/invitations/{invite_id}/decline | Decline a group invitation UghuuuGameServer.GroupsApi | demoteGroupMember | POST /api/v1/groups/{id}/demote | Demote admin to member UghuuuGameServer.GroupsApi | getGroup | GET /api/v1/groups/{id} | Get group details UghuuuGameServer.GroupsApi | inviteToGroup | POST /api/v1/groups/{id}/invite | Invite a user to a group (admin only) UghuuuGameServer.GroupsApi | joinGroup | POST /api/v1/groups/{id}/join | Join a group UghuuuGameServer.GroupsApi | kickGroupMember | POST /api/v1/groups/{id}/kick | Kick a member (admin only) UghuuuGameServer.GroupsApi | leaveGroup | POST /api/v1/groups/{id}/leave | Leave a group UghuuuGameServer.GroupsApi | listGroupInvitations | GET /api/v1/groups/invitations | List my group invitations UghuuuGameServer.GroupsApi | listGroupMembers | GET /api/v1/groups/{id}/members | List group members UghuuuGameServer.GroupsApi | listGroups | GET /api/v1/groups | List groups UghuuuGameServer.GroupsApi | listJoinRequests | GET /api/v1/groups/{id}/join_requests | List pending join requests (admin only) UghuuuGameServer.GroupsApi | listMyGroups | GET /api/v1/groups/me | List groups I belong to UghuuuGameServer.GroupsApi | listSentInvitations | GET /api/v1/groups/sent_invitations | List group invitations I have sent UghuuuGameServer.GroupsApi | notifyGroup | POST /api/v1/groups/{id}/notify | Send a notification to all group members UghuuuGameServer.GroupsApi | promoteGroupMember | POST /api/v1/groups/{id}/promote | Promote member to admin UghuuuGameServer.GroupsApi | rejectJoinRequest | POST /api/v1/groups/{id}/join_requests/{request_id}/reject | Reject a join request (admin only) UghuuuGameServer.GroupsApi | updateGroup | PATCH /api/v1/groups/{id} | Update a group (admin only) UghuuuGameServer.HealthApi | index | GET /api/v1/health | Health check UghuuuGameServer.HooksApi | callHook | POST /api/v1/hooks/call | Invoke a hook function UghuuuGameServer.HooksApi | listHooks | GET /api/v1/hooks | List available hook functions UghuuuGameServer.KVApi | getKv | GET /api/v1/kv/{key} | Get a key/value entry UghuuuGameServer.LeaderboardsApi | getLeaderboard | GET /api/v1/leaderboards/{id} | Get a leaderboard by ID UghuuuGameServer.LeaderboardsApi | getMyRecord | GET /api/v1/leaderboards/{id}/records/me | Get current user's record UghuuuGameServer.LeaderboardsApi | listLeaderboardRecords | GET /api/v1/leaderboards/{id}/records | List leaderboard records UghuuuGameServer.LeaderboardsApi | listLeaderboards | GET /api/v1/leaderboards | List leaderboards UghuuuGameServer.LeaderboardsApi | listRecordsAroundUser | GET /api/v1/leaderboards/{id}/records/around/{user_id} | List records around a user UghuuuGameServer.LeaderboardsApi | resolveLeaderboardSlugs | POST /api/v1/leaderboards/resolve | Resolve multiple slugs to active leaderboards UghuuuGameServer.LobbiesApi | createLobby | POST /api/v1/lobbies | Create a lobby UghuuuGameServer.LobbiesApi | getLobby | GET /api/v1/lobbies/{id} | Get a single lobby UghuuuGameServer.LobbiesApi | joinLobby | POST /api/v1/lobbies/{id}/join | Join a lobby UghuuuGameServer.LobbiesApi | kickUser | POST /api/v1/lobbies/kick | Kick a user from the lobby (host only) UghuuuGameServer.LobbiesApi | leaveLobby | POST /api/v1/lobbies/leave | Leave the current lobby UghuuuGameServer.LobbiesApi | listLobbies | GET /api/v1/lobbies | List lobbies UghuuuGameServer.LobbiesApi | quickJoin | POST /api/v1/lobbies/quick_join | Quick-join or create a lobby UghuuuGameServer.LobbiesApi | updateLobby | PATCH /api/v1/lobbies | Update lobby (host only) UghuuuGameServer.NotificationsApi | deleteNotifications | DELETE /api/v1/notifications | Delete notifications by IDs UghuuuGameServer.NotificationsApi | listNotifications | GET /api/v1/notifications | List own notifications UghuuuGameServer.NotificationsApi | sendNotification | POST /api/v1/notifications | Send a notification to a friend UghuuuGameServer.PartiesApi | acceptPartyInvite | POST /api/v1/parties/invite/accept | Accept a party invite UghuuuGameServer.PartiesApi | cancelPartyInvite | POST /api/v1/parties/invite/cancel | Cancel a pending party invite (leader only) UghuuuGameServer.PartiesApi | createParty | POST /api/v1/parties | Create a party UghuuuGameServer.PartiesApi | declinePartyInvite | POST /api/v1/parties/invite/decline | Decline a party invite UghuuuGameServer.PartiesApi | inviteToParty | POST /api/v1/parties/invite | Invite a user to the party (leader only) UghuuuGameServer.PartiesApi | kickPartyMember | POST /api/v1/parties/kick | Kick a member from the party (leader only) UghuuuGameServer.PartiesApi | leaveParty | POST /api/v1/parties/leave | Leave the current party UghuuuGameServer.PartiesApi | listPartyInvitations | GET /api/v1/parties/invitations | List pending party invites for the current user UghuuuGameServer.PartiesApi | listSentPartyInvitations | GET /api/v1/parties/invitations/sent | List pending party invites sent by the current leader UghuuuGameServer.PartiesApi | partyCreateLobby | POST /api/v1/parties/create_lobby | Create a lobby with the party (leader only) UghuuuGameServer.PartiesApi | partyJoinLobby | POST /api/v1/parties/join_lobby/{id} | Join a lobby with the party (leader only) UghuuuGameServer.PartiesApi | showParty | GET /api/v1/parties/me | Get current party UghuuuGameServer.PartiesApi | updateParty | PATCH /api/v1/parties | Update party settings (leader only) UghuuuGameServer.UsersApi | deleteCurrentUser | DELETE /api/v1/me | Delete current user UghuuuGameServer.UsersApi | getCurrentUser | GET /api/v1/me | Return current user info UghuuuGameServer.UsersApi | getUser | GET /api/v1/users/{id} | Get a user by id UghuuuGameServer.UsersApi | searchUsers | GET /api/v1/users | Search users by id/email/display_name UghuuuGameServer.UsersApi | updateCurrentUserDisplayName | PATCH /api/v1/me/display_name | Update current user's display name UghuuuGameServer.UsersApi | updateCurrentUserPassword | PATCH /api/v1/me/password | Update current user password
Documentation for Models
- UghuuuGameServer.AcceptPartyInviteRequest
- UghuuuGameServer.AdminCreateAchievementRequest
- UghuuuGameServer.AdminCreateKvEntry200Response
- UghuuuGameServer.AdminCreateKvEntryRequest
- UghuuuGameServer.AdminCreateLeaderboardRequest
- UghuuuGameServer.AdminCreateNotification400Response
- UghuuuGameServer.AdminCreateNotificationRequest
- UghuuuGameServer.AdminDeleteChatConversation200Response
- UghuuuGameServer.AdminEndLeaderboard200Response
- UghuuuGameServer.AdminEndLeaderboard200ResponseData
- UghuuuGameServer.AdminIncrementAchievementRequest
- UghuuuGameServer.AdminListAchievements200Response
- UghuuuGameServer.AdminListChatMessages200Response
- UghuuuGameServer.AdminListChatMessages200ResponseDataInner
- UghuuuGameServer.AdminListGroups200Response
- UghuuuGameServer.AdminListKvEntries200Response
- UghuuuGameServer.AdminListKvEntries200ResponseDataInner
- UghuuuGameServer.AdminListLobbies200Response
- UghuuuGameServer.AdminListLobbies200ResponseDataInner
- UghuuuGameServer.AdminListNotifications200Response
- UghuuuGameServer.AdminListNotifications200ResponseDataInner
- UghuuuGameServer.AdminListNotifications200ResponseMeta
- UghuuuGameServer.AdminListSessions200Response
- UghuuuGameServer.AdminListSessions200ResponseDataInner
- UghuuuGameServer.AdminRevokeAchievementRequest
- UghuuuGameServer.AdminSubmitLeaderboardScore200Response
- UghuuuGameServer.AdminSubmitLeaderboardScore200ResponseData
- UghuuuGameServer.AdminSubmitLeaderboardScoreRequest
- UghuuuGameServer.AdminUnlockAchievementRequest
- UghuuuGameServer.AdminUpdateAchievement200Response
- UghuuuGameServer.AdminUpdateAchievementRequest
- UghuuuGameServer.AdminUpdateGroup200Response
- UghuuuGameServer.AdminUpdateGroupRequest
- UghuuuGameServer.AdminUpdateKvEntryRequest
- UghuuuGameServer.AdminUpdateLeaderboardRecordRequest
- UghuuuGameServer.AdminUpdateLeaderboardRequest
- UghuuuGameServer.AdminUpdateLobby200Response
- UghuuuGameServer.AdminUpdateLobbyRequest
- UghuuuGameServer.AdminUpdateUser200Response
- UghuuuGameServer.AdminUpdateUser200ResponseData
- UghuuuGameServer.AdminUpdateUserRequest
- UghuuuGameServer.CallHook200Response
- UghuuuGameServer.CallHookRequest
- UghuuuGameServer.CancelGroupInvite200Response
- UghuuuGameServer.CancelJoinRequest200Response
- UghuuuGameServer.CancelPartyInviteRequest
- UghuuuGameServer.ChatUnreadCount200Response
- UghuuuGameServer.CreateFriendRequestRequest
- UghuuuGameServer.CreateGroupRequest
- UghuuuGameServer.CreateLobbyRequest
- UghuuuGameServer.CreatePartyRequest
- UghuuuGameServer.DeclinePartyInviteRequest
- UghuuuGameServer.DeleteNotifications200Response
- UghuuuGameServer.DeleteNotificationsRequest
- UghuuuGameServer.DemoteGroupMemberRequest
- UghuuuGameServer.DeviceLoginRequest
- UghuuuGameServer.ErrorResponse
- UghuuuGameServer.GetChatMessage200Response
- UghuuuGameServer.GetCurrentUser200Response
- UghuuuGameServer.GetCurrentUser200ResponseLinkedProviders
- UghuuuGameServer.GetKv200Response
- UghuuuGameServer.GetLobby200Response
- UghuuuGameServer.GetLobby200ResponseMembersInner
- UghuuuGameServer.GetMyRecord200Response
- UghuuuGameServer.HealthResponse
- UghuuuGameServer.InviteToGroup200Response
- UghuuuGameServer.InviteToGroupRequest
- UghuuuGameServer.InviteToPartyRequest
- UghuuuGameServer.KickGroupMemberRequest
- UghuuuGameServer.KickUserRequest
- UghuuuGameServer.LinkDeviceRequest
- UghuuuGameServer.ListBlockedFriends200Response
- UghuuuGameServer.ListBlockedFriends200ResponseDataInner
- UghuuuGameServer.ListBlockedFriends200ResponseDataInnerRequester
- UghuuuGameServer.ListChatMessages200Response
- UghuuuGameServer.ListFriendRequests200Response
- UghuuuGameServer.ListFriendRequests200ResponseIncomingInner
- UghuuuGameServer.ListFriendRequests200ResponseIncomingInnerRequester
- UghuuuGameServer.ListFriendRequests200ResponseMeta
- UghuuuGameServer.ListFriends200Response
- UghuuuGameServer.ListFriends200ResponseDataInner
- UghuuuGameServer.ListGroupInvitations200Response
- UghuuuGameServer.ListGroupInvitations200ResponseDataInner
- UghuuuGameServer.ListGroupMembers200Response
- UghuuuGameServer.ListGroupMembers200ResponseDataInner
- UghuuuGameServer.ListJoinRequests200Response
- UghuuuGameServer.ListLeaderboardRecords200Response
- UghuuuGameServer.ListLeaderboardRecords200ResponseDataInner
- UghuuuGameServer.ListLeaderboards200Response
- UghuuuGameServer.ListLeaderboards200ResponseDataInner
- UghuuuGameServer.ListLobbies200Response
- UghuuuGameServer.ListLobbies200ResponseDataInner
- UghuuuGameServer.ListMyGroups200Response
- UghuuuGameServer.ListMyGroups200ResponseDataInner
- UghuuuGameServer.ListNotifications200Response
- UghuuuGameServer.ListNotifications200ResponseDataInner
- UghuuuGameServer.ListPartyInvitations200ResponseInner
- UghuuuGameServer.ListRecordsAroundUser200Response
- UghuuuGameServer.ListSentInvitations200Response
- UghuuuGameServer.ListSentInvitations200ResponseDataInner
- UghuuuGameServer.Login200Response
- UghuuuGameServer.Login200ResponseData
- UghuuuGameServer.LoginRequest
- UghuuuGameServer.MarkChatReadRequest
- UghuuuGameServer.NotifyGroup200Response
- UghuuuGameServer.NotifyGroupRequest
- UghuuuGameServer.OAuthSessionData
- UghuuuGameServer.OAuthSessionDataDetails
- UghuuuGameServer.OAuthSessionStatus
- UghuuuGameServer.OauthApiCallback200Response
- UghuuuGameServer.OauthApiCallbackRequest
- UghuuuGameServer.OauthCallbackApiAppleIosRequest
- UghuuuGameServer.OauthGoogleIdTokenRequest
- UghuuuGameServer.OauthRequest200Response
- UghuuuGameServer.OauthSessionStatus404Response
- UghuuuGameServer.PartyCreateLobbyRequest
- UghuuuGameServer.PartyJoinLobbyRequest
- UghuuuGameServer.PromoteGroupMemberRequest
- UghuuuGameServer.QuickJoinRequest
- UghuuuGameServer.RefreshToken200Response
- UghuuuGameServer.RefreshToken200ResponseData
- UghuuuGameServer.RefreshTokenRequest
- UghuuuGameServer.ResolveLeaderboardSlugs200Response
- UghuuuGameServer.ResolveLeaderboardSlugsRequest
- UghuuuGameServer.SearchUsers200Response
- UghuuuGameServer.SearchUsers200ResponseDataInner
- UghuuuGameServer.SendChatMessageRequest
- UghuuuGameServer.SendNotificationRequest
- UghuuuGameServer.ShowParty200Response
- UghuuuGameServer.ShowParty200ResponseMembersInner
- UghuuuGameServer.UpdateChatMessageRequest
- UghuuuGameServer.UpdateCurrentUserDisplayNameRequest
- UghuuuGameServer.UpdateCurrentUserPassword400Response
- UghuuuGameServer.UpdateCurrentUserPasswordRequest
- UghuuuGameServer.UpdateGroupRequest
- UghuuuGameServer.UpdateLobbyRequest
- UghuuuGameServer.UpdatePartyRequest
- UghuuuGameServer.UserAchievements200Response
- UghuuuGameServer.UserAchievements200ResponseDataInner
Documentation for Authorization
Authentication schemes defined for the API:
authorization
- Type: Bearer authentication (JWT)
