Documentation
¶
Index ¶
- Constants
- func AppDetailsUrl(appId string) *url.URL
- func AppReviewsUrl(appId string) *url.URL
- func AppendShortcut(shortcut *Shortcut, kvShortcuts *steam_vdf.KeyValues) error
- func DeckAppCompatibilityReportUrl(appId string) *url.URL
- func DecodeCategory(category int) string
- func GetShortcutByAppId(appId uint32, kvShortcuts *steam_vdf.KeyValues) *steam_vdf.KeyValues
- func NewsForAppUrl(appId string) *url.URL
- func RemoveShortcuts(appIds uint32, kvShortcuts *steam_vdf.KeyValues) error
- func ShortcutAppId(appName string) uint32
- func SteamCommunityUrl(appId string) *url.URL
- func SteamDeckDecodeLocToken(token string) string
- func SteamDeckTrimLocToken(token string) string
- func SteamGuidesUrl(appId string) *url.URL
- func SteamIdFromUserId(userIdStr string) (int64, error)
- func SteamOsDecodeLocToken(token string) string
- func SteamOsTrimLocToken(token string) string
- func UpdateShortcut(index string, shortcut *Shortcut, kvShortcuts *steam_vdf.KeyValues) error
- type AppDetails
- func (ad *AppDetails) GetCategories() []string
- func (ad *AppDetails) GetControllerSupport() string
- func (ad *AppDetails) GetGenres() []string
- func (ad *AppDetails) GetIsFree() bool
- func (ad *AppDetails) GetMetacriticId() (string, error)
- func (ad *AppDetails) GetMetacriticScore() int
- func (ad *AppDetails) GetName() string
- func (ad *AppDetails) GetRequiredAge() int
- func (ad *AppDetails) GetShortDescription() string
- func (ad *AppDetails) GetSupportEmail() string
- func (ad *AppDetails) GetSupportUrl() string
- func (ad *AppDetails) GetType() string
- func (ad *AppDetails) GetWebsite() string
- type AppDetailsResponse
- type AppDetailsSuccessData
- type AppNews
- type AppReviews
- type Author
- type BlogUrlGetter
- type DeckAppCompatibilityReport
- func (dacr *DeckAppCompatibilityReport) GetBlogUrl() string
- func (dacr *DeckAppCompatibilityReport) GetSteamDeckDisplayTypes() []string
- func (dacr *DeckAppCompatibilityReport) GetSteamDeckResults() []string
- func (dacr *DeckAppCompatibilityReport) GetSteamOsDisplayTypes() []string
- func (dacr *DeckAppCompatibilityReport) GetSteamOsResults() []string
- func (dacr *DeckAppCompatibilityReport) IsSuccess() bool
- func (dacr *DeckAppCompatibilityReport) SteamDeckString() string
- func (dacr *DeckAppCompatibilityReport) SteamOsString() string
- type DeckAppCompatibilityResults
- type DisplayTypesGetter
- type GetNewsForAppResponse
- type LaunchConfig
- type NewsItem
- type QuerySummary
- type Rating
- type Requirements
- type ResolvedItem
- type ResultsGetter
- type Review
- type Shortcut
- func (s *Shortcut) AllowDesktopConfigKeyValues() *steam_vdf.KeyValues
- func (s *Shortcut) AllowOverlayKeyValues() *steam_vdf.KeyValues
- func (s *Shortcut) AppIdKeyValue() *steam_vdf.KeyValues
- func (s *Shortcut) AppNameKeyValue() *steam_vdf.KeyValues
- func (s *Shortcut) DevkitGameIdKeyValues() *steam_vdf.KeyValues
- func (s *Shortcut) DevkitKeyValues() *steam_vdf.KeyValues
- func (s *Shortcut) DevkitOverrideAppIdKeyValues() *steam_vdf.KeyValues
- func (s *Shortcut) ExeKeyValue() *steam_vdf.KeyValues
- func (s *Shortcut) FlatpakAppIdKeyValues() *steam_vdf.KeyValues
- func (s *Shortcut) IconKeyValue() *steam_vdf.KeyValues
- func (s *Shortcut) IsHiddenKeyValues() *steam_vdf.KeyValues
- func (s *Shortcut) KeyValues(index string) *steam_vdf.KeyValues
- func (s *Shortcut) LastPlayTimeKeyValues() *steam_vdf.KeyValues
- func (s *Shortcut) LaunchOptionsKeyValues() *steam_vdf.KeyValues
- func (s *Shortcut) OpenVRKeyValues() *steam_vdf.KeyValues
- func (s *Shortcut) ShortcutPathKeyValue() *steam_vdf.KeyValues
- func (s *Shortcut) StartDirKeyValue() *steam_vdf.KeyValues
- func (s *Shortcut) TagsKeyValues() *steam_vdf.KeyValues
- type SteamUrlFunc
Constants ¶
View Source
const ( SteamPoweredHost = "steampowered.com" StoreHost = "store." + SteamPoweredHost ApiHost = "api." + SteamPoweredHost SteamCommunityHost = "steamcommunity.com" )
hosts
Variables ¶
This section is empty.
Functions ¶
func AppDetailsUrl ¶ added in v0.1.29
func AppReviewsUrl ¶
func AppendShortcut ¶ added in v0.1.58
func DeckAppCompatibilityReportUrl ¶ added in v0.1.29
func DecodeCategory ¶ added in v0.1.31
func GetShortcutByAppId ¶ added in v0.1.60
func NewsForAppUrl ¶
func RemoveShortcuts ¶ added in v0.1.61
func ShortcutAppId ¶ added in v0.1.60
func SteamCommunityUrl ¶
func SteamDeckDecodeLocToken ¶ added in v0.3.3
func SteamDeckTrimLocToken ¶ added in v0.3.3
func SteamGuidesUrl ¶ added in v0.1.92
func SteamIdFromUserId ¶ added in v0.1.54
func SteamOsDecodeLocToken ¶ added in v0.3.3
func SteamOsTrimLocToken ¶ added in v0.3.3
Types ¶
type AppDetails ¶ added in v0.1.99
type AppDetails struct {
Type string `json:"type"`
Name string `json:"name"`
SteamAppId uint32 `json:"steam_appid"`
RequiredAge any `json:"required_age"` // could be "number" or number
IsFree bool `json:"is_free"`
ControllerSupport string `json:"controller_support"`
DetailedDescription string `json:"detailed_description"`
AboutTheGame string `json:"about_the_game"`
ShortDescription string `json:"short_description"`
SupportedLanguages string `json:"supported_languages"`
HeaderImage string `json:"header_image"`
CapsuleImage string `json:"capsule_image"`
CapsuleImageV5 string `json:"capsule_imagev5"`
Website string `json:"website"`
PcRequirements any `json:"pc_requirements"` // could be {Requirements} or []
MacRequirements any `json:"mac_requirements"` // could be {Requirements} or []
LinuxRequirements any `json:"linux_requirements"` // could be {Requirements} or []
LegalNotice string `json:"legal_notice"`
Developers []string `json:"developers"`
Publishers []string `json:"publishers"`
PriceOverview struct {
Currency string `json:"currency"`
Initial int `json:"initial"`
Final int `json:"final"`
DiscountPercent int `json:"discount_percent"`
InitialFormatted string `json:"initial_formatted"`
FinalFormatted string `json:"final_formatted"`
} `json:"price_overview"`
Packages []int `json:"packages"`
PackageGroups []struct {
Name string `json:"name"`
Title string `json:"title"`
Description string `json:"description"`
SelectionText string `json:"selection_text"`
SaveText string `json:"save_text"`
DisplayType any `json:"display_type"` // could be "number" or number
IsRecurringSubscription string `json:"is_recurring_subscription"`
Subs []struct {
PackageId int `json:"packageid"`
PercentSavingsText string `json:"percent_savings_text"`
PercentSavings int `json:"percent_savings"`
OptionText string `json:"option_text"`
OptionDescription string `json:"option_description"`
CanGetFreeLicense string `json:"can_get_free_license"`
IsFreeLicense bool `json:"is_free_license"`
PriceInCentsWithDiscount int `json:"price_in_cents_with_discount"`
} `json:"subs"`
} `json:"package_groups"`
Platforms struct {
Windows bool `json:"windows"`
Mac bool `json:"mac"`
Linux bool `json:"linux"`
} `json:"platforms"`
Metacritic struct {
Score int `json:"score"`
Url string `json:"url"`
} `json:"metacritic"`
Categories []struct {
Id int `json:"id"`
Description string `json:"description"`
} `json:"categories"`
Genres []struct {
Id string `json:"id"`
Description string `json:"description"`
} `json:"genres"`
Screenshots []struct {
Id int `json:"id"`
PathThumbnail string `json:"path_thumbnail"`
PathFull string `json:"path_full"`
} `json:"screenshots"`
Recommendations struct {
Total int `json:"total"`
} `json:"recommendations"`
ReleaseDate struct {
ComingSoon bool `json:"coming_soon"`
Date string `json:"date"`
} `json:"release_date"`
SupportInfo struct {
Url string `json:"url"`
Email string `json:"email"`
} `json:"support_info"`
Background string `json:"background"`
BackgroundRaw string `json:"background_raw"`
ContentDescriptors struct {
Ids []int `json:"ids"`
Notes *string `json:"notes"`
} `json:"content_descriptors"`
Ratings struct {
Esrb Rating `json:"esrb"`
Pegi Rating `json:"pegi"`
Usk Rating `json:"usk"`
Oflc Rating `json:"oflc"`
Dejus Rating `json:"dejus"`
Csrr Rating `json:"csrr"`
Crl Rating `json:"crl"`
Nzoflc Rating `json:"nzoflc"`
} `json:"ratings"`
}
func (*AppDetails) GetCategories ¶ added in v0.2.0
func (ad *AppDetails) GetCategories() []string
func (*AppDetails) GetControllerSupport ¶ added in v0.2.0
func (ad *AppDetails) GetControllerSupport() string
func (*AppDetails) GetGenres ¶ added in v0.2.0
func (ad *AppDetails) GetGenres() []string
func (*AppDetails) GetIsFree ¶ added in v0.2.0
func (ad *AppDetails) GetIsFree() bool
func (*AppDetails) GetMetacriticId ¶ added in v0.2.66
func (ad *AppDetails) GetMetacriticId() (string, error)
func (*AppDetails) GetMetacriticScore ¶ added in v0.2.0
func (ad *AppDetails) GetMetacriticScore() int
func (*AppDetails) GetName ¶ added in v0.2.0
func (ad *AppDetails) GetName() string
func (*AppDetails) GetRequiredAge ¶ added in v0.2.0
func (ad *AppDetails) GetRequiredAge() int
func (*AppDetails) GetShortDescription ¶ added in v0.2.0
func (ad *AppDetails) GetShortDescription() string
func (*AppDetails) GetSupportEmail ¶ added in v0.2.0
func (ad *AppDetails) GetSupportEmail() string
func (*AppDetails) GetSupportUrl ¶ added in v0.2.0
func (ad *AppDetails) GetSupportUrl() string
func (*AppDetails) GetType ¶ added in v0.2.0
func (ad *AppDetails) GetType() string
func (*AppDetails) GetWebsite ¶ added in v0.2.0
func (ad *AppDetails) GetWebsite() string
type AppDetailsResponse ¶ added in v0.1.99
type AppDetailsResponse map[string]AppDetailsSuccessData
func (AppDetailsResponse) GetAppDetails ¶ added in v0.2.0
func (adr AppDetailsResponse) GetAppDetails() *AppDetails
type AppDetailsSuccessData ¶ added in v0.2.0
type AppDetailsSuccessData struct {
Success bool `json:"success"`
Data AppDetails `json:"data"`
}
type AppReviews ¶
type AppReviews struct {
Success int `json:"success"`
QuerySummary QuerySummary `json:"query_summary"`
Reviews []Review `json:"reviews"`
Cursor string `json:"cursor"`
}
func (*AppReviews) GetReviewScore ¶ added in v0.2.32
func (ar *AppReviews) GetReviewScore() int
func (*AppReviews) GetReviewScoreDesc ¶
func (ar *AppReviews) GetReviewScoreDesc() string
type Author ¶
type Author struct {
SteamId string `json:"steamid"`
NumGamesOwned int `json:"num_games_owned"`
NumReviews int `json:"num_reviews"`
PlaytimeForever int `json:"playtime_forever"`
PlaytimeLastTwoWeeks int `json:"playtime_last_two_weeks"`
PlaytimeAtReview int `json:"playtime_at_review"`
DeckPlaytimeAtReview int `json:"deck_playtime_at_review,omitempty"`
LastPlayed int `json:"last_played"`
}
type BlogUrlGetter ¶ added in v0.1.48
type BlogUrlGetter interface {
GetBlogUrl() string
}
type DeckAppCompatibilityReport ¶ added in v0.1.30
type DeckAppCompatibilityReport struct {
Success int `json:"success"`
Results DeckAppCompatibilityResults `json:"results"`
}
func (*DeckAppCompatibilityReport) GetBlogUrl ¶ added in v0.1.48
func (dacr *DeckAppCompatibilityReport) GetBlogUrl() string
func (*DeckAppCompatibilityReport) GetSteamDeckDisplayTypes ¶ added in v0.3.3
func (dacr *DeckAppCompatibilityReport) GetSteamDeckDisplayTypes() []string
func (*DeckAppCompatibilityReport) GetSteamDeckResults ¶ added in v0.3.3
func (dacr *DeckAppCompatibilityReport) GetSteamDeckResults() []string
func (*DeckAppCompatibilityReport) GetSteamOsDisplayTypes ¶ added in v0.3.3
func (dacr *DeckAppCompatibilityReport) GetSteamOsDisplayTypes() []string
func (*DeckAppCompatibilityReport) GetSteamOsResults ¶ added in v0.3.3
func (dacr *DeckAppCompatibilityReport) GetSteamOsResults() []string
func (*DeckAppCompatibilityReport) IsSuccess ¶ added in v0.1.30
func (dacr *DeckAppCompatibilityReport) IsSuccess() bool
func (*DeckAppCompatibilityReport) SteamDeckString ¶ added in v0.3.3
func (dacr *DeckAppCompatibilityReport) SteamDeckString() string
func (*DeckAppCompatibilityReport) SteamOsString ¶ added in v0.3.3
func (dacr *DeckAppCompatibilityReport) SteamOsString() string
type DeckAppCompatibilityResults ¶ added in v0.2.12
type DeckAppCompatibilityResults struct {
AppID uint32 `json:"appid"`
ResolvedCategory int `json:"resolved_category"`
ResolvedItems []ResolvedItem `json:"resolved_items"`
SteamDeckBlogUrl string `json:"steam_deck_blog_url"`
SearchId any `json:"search_id"`
SteamOsResolvedCategory int `json:"steamos_resolved_category"`
SteamOsResolvedItems []ResolvedItem `json:"steamos_resolved_items"`
}
type DisplayTypesGetter ¶ added in v0.1.48
type DisplayTypesGetter interface {
GetDisplayTypes() []string
}
type GetNewsForAppResponse ¶
type GetNewsForAppResponse struct {
AppNews AppNews `json:"appnews"`
}
type LaunchConfig ¶ added in v0.4.39
type NewsItem ¶
type NewsItem struct {
GId string `json:"gid"`
Title string `json:"title"`
Url string `json:"url"`
IsExternalUrl bool `json:"is_external_url"`
Author string `json:"author"`
Contents string `json:"contents"`
FeedLabel string `json:"feedlabel"`
Date int64 `json:"date"`
FeedName string `json:"feedname"`
FeedType int `json:"feed_type"`
AppId uint32 `json:"appid"`
Tags []string `json:"tags"`
}
type QuerySummary ¶
type Requirements ¶ added in v0.1.99
type ResolvedItem ¶ added in v0.3.3
type ResultsGetter ¶ added in v0.1.48
type ResultsGetter interface {
GetResults() []string
}
type Review ¶
type Review struct {
RecommendationId string `json:"recommendationid"`
Author Author `json:"author"`
Language string `json:"language"`
Review string `json:"review"`
TimestampCreated int64 `json:"timestamp_created"`
TimestampUpdated int64 `json:"timestamp_updated"`
VotedUp bool `json:"voted_up"`
VotesUp int `json:"votes_up"`
VotesFunny int `json:"votes_funny"`
//BUG: Steam weighted_vote_score data contains values like "0.123456789" as well as 0 (no quotes)
//which means we can't use either string (second value will fail), nor number (first value will fail)
//skipping it for the time being
//WeightedVoteScore string `json:"weighted_vote_score"`
CommentCount int `json:"comment_count"`
SteamPurchase bool `json:"steam_purchase"`
ReceivedForFree bool `json:"received_for_free"`
WrittenDuringEarlyAccess bool `json:"written_during_early_access"`
PrimarilySteamDeck bool `json:"primarily_steam_deck"`
}
type Shortcut ¶ added in v0.1.58
type Shortcut struct {
AppId uint32
AppName string
Exe string
StartDir string
Icon string
ShortcutPath string
LaunchOptions string
IsHidden uint32
AllowDesktopConfig uint32
AllowOverlay uint32
OpenVR uint32
Devkit uint32
DevkitGameId string
DevkitOverrideAppId string
LastPlayTime uint32
FlatpakAppId string
Tags []string
}
func NewShortcut ¶ added in v0.1.58
func NewShortcut() *Shortcut
func (*Shortcut) AllowDesktopConfigKeyValues ¶ added in v0.1.58
func (*Shortcut) AllowOverlayKeyValues ¶ added in v0.1.58
func (*Shortcut) AppIdKeyValue ¶ added in v0.1.58
func (*Shortcut) AppNameKeyValue ¶ added in v0.1.58
func (*Shortcut) DevkitGameIdKeyValues ¶ added in v0.1.58
func (*Shortcut) DevkitKeyValues ¶ added in v0.1.58
func (*Shortcut) DevkitOverrideAppIdKeyValues ¶ added in v0.1.58
func (*Shortcut) ExeKeyValue ¶ added in v0.1.58
func (*Shortcut) FlatpakAppIdKeyValues ¶ added in v0.1.58
func (*Shortcut) IconKeyValue ¶ added in v0.1.58
func (*Shortcut) IsHiddenKeyValues ¶ added in v0.1.58
func (*Shortcut) LastPlayTimeKeyValues ¶ added in v0.1.58
func (*Shortcut) LaunchOptionsKeyValues ¶ added in v0.1.58
func (*Shortcut) OpenVRKeyValues ¶ added in v0.1.58
func (*Shortcut) ShortcutPathKeyValue ¶ added in v0.1.58
func (*Shortcut) StartDirKeyValue ¶ added in v0.1.58
func (*Shortcut) TagsKeyValues ¶ added in v0.1.58
type SteamUrlFunc ¶
Source Files
¶
Click to show internal directories.
Click to hide internal directories.