<!--
{
  "availability" : [
    "iOS: 16.0.0 -",
    "iPadOS: 16.0.0 -",
    "macCatalyst: 17.0.0 -",
    "macOS: 14.0.0 -",
    "tvOS: 16.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 9.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "MusicKit",
  "identifier" : "/documentation/MusicKit/MusicLibrary",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "MusicKit"
    ],
    "preciseIdentifier" : "s:8MusicKit0A7LibraryC"
  },
  "title" : "MusicLibrary"
}
-->

# MusicLibrary

An object your app uses to access the user’s music library.

```
class MusicLibrary
```

## Topics

### Instance Methods

[`func add<MusicItemType>(MusicItemType) async throws`](/documentation/MusicKit/MusicLibrary/add(_:))

Adds an item to the user’s music library.

[`func add<MusicItemType>(MusicItemType, to: Playlist) async throws -> Playlist`](/documentation/MusicKit/MusicLibrary/add(_:to:))

Adds an item to the end of an existing playlist.

[`func createPlaylist(name: String, description: String?, authorDisplayName: String?) async throws -> Playlist`](/documentation/MusicKit/MusicLibrary/createPlaylist(name:description:authorDisplayName:))

Creates a playlist in the user’s music library.

[`func createPlaylist<S, MusicPlaylistAddableType>(name: String, description: String?, authorDisplayName: String?, items: S) async throws -> Playlist`](/documentation/MusicKit/MusicLibrary/createPlaylist(name:description:authorDisplayName:items:))

Creates a playlist in the user’s music library.

[`func edit(Playlist, name: String?, description: String?, authorDisplayName: String?) async throws -> Playlist`](/documentation/MusicKit/MusicLibrary/edit(_:name:description:authorDisplayName:))

Edits a playlist that your app has created.

[`func edit<S, MusicPlaylistAddableType>(Playlist, name: String?, description: String?, authorDisplayName: String?, items: S) async throws -> Playlist`](/documentation/MusicKit/MusicLibrary/edit(_:name:description:authorDisplayName:items:))

Edits a playlist that your app has created including items
to rebuild the list of entries.

### Type Properties

[`static let shared: MusicLibrary`](/documentation/MusicKit/MusicLibrary/shared)

A shared object that allows your app to modify the user’s music library.

### Enumerations

[`enum Error`](/documentation/MusicKit/MusicLibrary/Error)

An error that the music library can throw upon accessing, manipulating, or requesting data from the user’s music library.

---

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)