psnawp_api.models.search.games_search_datatypes module

Contents

psnawp_api.models.search.games_search_datatypes module#

Contains datatypes for the game search result endpoint.

class GameConceptResult[source]#

Bases: TypedDict

Represents a conceptual search result with optional default product.

defaultProduct: GameProductResult | None#
id: str#
invariantName: str#
itemType: str#
localizedStoreDisplayClassification: str | None#
media: list[GameMedia]#
name: str#
platforms: list[str]#
price: GameSkuPrice | None#
storeDisplayClassification: str | None#
type: str#
class GameContextContainer[source]#

Bases: TypedDict

Holds the universal context search section of the response.

universalContextSearch: GameUniversalContextSearchResponse#
class GameDomainContainer[source]#

Bases: TypedDict

Wraps the universalDomainSearch payload, which may either carry only cursors or full result lists.

universalDomainSearch: GameUniversalDomainSearchResponse#
class GameItemHighlight[source]#

Bases: TypedDict

Text highlighting metadata for search result fields.

name: list[str] | None#
class GameMedia[source]#

Bases: TypedDict

Media asset metadata for search results (images, videos, etc.).

role: str#
type: str#
url: str#
class GameProductResult[source]#

Bases: TypedDict

Represents a concrete product search result.

id: str#
invariantName: str#
itemType: str#
localizedStoreDisplayClassification: str | None#
media: list[GameMedia]#
name: str#
platforms: list[str]#
price: GameSkuPrice | None#
storeDisplayClassification: str | None#
type: str#
class GameQualification[source]#

Bases: TypedDict

Qualification metadata linked to discounted SKUs.

type: str#
value: str#
class GameQueryFrequency[source]#

Bases: TypedDict

Timing settings for debouncing search queries.

filterDebounceMs: int#
searchDebounceMs: int#
class GameRootResponse[source]#

Bases: TypedDict

Top-level response wrapper for game search data.

data: GameContextContainer#
class GameSearchResultItem[source]#

Bases: TypedDict

A single item in a domain-specific search result list.

highlight: GameItemHighlight#
id: str#
result: GameConceptResult | GameProductResult#
resultOriginFlag: list[str] | None#
class GameSkuPrice[source]#

Bases: TypedDict

Pricing details for a given SKU in search results.

basePrice: str#
basePriceValue: int#
campaignId: str | None#
currencyCode: str#
discountText: str | None#
discountedPrice: str#
discountedValue: int#
endTime: str | None#
isExclusive: bool#
isFree: bool#
isTiedToSubscription: bool#
qualifications: list[GameQualification] | None#
rewardId: str#
serviceBranding: list[str]#
skuId: str#
upsellServiceBranding: list[str]#
upsellText: str | None#
class GameUniversalContextSearchResponse[source]#

Bases: TypedDict

Represents aggregated search results across all domains.

queryFrequency: GameQueryFrequency#
results: list[GameUniversalDomainSearchResponse]#
class GameUniversalDomainSearchResponse[source]#

Bases: TypedDict

Search results scoped to a single domain.

domain: str#
domainTitle: str#
next: str#
searchResults: list[GameSearchResultItem]#
totalResultCount: int#
zeroState: bool#
class SearchDomain(*values)[source]#

Bases: IntEnum

Enum representing the different domains for game search results.

ADD_ONS = 1#
FULL_GAMES = 0#
USERS = 2#
default_game_root_response() GameRootResponse[source]#

Build a fresh GameRootResponse with “empty” defaults.

  • All literal strings are set to “” or their Literal value

  • All ints to 0, bools to False, lists to []

  • Contains two placeholder domain entries