Link to the plugin page: https://zeroqode.com/plugin/steam-complete-api-plugin-for-bubble-1709879742138x695172673828615400
Demo to preview the plugin:
π Live Demo: https://steam-complete-demo.bubbleapps.io/
π Bubble Editor: https://bubble.io/page?version=live&name=&id=steam-complete-demo
Introduction
The plugin lets you retrieve data from Steam with
more than 20+ pre-configured API calls.
The plugin also includes extra calls and features from us.
Prerequisites
You will need an API key in order to authorize yourself and tell Steam you're allowed to request data.
How to setup
Visit the Steam API Key page and log in with your Steam account. (If you don't have a Steam account you will have to create one and buy at least 5 dollars of game to have access to the API)
Once you are on this page, apply for a key and fill out your app URL. You need to provide only the domain of the URL (eg myapp.fr) and make sure it's valid.
Once you filled the form, copy the key from Steam (in blue) and paste it into the plugin settings.
Plugin Element Properties
Plugin Data Calls
π€ GET PLAYER SUMMARY
INFORMATION
Returns basic profile information for a list of 64-bit Steam IDs.
This call is available as a data call.
THE REQUEST
You will need to provide the following information for the call:
π
STEAMID
Comma-delimited list of STEAMID to return profile information for.
Up to 100 Steam IDs can be requested.
THE RESPONSE DATA
Note: Some data associated with a Steam account may be hidden if the user has their profile visibility set to "Friends Only" or "Private". In that case, only public data will be returned.
You will get a list of players which contain the following data:
π
STEAMID
The STEAMID of the player.
π
personaname
The player's username (display name)
π
profileurl
The full URL of the player's Steam Community profile.
π
avatar
The full URL of the player's 32x32px avatar.
avatarmedium
The full URL of the player's 64x64px avatar.
avatarfull
The full URL of the player's 184x184px avatar.
If the user hasn't configured an avatar, this will be the default avatar.
π
personastate
The user's current status.
0 - Offline, 1 - Online, 2 - Busy, 3 - Away, 4 - Snooze, 5 - looking to trade, 6 - looking to play.
If the player's profile is private, this will always be "0", except if the user has set their status to looking to trade or looking to play, because a bug makes those status appear even if the profile is private.
π
communityvisibilitystate
This represents whether the profile is visible or not, and if it is visible, why you are allowed to see it.
Note that because this WebAPI does not use authentication, there are only two possible values returned:
1 - the profile is not visible to you (Private, Friends Only, etc),
3 - the profile is "Public", and the data is visible.
Mike Blaszczak's post on Steam forums says, "The community visibility state this API returns is different than the privacy state. It's the effective visibility state from the account making the request to the account being viewed given the requesting account's relationship to the viewed account."
π
profilestate
If set, indicates the user has a community profile configured (will be set to '1')
π
lastlogoff
The last time the user was online. Only available when you are friends with the requested user (since Feb, 4).
π
commentpermission
If set, indicates the profile allows public comments.
The following items are "private" and will only be returned if the request is made by the player.
π
realname
The player's "Real Name", if they have set it.
π
primaryclanid
The player's primary group, as configured in their Steam Community profile.
π
commentpermission
If set, indicates the profile allows public comments.
π
timecreated
The time the player's account was created.
π
gameserverip
The ip and port of the game server the user is currently playing on, if they are playing on-line in a game using Steam matchmaking. Otherwise will be set to "0.0.0.0:0".
π
GAMEID
If the user is currently in-game, this value will be returned and set to the APPID of that game.
π
gameextrainfo
If the user is currently in-game, this will be the name of the game they are playing. This may be the name of a non-Steam game shortcut.
π
loccountrycode
If set on the user's Steam Community profile, The user's country of residence, formatted as a 2-character ISO country code.
π
locstatecode
If set on the user's Steam Community profile, The user's state of residence
π
loccityid
An internal code indicating the user's city of residence.
More information regarding this call can be found on the Steam Official Reference page.
π€ GET PLAYER FRIEND LIST
INFORMATION
This call gives you a list of friends for a requested player.
This call is available as a data call.
THE REQUEST
You will need to provide the following information for the call:
π
STEAMID
The STEAMID of the player you want to retrieve friends.
THE RESPONSE DATA
You will get a list of players (friends) which contain the following data:
π
STEAMID
The STEAMID of the player (friend).
π
RELATIONSHIP
The type of relationship between the players. Can be "all" or "friend".
π
FRIEND_SINCE
The date since the relationship between the players.
More information regarding this call can be found on the Steam Official Reference page.
π€ GET PLAYER ACHIEVEMENTS
INFORMATION
This call gives you a list of achievements for a requested player for a specific game.
This call is available as a data call.
THE REQUEST
You will need to provide the following information for the call:
π
STEAMID
The STEAMID of the player.
π
APPID
The APPID of the game.
π
L (optional)
If specified, it will return data for the requested language.
Format available here.
THE RESPONSE DATA
You will get a list of achievements which contain the following data:
π
GAMENAME
The name of the requested game.
π
APINAME
The API formatted name of the achievement.
π
ACHIEVED
Whether or not the achievement has been completed.
π
UNLOCKTIME
The date since the achievement is unlocked (if it is).
π
NAME
The name of the achievement (if available).
π
DESCRIPTION
The description of the achievement (if available).
More information regarding this call can be found on the Steam Official Reference page.
π€ GET PLAYER STATS FOR GAME
INFORMATION
This call gives you a list of stats for a requested player for a specific game.
This call is available as a data call.
This call is very close to the π€ GET PLAYER ACHIEVEMENTS call.
More information regarding this call can be found on the Steam Official Reference page.
π€ GET PLAYER RECENTLY PLAYED GAME
INFORMATION
Returns a list of games a player has played in the last two weeks, if the profile is publicly visible. Private, friends-only, and other privacy settings are not supported unless you are asking for your own personal details
This call is available as a data call.
THE REQUEST
You will need to provide the following information for the call:
π
STEAMID
The STEAMID of the player.
π
APPID
The APPID of the game.
THE RESPONSE DATA
You will get a list of games which contain the following data:
π
GAMENAME
The name of the requested game.
π
APPID
The APPID of the game.
π
NAME
The name of the game.
π
PLAYTIME_2WEEKS
The time played in minutes within the last two weeks.
π
PLAYTIME_FOREVER
The time played in minutes.
π
IMG_ICON_URL
The hash to reconstruct the image URL of the icon of the game.
π
IMG_LOGO_URL
The hash to reconstruct the image URL of the logo of the game.
π
PLAYTIME_PLATFORM_FOREVER
The time played in minutes per platform (WINDOWS,LINUX,MAX).
More information regarding this call can be found on the Steam Official Reference page.
π€ GET PLAYER BANS
INFORMATION
Returns Community, VAC, and Economy ban statuses for given players.
This call is available as a data call.
THE REQUEST
You will need to provide the following information for the call:
π
STEAMID
The STEAMID of the player.
THE RESPONSE DATA
You will get a ban item which contain the following data:
π
STEAMID
The STEAMID of the player.
π
CommunityBanned
Indicates whether or not the player is banned from Steam Community
π
VACBanned
Indicates whether or not the player has VAC bans on record.
π
NumberOfVACBans
Number of VAC bans on record.
π
DaysSinceLastBan
Number of days since the last ban.
π
NumberOfGameBans
Number of bans in games, this includes CS:GO Overwatch bans.
π
EconomyBan
The player's ban status in the economy. If the player has no bans on record the string will be "none", if the player is on probation it will say "probation", etc.
More information regarding this call can be found on the Steam Official Reference page.
π€ GET PLAYER OWNED GAMES
INFORMATION
Returns a list of games a player owns along with some playtime information if the profile is publicly visible. Private, friends-only, and other privacy settings are not supported unless you are asking for your own personal details.
This call is available as a data call.
THE REQUEST
You will need to provide the following information for the call:
π
STEAMID
The STEAMID of the player.
π
include_played_free_games
By default, free games like Team Fortress 2 are excluded (as technically everyone owns them). If include_played_free_games is set, they will be returned if the player has played them at some point. This is the same behavior as the games list on the Steam Community.
Can be "true" or "false"
π
include_appinfo
Include game name and logo information in the output instead of appids only.
Can be "true" or "false"
THE RESPONSE DATA
π
GAME_COUNT
The total number of games the user owns (including free games they've played, if include_played_free_games was passed)
You will get a list of games which contain the following data:
π
APPID
The APPID of the game.
π
NAME
The name of the game.
π
PLAYTIME_2WEEKS
The time played in minutes within the last two weeks.
π
PLAYTIME_FOREVER
The time played in minutes.
π
IMG_ICON_URL
The hash to reconstruct the image URL of the icon of the game.
π
IMG_LOGO_URL
The hash to reconstruct the image URL of the logo of the game.
π
PLAYTIME_PLATFORM_FOREVER
The time played in minutes per platform (WINDOWS,LINUX,MAX).
π
has_community_visible_stats
Indicates there is a stats page with achievements or other game stats available for this game.
The uniform URL for accessing this data is http://steamcommunity.com/profiles/{steamid}/stats/{appid}.
For example, Robin's TF2 stats can be found at: http://steamcommunity.com/profiles/76561197960435530/stats/440
More information regarding this call can be found on the Steam Official Reference page.
π€ GET PLAYER STEAM LEVEL
INFORMATION
Returns the Steam Level of a user.
This call is available as a data call.
THE REQUEST
You will need to provide the following information for the call:
π
STEAMID
The STEAMID of the player.
THE RESPONSE DATA
π
LEVEL
The Steam Level of a user.
More information regarding this call can be found on the Steam Official Reference page.
π€ GET PLAYER XP, LEVEL AND BADGES
INFORMATION
Returns all the badges that are owned by a specific user and some extra info about the player xp.
This call is available as a data call.
THE REQUEST
You will need to provide the following information for the call:
π
STEAMID
The STEAMID of the player.
THE RESPONSE DATA
π
player_xp
Missing information. We are open to comments.
π
player_level
Missing information. We are open to comments.
π
player_xp_needed_current_level
Missing information. We are open to comments.
π£
player_xp_needed_to_level_up
Missing information. We are open to comments.
You will get a list of badges which contain the following data:
π
BADGEID
Unique ID of the badge.
π
APPID
Provided if the badge relates to an app (trading cards).
π
completion_time
Time of when the steam user acquired the badge.
π
xp
The experience this badge is worth, contributing toward the steam account's player_xp.
π
communityitemid
Provided if the badge relates to an app (trading cards); the value doesn't seem to be an item in the steam accounts backpack, however the value minus 1 seems to be the item ID for the emoticon granted for crafting this badge, and the value minus 2 seems to be the background granted.
π
level
Missing information. We are open to comments.
π
border_color
Provided if the badge relates to an app (trading cards).
π
scarcity
The amount of people who has this badge.
More information regarding this call can be found on the Steam Official Reference page.
πΉοΈ GET NEWS FOR APP
INFORMATION
Returns a list of games a player owns along with some playtime information if the profile is publicly visible. Private, friends-only, and other privacy settings are not supported unless you are asking for your own personal details.
This call is available as a data call.
THE REQUEST
You will need to provide the following information for the call:
π
APPID
The APPID of the game.
π
COUNT
How many news entities you want to get returned. Optional.
π
MAXLENGTH
The maximum length of each news entry. Optional.
THE RESPONSE DATA
π
COUNT
The total number of news entries returned.
You will get a list of news which contain the following data:
π
GID
The ID of the news item.
π
TITLE
The title of the news item.
π
URL
The Steam URL of the news item. The URL is formatted with https:// and is ready to use.
π
CONTENTS
A shortened extract of the contents (to maxlength characters), terminated by "..." if longer than maxlength.
π
AUTHOR
The author of the news item.
π
DATE
The date of the news item.
π£
feedlabel
Missing information. We are open to comments.
π£
feed_type
Missing information. We are open to comments.
π£
feedname
Missing information. We are open to comments.
More information regarding this call can be found on the Steam Official Reference page.
πΉοΈ GET GLOBAL ACHIEVEMENT PERCENTAGES
INFORMATION
This call gives you the latest global achievement percentages for an app.
This call is available as a data call.
THE REQUEST
You will need to provide the following information for the call:
π
APPID
The APPID of the game.
THE RESPONSE DATA
You will get a list of items which contain the following data:
π
NAME
The achievement's internal name.
π
PERCENT
The percentage of users who have completed the achievement.
More information regarding this call can be found on the Steam Official Reference page.
πΉοΈ GET SCHEMA
INFORMATION
Returns gamename, gameversion and available gamestats (achievements and stats).
This call is available as a data call.
THE REQUEST
You will need to provide the following information for the call:
π
APPID
The APPID of the game.
π
L (optional)
If specified, it will return data for the requested language.
Format available here.
THE RESPONSE DATA
π
GAMENAME
The name of the game.
π
GAMEVERSION
The current version of the game.
You will get a list of achievements which contain the following data:
π
NAME
The API formatted name of the achievement.
π
UNLOCKTIME
The date since the achievement is unlocked (if it is).
π
DISPLAYNAME
The name of the achievement (if available).
π
ICON
The URL of the icon of the achievement. The URL is formatted with https:// and is ready to use.
π
ICONGRAY
The URL of the icon in grey color of the achievement. The URL is formatted with https:// and is ready to use.
You will get a list of stats which contain the following data:
π
NAME
The API formatted name of the achievement.
π
DISPLAYNAME
The name of the achievement (if available).
π£
defaultvalue
Missing information. We are open to comments.
π£
hidden
Missing information. We are open to comments.
π£
feedname
Missing information. We are open to comments.
More information regarding this call can be found on the Steam Official Reference page.
Definition
STEAMID
The Steam ID is the unique ID of the user on Steam. Every steam user has a different ID and so it can be used as an identifier.
Steam has 3 different formats (who are linked to the same user) for its Steam IDs.
Note that you can use the π STEAMID CONVERTER data call to convert Steam IDs.
There is a list of the different SteamID formats:
1οΈβ£
THE STEAM ID 64
THIS IS THE FORMAT YOU NEED TO USE IN THE API DATA CALLS
It's the most popular and used one.
It looks like this: 76561197960287930
You may also see or need these other formatting of the STEAM ID:
2οΈβ£
THE STEAM ID 3
It looks like this: STEAM_X:Y:Z
3οΈβ£
THE STEAM ID
It looks like this: [U:1:123101706]
APPID
As for the Steam ID, the APP ID is the unique ID of a game or an app on Steam. Every steam game has a different ID and so it can be used as an identifier.
Steam has only one format of APPID which is a number (eg 4000).
You can find the APPID of a game in his store page URL:
l parameter
Define the language of the response if the text is localized (have a translation)
A list of all the language codes can be found here.
Reconstruct image URL
Steam can sometimes return an "URL hash" instead of the full picture URL.
To reconstruct the URL toward the picture, you need to use the following scheme.
You need to replace {appid} by the APPID of the game and {hash} by the value returned by the call.
ποΈ
https://media.steampowered.com/steamcommunity/public/images/apps/{appid}/{hash}.jpg
Workflow example
To display information about a player set up a group with type of content - π€ GET PLAYER SUMMARY response player (Steam) and the corresponding data source
set the steamId of the player
use the data in your group to display the info:
Changelogs
Update 08.03.24 - Version 1.2.0
- updated description
Update 08.12.23 - Version 1.1.9
- Update
Update 17.08.23 - Version 1.1.8
- Transfer to Flusk
Update 10.08.23 - Version 1.1.7
- Small update
Update 04.08.23 - Version 1.1.6
- Small update
Update 08.07.22 - Version 1.1.5
- / Deprecating elements
Update 17.01.22 - Version 1.1.4
- Deprecated
Update 17.01.22 - Version 1.1.3
- CORS update
Update 17.01.22 - Version 1.1.2
- Description update
Update 02.02.21 - Version 1.1.1
- "s" issue fix
Update 20.01.21 - Version 1.1.0
- Allow refreshing page
Update 20.01.21 - Version 1.0.1
- Updates
Update 19.01.21 - Version 1.0.0
- First version - added all basics calls, login and modern button.