# Sandbox.Package

Represents an asset on Asset Party.

- Kind: class
- Namespace: `Sandbox`
- Assembly: `Sandbox.Engine`

## Constructors

- [`Package`](/api/Sandbox.Package/.ctor)

## Properties

- [`ApiVersion`](/api/Sandbox.Package/ApiVersion): For game extension compatibility. Game targeting extensions are only compatible with that game if the API Versions match.
- [`Archived`](/api/Sandbox.Package/Archived): Whether this package is archived or not.
- [`AssetLicense`](/api/Sandbox.Package/AssetLicense): The license covering this package's art/content assets, identified by name (e.g. "CC0", "CC_BY"). Null when no license is specified. Matches `PackageLicense.Name` in the license catalog, so it can be used to look up the full license details.
- [`CanEdit`](/api/Sandbox.Package/CanEdit): True if we're a member of this package's organization.
- [`Collections`](/api/Sandbox.Package/Collections): How many collections we're in (roughly)
- [`Created`](/api/Sandbox.Package/Created): When the package was originally created.
- [`Description`](/api/Sandbox.Package/Description): Full description of the package.
- [`EditorReferences`](/api/Sandbox.Package/EditorReferences): List of packages that this package depended on during editing.
- [`EngineVersion`](/api/Sandbox.Package/EngineVersion): Engine version this package was uploaded with. This is useful for when the base game undergoes large API changes.
- [`ErrorRate`](/api/Sandbox.Package/ErrorRate): What fraction of users got errors from this package in the last day
- [`Favourited`](/api/Sandbox.Package/Favourited): Number of players who added this package to their favourites.
- [`FileSize`](/api/Sandbox.Package/FileSize): The total size of this package in MB. This only applies to packages from Asset Party, the total file size of local packages are not calculated.
- [`Flair`](/api/Sandbox.Package/Flair): Small icon badges shown over the package's thumbnail - workshop-approved, updated-since-you-played, favourited, contest-winner, etc. Computed on the backend when the package is served. Never default; empty when there's no flair.
- [`FullIdent`](/api/Sandbox.Package/FullIdent): Full unique identity of this package. Cached against the org and ident it was built from, so it's only formatted when they change.
- [`Ident`](/api/Sandbox.Package/Ident): Unique identity of this package within its [organization.](/api/Sandbox.Package/Org).
- [`Info`](/api/Sandbox.Package/Info): Strongly-typed shortcuts for the well-known data values the menu/launcher reads via [Sandbox.Package.GetValue](/api/Sandbox.Package/GetValue). [Sandbox.PackageInfo](/api/Sandbox.PackageInfo) is a thin readonly view over this package, so `package.Info.IsStreamerGame` allocates nothing and keeps the magic string keys and their defaults in one place.
- [`Interaction`](/api/Sandbox.Package/Interaction): Describes the authenticated user's interactions with this package. This is only available clientside for specific users in order to show things like play history state, favourite status and whether they have rated the item or not.
- [`IsFavourite`](/api/Sandbox.Package/IsFavourite): True if this asset is in our favourite list.
- [`IsRemote`](/api/Sandbox.Package/IsRemote): Whether this is a remote or a locally installed package.
- [`LatestChangeLists`](/api/Sandbox.Package/LatestChangeLists): The most recent visible changelists for this package (summary only - id/title/version/date). Full detail is available via [Sandbox.Package.GetChangeListsAsync](/api/Sandbox.Package/GetChangeListsAsync). Never default; empty when there are none.
- [`LatestNewsPost`](/api/Sandbox.Package/LatestNewsPost): The latest news post created by this package
- [`LoadingScreen`](/api/Sandbox.Package/LoadingScreen): If this package is a game, it can provide media to show on the loading screen
- [`Metadata`](/api/Sandbox.Package/Metadata): Server-extracted metadata for the current version's compiled asset (model stats, material flags, clothing info, ...). Null if the version hasn't been processed or its type isn't recognised. Pattern-match the concrete type, e.g. `if ( package.Metadata is Package.ModelMetaData m )`.
- [`Org`](/api/Sandbox.Package/Org): The owner of this package.
- [`PackageReferences`](/api/Sandbox.Package/PackageReferences): List of packages that this package depends on. These will be downloaded and installed when installing this package.
- [`PackageType`](/api/Sandbox.Package/PackageType): What kind of package it is.
- [`PrimaryAsset`](/api/Sandbox.Package/PrimaryAsset): Gets the name of the primary asset path stored in the package metadata. This could be null or empty.
- [`Public`](/api/Sandbox.Package/Public): Whether this package is public or hidden.
- [`Referenced`](/api/Sandbox.Package/Referenced): How many packages we're referenced by (roughly)
- [`Referencing`](/api/Sandbox.Package/Referencing): How many packages we're referencing (roughly)
- [`Reviews`](/api/Sandbox.Package/Reviews): Stats for the reviews. Gives the number of reviews, and the fraction of the total score.
- [`Revision`](/api/Sandbox.Package/Revision): Information about the current package revision/version.
- [`Screenshots`](/api/Sandbox.Package/Screenshots): A list of screenshots
- [`Source`](/api/Sandbox.Package/Source): Link to this package's sources, if set.
- [`Summary`](/api/Sandbox.Package/Summary): A short summary of the package.
- [`Tags`](/api/Sandbox.Package/Tags): List of tags for this package.
- [`Thumb`](/api/Sandbox.Package/Thumb): Link to the thumbnail image of this package.
- [`ThumbTall`](/api/Sandbox.Package/ThumbTall): Link to the thumbnail image of this package.
- [`ThumbWide`](/api/Sandbox.Package/ThumbWide): Link to the thumbnail image of this package.
- [`Title`](/api/Sandbox.Package/Title): A "nice" name of this package, which will be shown to players in UI.
- [`TypeName`](/api/Sandbox.Package/TypeName): What kind of package it is.
- [`Updated`](/api/Sandbox.Package/Updated): When the entry was last updated. If these are different between packages then something updated on the backend.
- [`Url`](/api/Sandbox.Package/Url): A link to this asset on our backend
- [`Usage`](/api/Sandbox.Package/Usage): Statistics for user interactions with this package
- [`VideoThumb`](/api/Sandbox.Package/VideoThumb): Link to the thumbnail video of this package.
- [`VotesDown`](/api/Sandbox.Package/VotesDown): Number of players who voted this package down.
- [`VotesUp`](/api/Sandbox.Package/VotesUp): Number of players who voted this package up.

