Used to access information and interact with users.
See
IPlayerService for additional methods.
For more info on how to use the Steamworks Web API please see the
Web API Overview.
CheckAppOwnership
GET https://partner.steam-api.com/ISteamUser/CheckAppOwnership/v2/
Name | Type | Required | Description |
key | string | ✔ | Steamworks Web API publisher authentication key. |
steamid | uint64 | ✔ | SteamID of user |
appid | uint32 | ✔ | AppID to check for ownership |
Checks if the specified user owns the app.
The JSON response will contain the following fields:
Name | Type | Description |
---|
ownsapp | bool | Indicates if the user is the actual owner or the app. |
permanent | bool | Whether the user permanetly owns your app. Not true for ownership via Family Sharing, free weekends, or site license |
timestamp | string | Time that the app was acquired. |
ownersteamid | uint64 | Indicates the true owner of the app. |
sitelicense | bool | Indicates if user is borrowing this license from a PC Cafe site. |
This method has previous versions which are no longer officially supported. They will continue to be usable but it's highly recommended that you use the latest version.
Change history:
- Version 2 - Adds element sitelicense to the response.
NOTE: This call requires the publisher API key that owns the specified App ID to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
GetAppPriceInfo
GET https://partner.steam-api.com/ISteamUser/GetAppPriceInfo/v1/
Name | Type | Required | Description |
key | string | ✔ | Steamworks Web API publisher authentication key. |
steamid | uint64 | ✔ | SteamID of user |
appids | string | ✔ | Comma-delimited list of appids (max: 100) |
NOTE: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
GetDeletedSteamIDs
GET https://partner.steam-api.com/ISteamUser/GetDeletedSteamIDs/v1/
Name | Type | Required | Description |
key | string | ✔ | Steamworks Web API publisher authentication key. |
rowversion | uint64 | ✔ | An unsigned 64-bit value used to page through deleted accounts. Pass 0 when calling this API for the first time, then pass the value returned from the previous call for each additional request. This value will need to be stored on your server for future calls. |
You can use GetDeletedSteamIDs to retrieve a list of deleted accounts that owned your game(s) before deletion. This API was created to allow for the deletion of user related data for GDPR and other personal information related purposes.
The provided Steamworks Publisher Key is used for both authentication and to generate the list of appids to check against.
GetFriendList
GET https://partner.steam-api.com/ISteamUser/GetFriendList/v1/
Name | Type | Required | Description |
key | string | ✔ | Steamworks Web API user authentication key. |
steamid | uint64 | ✔ | SteamID of user |
relationship | string | | relationship type (ex: friend) |
GetPlayerBans
GET https://partner.steam-api.com/ISteamUser/GetPlayerBans/v1/
Name | Type | Required | Description |
key | string | ✔ | Steamworks Web API user authentication key. |
steamids | string | ✔ | Comma-delimited list of SteamIDs |
GetPlayerSummaries
GET https://partner.steam-api.com/ISteamUser/GetPlayerSummaries/v2/
Name | Type | Required | Description |
key | string | ✔ | Steamworks Web API user authentication key. |
steamids | string | ✔ | Comma-delimited list of SteamIDs (max: 100) |
NOTE: This call should only be used if your website needs to display information about a user. If your game client needs any of this information, please use the client APIs instead.
This method has previous versions which are no longer officially supported. They will continue to be usable but it's highly recommended that you use the latest version.
Change history:
- Version 2 - Removes element names from arrays
The response from the call will look something like this:
"response":{
"players":[
{
"steamid":"77561198355051011",
"communityvisibilitystate":1,
"profilestate":1,
"personaname":"Mister Manager",
"lastlogoff":1556305001,
"profileurl":"https://steamcommunity.com/profiles/77561198355051011/",
"avatar":"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/32/32f70a383a437d03af91d2f01a0776adf75201b5.jpg",
"avatarmedium":"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/32/32f70a383a437d03af91d2f01a0776adf75201b5_medium.jpg",
"avatarfull":"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/32/32f70a383a437d03af91d2f01a0776adf75201b5_full.jpg",
},
{
"steamid":"77561197978236369",
"communityvisibilitystate":3,
"profilestate":1,
"personaname":"Olive The Dog",
"lastlogoff":1556239336,
"profileurl":"https://steamcommunity.com/id/olive_the_dog/",
"avatar":"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/41/555d2fbb879593c0565ce0489428a09c019feffa.jpg",
"avatarmedium":"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/41/555d2fbb879593c0565ce0489428a09c019feffa_medium.jpg",
"avatarfull":"https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/41/555d2fbb879593c0565ce0489428a09c019feffa_full.jpg",
}
]
}
GetPublisherAppOwnership
GET https://partner.steam-api.com/ISteamUser/GetPublisherAppOwnership/v3/
Name | Type | Required | Description |
key | string | ✔ | Steamworks Web API publisher authentication key. |
steamid | uint64 | ✔ | SteamID of user |
This method has previous versions which are no longer officially supported. They will continue to be usable but it's highly recommended that you use the latest version.
Change history:
- Version 3 - Adds element sitelicense to the response
The response from the call will look something like this:
"appownership":{
"apps":[
{
"appid":60,
"ownsapp":true,
"permanent":true,
"timestamp":"2005-04-03T17:50:29Z",
"ownersteamid":"76561197978236369",
"sitelicense":"false"
},
{
"appid":220,
"ownsapp":false,
"permanent":false,
"timestamp":"NIL",
"ownersteamid":"0",
"sitelicense":"true"
}
]
}
The JSON response will contain the following fields:
Name | Type | Description |
---|
appid | uint32 | AppID associated with your WebAPI key |
ownsapp | bool | Whether the user currently owns your app. Will be true for ownership via purchases, CD-keys, Family Sharing, free weekends, and site license |
permanent | bool | Whether the user permanetly owns your app. Not true for ownership via Family Sharing, free weekends, or site license |
timestamp | string | GMT time for when the user first accquired the appID |
ownersteamid | uint64 | SteamID for the actual owner. If the app is owned via Family Sharing, ownersteamid will be the actual owner. Otherwise will be the same steamID passed in |
sitelicense | bool | Indicates if user is borrowing this license from a commercial site |
NOTE: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
GetPublisherAppOwnershipChanges
GET https://partner.steam-api.com/ISteamUser/GetPublisherAppOwnershipChanges/v1/
Name | Type | Required | Description |
key | string | ✔ | Steamworks Web API publisher authentication key. |
packagerowversion | string | ✔ | The unsigned 64-bit row version to read package changes from. The row version of data read up to will be returned for use in future calls. |
cdkeyrowversion | string | ✔ | The unsigned 64-bit row version to read CD Key changes from. The row version of data read up to will be returned for use in future calls. |
This method can be used to determine what SteamIDs have ownership changes starting from a particular package or key row version number. From the list of SteamIDs returned, a call to
GetPublisherAppOwnership can then return the associated ownership data for the applications in the group associated with the key passed in. A partner may wish to track this data in conjunction with linked Steam Accounts to better understand the state of product ownership on Steam.
To begin, make a call to
GetPublisherAppOwnershipChanges passing in
packagerowversion and
cdkeyrowversion with the values of 0 (zero). The response from the call will look something like this:
"ownershipchanges": {
"steamids": [
{
"steamid": "76561198114498811"
},
{
"steamid": "76561198114498812"
},
...
],
"packagerowversion": "12448390228",
"cdkeyrowversion": "49857241147",
"moredata": true
}
The JSON response will contain the following fields:
Name | Type | Description |
---|
steamids/steamid | string | The list of SteamIDs for any accounts that have changed since the provided row versions. Up to 10,000 SteamIDs will be returned per call. |
packagerowversion | string | The package row version that matches the last SteamID returned. Store this for future calls to GetPublisherAppOwnershipChanges |
cdkeyrowversion | string | The cd key row version that matches the last SteamID returned. Store this for future calls to GetPublisherAppOwnershipChanges |
moredata | bool | Indicates if more and newer data is available. |
After this first call returns:
- Make a call to GetPublisherAppOwnership for each SteamID to get the actual ownership per AppID. Store or use that data as needed.
- Once all the SteamIDs have been processed, check the value of moredata. If it is true, make a new call to GetPublisherAppOwnershipChanges passing in the packagerowversion and cdkeyrowversion as returned from the previous call to GetPublisherAppOwnershipChanges.
- Repeat Step 1 and 2 until moredata returns false.
- Store the final packagerowversion and cdkeyrowversion values for use in future GetPublisherAppOwnershipChanges calls (e.g. 24 hours later) instead of starting at 0 (zero) again.
NOTE: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
GetUserGroupList
GET https://partner.steam-api.com/ISteamUser/GetUserGroupList/v1/
Name | Type | Required | Description |
key | string | ✔ | Steamworks Web API publisher authentication key. |
steamid | uint64 | ✔ | SteamID of user |
ResolveVanityURL
GET https://partner.steam-api.com/ISteamUser/ResolveVanityURL/v1/
Name | Type | Required | Description |
key | string | ✔ | Steamworks Web API user authentication key. |
vanityurl | string | ✔ | The vanity URL to get a SteamID for |
url_type | int32 | | The type of vanity URL. 1 (default): Individual profile, 2: Group, 3: Official game group |