<!--
{
  "availability" : [
    "iOS: 26.0.0 -",
    "iPadOS: 26.0.0 -",
    "macCatalyst: 26.0.0 -",
    "macOS: 26.0.0 -",
    "tvOS: 26.0.0 -",
    "visionOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "BackgroundAssets",
  "identifier" : "/documentation/BackgroundAssets/AssetPack",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "Background Assets"
    ],
    "preciseIdentifier" : "s:16BackgroundAssets9AssetPackV"
  },
  "title" : "AssetPack"
}
-->

# AssetPack

An archive of assets that the system downloads together.

```
struct AssetPack
```

## Overview

An instance of this structure can be invalidated when the asset pack that it represents is updated on the server.

## Topics

### Identifying assets

[`let id: String`](/documentation/BackgroundAssets/AssetPack/id)

A unique ID for the asset pack.

[`let version: Int`](/documentation/BackgroundAssets/AssetPack/version)

The asset pack’s version number.

### Accessing asset details

[`struct Status`](/documentation/BackgroundAssets/AssetPack/Status)

The status of an asset pack.

[`let userInfo: Data?`](/documentation/BackgroundAssets/AssetPack/userInfo)

JSON-encoded custom information that’s associated with the asset pack.

### Accessing asset language

[`let language: Locale.Language?`](/documentation/BackgroundAssets/AssetPack/language)

The language for which this asset pack is localized.

  <doc://com.apple.documentation/documentation/Foundation/Locale/Language-swift.struct>

### Downloading assets

[`func download(for: BAContentRequest?) -> BADownload`](/documentation/BackgroundAssets/AssetPack/download(for:))

Creates a download object for the asset pack that you schedule using a download manager.

[`let downloadSize: Int`](/documentation/BackgroundAssets/AssetPack/downloadSize)

The size of the download file containing the asset pack in bytes.

## Relationships

### Conforms To

[`Identifiable`](/documentation/Swift/Identifiable)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`Equatable`](/documentation/Swift/Equatable)

[`DecodableWithConfiguration`](/documentation/Foundation/DecodableWithConfiguration)

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

[`Encodable`](/documentation/Swift/Encodable)

[`Sendable`](/documentation/Swift/Sendable)

[`Hashable`](/documentation/Swift/Hashable)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)