## Methods

- [`Fetch`](/api/Sandbox.Package/Fetch): Find package information
- [`FetchAsync`](/api/Sandbox.Package/FetchAsync): Find package information
- [`FetchVersions`](/api/Sandbox.Package/FetchVersions): Get package version list
- [`FindAsync`](/api/Sandbox.Package/FindAsync): Retrieve a list of packages
- [`FormatIdent`](/api/Sandbox.Package/FormatIdent)
- [`GetAchievements`](/api/Sandbox.Package/GetAchievements): Get a list of achievements
- [`GetCachedMeta`](/api/Sandbox.Package/GetCachedMeta): [Sandbox.Package.GetMeta](/api/Sandbox.Package/GetMeta) but with cache.
- [`GetCachedTitle`](/api/Sandbox.Package/GetCachedTitle): If we have this package information, try to get its name
- [`GetChangeListsAsync`](/api/Sandbox.Package/GetChangeListsAsync): Fetch the full, paged changelist history for this package - the in-game "what's new" notes, with each entry grouped by category. Returns a single page; call again with an incremented `page` for older entries. Returns empty if the backend is unavailable or the request fails.
- [`GetMeta`](/api/Sandbox.Package/GetMeta): Get metadata value from this package for given key. This will be specific to each [Sandbox.Package.Type](/api/Sandbox.Package.Type).
- [`GetValue`](/api/Sandbox.Package/GetValue): Get a data value. These are usually set on the backend, and are package type specific. These are generally values that are used to configure behaviour in the menu system.
- [`IsMounted`](/api/Sandbox.Package/IsMounted): Check if the package is installed and mounted
- [`ListAsync`](/api/Sandbox.Package/ListAsync): Retrieve a list of packages, organised into groups, for discovery
- [`MountAsync`](/api/Sandbox.Package/MountAsync): Download and mount this package. If withCode is true we'll try to load the assembly if it exists.
- [`SetFavouriteAsync`](/api/Sandbox.SandboxToolExtensions/SetFavouriteAsync): Mark this package as a favourite
- [`SetVoteAsync`](/api/Sandbox.SandboxToolExtensions/SetVoteAsync): Add your vote for this package
- [`SortByReferences`](/api/Sandbox.Package/SortByReferences)
- [`TryGetCached`](/api/Sandbox.Package/TryGetCached): Find package information
- [`TryParseIdent`](/api/Sandbox.Package/TryParseIdent)
- [`UpdateValue`](/api/Sandbox.SandboxToolExtensions/UpdateValue): Update a value on this package
- [`UploadFile`](/api/Sandbox.SandboxToolExtensions/UploadFile): Mark this package as a favourite
