4.1 KiB
plexswift
An Open API Spec for interacting with Plex.tv and Plex Servers
Requirements
The SDK supports iOS 13 and later.
🏗 Welcome to your new SDK! 🏗
It has been generated successfully based on your OpenAPI spec. However, it is not yet ready for production use. Here are some next steps:
- 🛠 Make your SDK feel handcrafted by customizing it
- ♻️ Refine your SDK quickly by iterating locally with the Speakeasy CLI
- 🎁 Publish your SDK to package managers by configuring automatic publishing
- ✨ When ready to productionize, delete this section from the README
SDK Installation
Swift Package Manager
You can add plexswift to your project directly in Xcode (File > Add Packages...) or by adding it to your project's Package.swift file:
dependencies: [
.package(url: "https://github.com/LukeHagar/plexswift.git", .upToNextMajor(from: "0.0.1"))
]
SDK Example Usage
Example
import Foundation
import Plexswift
let client = Client(security: .accessToken("<YOUR_API_KEY_HERE>"))
let response = try await client.server.getServerCapabilities()
switch response.data {
case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):
// Handle response
break
case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):
// Handle response
break
case .empty:
// Handle empty response
break
}
Available Resources and Operations
Authentication
Global Security Schemes
The SDK supports the following security scheme globally through the Shared.Security type:
| Name | Type | Scheme |
|---|---|---|
.accessToken |
apiKey | API key |
You can set the appropriate security parameters by passing a Shared.Security value for the security parameter when initializing the Client instance. For example:
import Foundation
import Plexswift
let client = Client(security: .accessToken("<YOUR_API_KEY_HERE>"))
let response = try await client.server.getServerCapabilities()
switch response.data {
case .twoHundredApplicationJsonObject(let twoHundredApplicationJsonObject):
// Handle response
break
case .fourHundredAndOneApplicationJsonObject(let fourHundredAndOneApplicationJsonObject):
// Handle response
break
case .empty:
// Handle empty response
break
}
Development
Maturity
This SDK is in beta, and there may be breaking changes between versions without a major version update. Therefore, we recommend pinning usage to a specific package version. This way, you can install the same version each time without breaking changes unless you are intentionally looking for the latest version.
Contributions
While we value open-source contributions to this SDK, this library is generated programmatically. Feel free to open a PR or a Github issue as a proof of concept and we'll do our best to include it in a future release!