From 9b3a44d1f41d578373abea03c7d3555ab65f55de Mon Sep 17 00:00:00 2001 From: speakeasybot <bot@speakeasyapi.dev> Date: Sat, 21 Sep 2024 00:10:22 +0000 Subject: [PATCH] ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.401.2 --- .speakeasy/gen.lock | 68 ++++++-- .speakeasy/gen.yaml | 2 +- .speakeasy/workflow.lock | 14 +- README.md | 15 +- RELEASES.md | 12 +- codeSamples.yaml | 44 ++--- docs/Models/Operations/AutoSelectSubtitle.md | 8 +- docs/Models/Operations/Connections.md | 18 +- .../DefaultSubtitleAccessibility.md | 10 +- .../Operations/DefaultSubtitleForced.md | 8 +- .../Operations/GetAllLibrariesDirectory.md | 42 ++--- .../GetAllLibrariesMediaContainer.md | 2 +- .../Operations/GetAllLibrariesResponseBody.md | 6 +- .../Models/Operations/GetLibraryItemsField.md | 11 ++ .../Operations/GetLibraryItemsFieldType.md | 9 + .../Operations/GetLibraryItemsFilter.md | 12 ++ .../GetLibraryItemsMediaContainer.md | 29 ++-- .../Operations/GetLibraryItemsMetadata.md | 17 +- .../Operations/GetLibraryItemsOperator.md | 9 + docs/Models/Operations/GetLibraryItemsSort.md | 13 ++ docs/Models/Operations/GetLibraryItemsType.md | 14 ++ docs/Models/Operations/GetPinRequest.md | 15 +- .../GetPlaylistContentsQueryParamType.md | 12 +- .../Operations/GetServerResourcesRequest.md | 11 +- .../Operations/GetTokenByPinIdRequest.md | 7 +- .../GetTokenDetailsUserPlexAccount.md | 4 +- .../GetTopWatchedContentQueryParamType.md | 12 +- docs/Models/Operations/IncludeGuids.md | 8 +- docs/Models/Operations/IncludeHttps.md | 8 +- docs/Models/Operations/IncludeIPv6.md | 8 +- docs/Models/Operations/IncludeMeta.md | 8 +- docs/Models/Operations/IncludeRelay.md | 8 +- docs/Models/Operations/Location.md | 4 +- docs/Models/Operations/MediaGuid.md | 8 + .../Operations/MediaReviewsVisibility.md | 10 +- docs/Models/Operations/Meta.md | 12 ++ docs/Models/Operations/PlexDevice.md | 52 +++--- .../PostUsersSignInDataAutoSelectSubtitle.md | 8 +- ...sSignInDataDefaultSubtitleAccessibility.md | 10 +- ...ostUsersSignInDataDefaultSubtitleForced.md | 8 +- ...stUsersSignInDataMediaReviewsVisibility.md | 10 +- .../Operations/PostUsersSignInDataRequest.md | 9 - .../PostUsersSignInDataUserPlexAccount.md | 4 +- .../PostUsersSignInDataUserProfile.md | 20 +-- .../PostUsersSignInDataWatchedIndicator.md | 10 +- docs/Models/Operations/Protocol.md | 11 ++ docs/Models/Operations/QueryParamType.md | 12 +- docs/Models/Operations/Type.md | 12 +- .../Operations/UploadPlaylistRequest.md | 3 +- docs/Models/Operations/UserProfile.md | 20 +-- docs/Models/Operations/WatchedIndicator.md | 10 +- docs/sdks/authentication/README.md | 15 +- docs/sdks/hubs/README.md | 2 +- docs/sdks/library/README.md | 12 +- docs/sdks/playlists/README.md | 11 +- docs/sdks/plex/README.md | 26 ++- docs/sdks/search/README.md | 4 +- docs/sdks/server/README.md | 6 +- src/Authentication.php | 13 +- src/Models/Components/Security.php | 2 +- src/Models/Operations/AutoSelectSubtitle.php | 6 +- src/Models/Operations/Connections.php | 22 ++- .../DefaultSubtitleAccessibility.php | 8 +- .../Operations/DefaultSubtitleForced.php | 6 +- .../Operations/GetAllLibrariesDirectory.php | 163 ++++++++---------- .../GetAllLibrariesMediaContainer.php | 11 +- .../GetAllLibrariesResponseBody.php | 11 +- .../Operations/GetLibraryItemsField.php | 56 ++++++ .../Operations/GetLibraryItemsFieldType.php | 39 +++++ .../Operations/GetLibraryItemsFilter.php | 64 +++++++ .../GetLibraryItemsMediaContainer.php | 107 ++++++------ .../Operations/GetLibraryItemsMetadata.php | 82 +++++---- .../Operations/GetLibraryItemsOperator.php | 37 ++++ src/Models/Operations/GetLibraryItemsSort.php | 76 ++++++++ src/Models/Operations/GetLibraryItemsType.php | 91 ++++++++++ src/Models/Operations/GetPinRequest.php | 16 +- .../GetPlaylistContentsQueryParamType.php | 8 +- .../Operations/GetServerResourcesRequest.php | 16 +- .../Operations/GetTokenByPinIdRequest.php | 16 +- .../GetTokenDetailsUserPlexAccount.php | 4 +- .../GetTopWatchedContentQueryParamType.php | 8 +- src/Models/Operations/IncludeGuids.php | 4 +- src/Models/Operations/IncludeHttps.php | 4 +- src/Models/Operations/IncludeIPv6.php | 4 +- src/Models/Operations/IncludeMeta.php | 4 +- src/Models/Operations/IncludeRelay.php | 4 +- src/Models/Operations/Location.php | 16 +- src/Models/Operations/MediaGuid.php | 32 ++++ .../Operations/MediaReviewsVisibility.php | 5 +- src/Models/Operations/Meta.php | 48 ++++++ .../PostUsersSignInDataAutoSelectSubtitle.php | 6 +- ...SignInDataDefaultSubtitleAccessibility.php | 8 +- ...stUsersSignInDataDefaultSubtitleForced.php | 6 +- ...tUsersSignInDataMediaReviewsVisibility.php | 5 +- .../Operations/PostUsersSignInDataRequest.php | 43 ----- .../PostUsersSignInDataUserPlexAccount.php | 4 +- .../PostUsersSignInDataUserProfile.php | 61 +++---- .../PostUsersSignInDataWatchedIndicator.php | 7 +- src/Models/Operations/Protocol.php | 17 ++ src/Models/Operations/QueryParamType.php | 8 +- src/Models/Operations/Type.php | 8 +- .../Operations/UploadPlaylistRequest.php | 12 +- src/Models/Operations/UserProfile.php | 61 +++---- src/Models/Operations/WatchedIndicator.php | 7 +- src/Playlists.php | 3 + src/Plex.php | 7 - src/SDKConfiguration.php | 6 +- 107 files changed, 1256 insertions(+), 769 deletions(-) create mode 100644 docs/Models/Operations/GetLibraryItemsField.md create mode 100644 docs/Models/Operations/GetLibraryItemsFieldType.md create mode 100644 docs/Models/Operations/GetLibraryItemsFilter.md create mode 100644 docs/Models/Operations/GetLibraryItemsOperator.md create mode 100644 docs/Models/Operations/GetLibraryItemsSort.md create mode 100644 docs/Models/Operations/GetLibraryItemsType.md create mode 100644 docs/Models/Operations/MediaGuid.md create mode 100644 docs/Models/Operations/Meta.md delete mode 100644 docs/Models/Operations/PostUsersSignInDataRequest.md create mode 100644 docs/Models/Operations/Protocol.md create mode 100644 src/Models/Operations/GetLibraryItemsField.php create mode 100644 src/Models/Operations/GetLibraryItemsFieldType.php create mode 100644 src/Models/Operations/GetLibraryItemsFilter.php create mode 100644 src/Models/Operations/GetLibraryItemsOperator.php create mode 100644 src/Models/Operations/GetLibraryItemsSort.php create mode 100644 src/Models/Operations/GetLibraryItemsType.php create mode 100644 src/Models/Operations/MediaGuid.php create mode 100644 src/Models/Operations/Meta.php delete mode 100644 src/Models/Operations/PostUsersSignInDataRequest.php create mode 100644 src/Models/Operations/Protocol.php diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 2ad6d80..41fa76d 100755 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,20 +1,21 @@ lockVersion: 2.0.0 id: 01a51eb2-5d90-4a24-b154-68e491d02c36 management: - docChecksum: 5bf578a672589649d8ed83c3927c50a6 + docChecksum: 1b63d7c28734a44b0339f405b186b290 docVersion: 0.0.3 - speakeasyVersion: 1.399.2 - generationVersion: 2.416.6 - releaseVersion: 0.8.1 - configChecksum: 26050d73033e2c897e4bba0d1ad1bd42 + speakeasyVersion: 1.401.2 + generationVersion: 2.421.3 + releaseVersion: 0.9.0 + configChecksum: 29b7adf1314f56c915e639b553b51899 repoURL: https://github.com/LukeHagar/plexphp.git repoSubDirectory: . installationURL: https://github.com/LukeHagar/plexphp published: true features: php: - core: 3.4.3 + core: 3.4.4 deprecations: 2.81.1 + enums: 2.81.1 errors: 0.1.2 flattening: 2.81.1 globalSecurity: 2.81.7 @@ -425,15 +426,21 @@ generatedFiles: - docs/Models/Operations/GetLibraryHubsWriter.md - docs/Models/Operations/GetLibraryItemsCountry.md - docs/Models/Operations/GetLibraryItemsDirector.md + - docs/Models/Operations/GetLibraryItemsField.md + - docs/Models/Operations/GetLibraryItemsFieldType.md + - docs/Models/Operations/GetLibraryItemsFilter.md - docs/Models/Operations/GetLibraryItemsGenre.md - docs/Models/Operations/GetLibraryItemsMedia.md - docs/Models/Operations/GetLibraryItemsMediaContainer.md - docs/Models/Operations/GetLibraryItemsMetadata.md + - docs/Models/Operations/GetLibraryItemsOperator.md - docs/Models/Operations/GetLibraryItemsPart.md - docs/Models/Operations/GetLibraryItemsRequest.md - docs/Models/Operations/GetLibraryItemsResponse.md - docs/Models/Operations/GetLibraryItemsResponseBody.md - docs/Models/Operations/GetLibraryItemsRole.md + - docs/Models/Operations/GetLibraryItemsSort.md + - docs/Models/Operations/GetLibraryItemsType.md - docs/Models/Operations/GetLibraryItemsWriter.md - docs/Models/Operations/GetMediaProvidersDirectory.md - docs/Models/Operations/GetMediaProvidersMediaContainer.md @@ -625,8 +632,10 @@ generatedFiles: - docs/Models/Operations/MarkUnplayedResponse.md - docs/Models/Operations/Media.md - docs/Models/Operations/MediaContainer.md + - docs/Models/Operations/MediaGuid.md - docs/Models/Operations/MediaProvider.md - docs/Models/Operations/MediaReviewsVisibility.md + - docs/Models/Operations/Meta.md - docs/Models/Operations/Metadata.md - docs/Models/Operations/MinSize.md - docs/Models/Operations/MyPlex.md @@ -653,7 +662,6 @@ generatedFiles: - docs/Models/Operations/PostUsersSignInDataFeatures.md - docs/Models/Operations/PostUsersSignInDataMailingListStatus.md - docs/Models/Operations/PostUsersSignInDataMediaReviewsVisibility.md - - docs/Models/Operations/PostUsersSignInDataRequest.md - docs/Models/Operations/PostUsersSignInDataRequestBody.md - docs/Models/Operations/PostUsersSignInDataResponse.md - docs/Models/Operations/PostUsersSignInDataServices.md @@ -664,6 +672,7 @@ generatedFiles: - docs/Models/Operations/PostUsersSignInDataUserProfile.md - docs/Models/Operations/PostUsersSignInDataWatchedIndicator.md - docs/Models/Operations/Producer.md + - docs/Models/Operations/Protocol.md - docs/Models/Operations/Provider.md - docs/Models/Operations/QueryParamFilter.md - docs/Models/Operations/QueryParamForce.md @@ -1287,15 +1296,21 @@ generatedFiles: - src/Models/Operations/GetLibraryHubsWriter.php - src/Models/Operations/GetLibraryItemsCountry.php - src/Models/Operations/GetLibraryItemsDirector.php + - src/Models/Operations/GetLibraryItemsField.php + - src/Models/Operations/GetLibraryItemsFieldType.php + - src/Models/Operations/GetLibraryItemsFilter.php - src/Models/Operations/GetLibraryItemsGenre.php - src/Models/Operations/GetLibraryItemsMedia.php - src/Models/Operations/GetLibraryItemsMediaContainer.php - src/Models/Operations/GetLibraryItemsMetadata.php + - src/Models/Operations/GetLibraryItemsOperator.php - src/Models/Operations/GetLibraryItemsPart.php - src/Models/Operations/GetLibraryItemsRequest.php - src/Models/Operations/GetLibraryItemsResponse.php - src/Models/Operations/GetLibraryItemsResponseBody.php - src/Models/Operations/GetLibraryItemsRole.php + - src/Models/Operations/GetLibraryItemsSort.php + - src/Models/Operations/GetLibraryItemsType.php - src/Models/Operations/GetLibraryItemsWriter.php - src/Models/Operations/GetMediaProvidersDirectory.php - src/Models/Operations/GetMediaProvidersMediaContainer.php @@ -1486,8 +1501,10 @@ generatedFiles: - src/Models/Operations/MarkUnplayedResponse.php - src/Models/Operations/Media.php - src/Models/Operations/MediaContainer.php + - src/Models/Operations/MediaGuid.php - src/Models/Operations/MediaProvider.php - src/Models/Operations/MediaReviewsVisibility.php + - src/Models/Operations/Meta.php - src/Models/Operations/Metadata.php - src/Models/Operations/MinSize.php - src/Models/Operations/MyPlex.php @@ -1514,7 +1531,6 @@ generatedFiles: - src/Models/Operations/PostUsersSignInDataFeatures.php - src/Models/Operations/PostUsersSignInDataMailingListStatus.php - src/Models/Operations/PostUsersSignInDataMediaReviewsVisibility.php - - src/Models/Operations/PostUsersSignInDataRequest.php - src/Models/Operations/PostUsersSignInDataRequestBody.php - src/Models/Operations/PostUsersSignInDataResponse.php - src/Models/Operations/PostUsersSignInDataServices.php @@ -1525,6 +1541,7 @@ generatedFiles: - src/Models/Operations/PostUsersSignInDataUserProfile.php - src/Models/Operations/PostUsersSignInDataWatchedIndicator.php - src/Models/Operations/Producer.php + - src/Models/Operations/Protocol.php - src/Models/Operations/Provider.php - src/Models/Operations/QueryParamFilter.php - src/Models/Operations/QueryParamForce.php @@ -1675,7 +1692,7 @@ examples: width: 110 height: 165 opacity: 643869 - blur: 20 + blur: 0 minSize: 0 upscale: 0 url: "/library/metadata/49564/thumb/1654258204" @@ -1931,10 +1948,10 @@ examples: "": parameters: query: - X-Plex-Product: Plex Web - X-Plex-Device: Linux - X-Plex-Version: 4.133.0 - X-Plex-Platform: Chrome + X-Plex-Product: "Plex Web" + X-Plex-Device: "Linux" + X-Plex-Version: "4.133.0" + X-Plex-Platform: "Chrome" responses: "200": application/json: {"id": 308667304, "code": "7RQZ", "product": "0", "trusted": false, "qr": "https://plex.tv/api/v2/pins/qr/7RQZ", "clientIdentifier": "string", "location": {"code": "VI", "continent_code": "NA", "country": "United States Virgin Islands", "city": "Amsterdam", "european_union_member": true, "time_zone": "America/St_Thomas", "postal_code": 802, "in_privacy_restricted_country": true, "in_privacy_restricted_region": true, "subdivisions": "Saint Thomas", "coordinates": "18.3381, -64.8941"}, "expiresIn": 876, "createdAt": "2024-07-16T17:03:05Z", "expiresAt": "2024-07-16T17:18:05Z", "authToken": null, "newRegistration": null} @@ -2081,6 +2098,24 @@ examples: application/json: {"errors": []} "401": application/json: {"errors": []} + speakeasy-default-get-library-items: + parameters: + path: + sectionKey: 9518 + tag: "edition" + query: + includeGuids: 1 + includeMeta: 1 + type: 2 + X-Plex-Container-Start: 0 + X-Plex-Container-Size: 50 + responses: + "200": + application/json: {"MediaContainer": {"size": 70, "allowSync": true, "art": "/:/resources/movie-fanart.jpg", "identifier": "com.plexapp.plugins.library", "librarySectionID": "<value>", "librarySectionTitle": "Movies", "librarySectionUUID": "322a231a-b7f7-49f5-920f-14c61199cd30", "mediaTagPrefix": "/system/bundle/media/flags/", "mediaTagVersion": 1701731894, "thumb": "/:/resources/movie.png", "title1": "Movies", "title2": "Recently Released", "viewGroup": "movie", "viewMode": 65592, "mixedParents": true, "Metadata": [{"ratingKey": "58683", "key": "/library/metadata/58683", "guid": "plex://movie/5d7768ba96b655001fdc0408", "studio": "20th Century Studios", "type": "movie", "title": "Avatar: The Way of Water", "contentRating": "PG-13", "summary": "Jake Sully lives with his newfound family formed on the extrasolar moon Pandora. Once a familiar threat returns to finish what was previously started, Jake must work with Neytiri and the army of the Na'vi race to protect their home.", "rating": 7.6, "audienceRating": 9.2, "year": 2022, "tagline": "Return to Pandora.", "thumb": "/library/metadata/58683/thumb/1703239236", "art": "/library/metadata/58683/art/1703239236", "duration": 11558112, "originallyAvailableAt": "2022-12-14T00:00:00Z", "addedAt": 1680457607, "updatedAt": 1703239236, "audienceRatingImage": "rottentomatoes://image.rating.upright", "chapterSource": "media", "primaryExtraKey": "/library/metadata/58684", "ratingImage": "rottentomatoes://image.rating.ripe", "grandparentRatingKey": "66", "grandparentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentKey": "/library/metadata/66", "grandparentTitle": "Caprica", "grandparentThumb": "/library/metadata/66/thumb/1705716261", "grandparentArt": "/library/metadata/66/art/1705716261", "grandparentTheme": "/library/metadata/66/theme/1705716261", "Media": [{"id": 119534, "duration": 11558112, "bitrate": 25025, "width": 3840, "height": 2072, "aspectRatio": 1.85, "audioChannels": 6, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "Part": [{"id": 119542, "key": "/library/parts/119542/1680457526/file.mkv", "duration": 11558112, "file": "/movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv", "size": 36158371307, "container": "mkv", "videoProfile": "main 10"}, {"id": 119542, "key": "/library/parts/119542/1680457526/file.mkv", "duration": 11558112, "file": "/movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv", "size": 36158371307, "container": "mkv", "videoProfile": "main 10"}, {"id": 119542, "key": "/library/parts/119542/1680457526/file.mkv", "duration": 11558112, "file": "/movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv", "size": 36158371307, "container": "mkv", "videoProfile": "main 10"}]}], "Genre": [{"tag": "Adventure"}, {"tag": "Adventure"}, {"tag": "Adventure"}], "Country": [{"tag": "United States of America"}, {"tag": "United States of America"}], "Director": [{"tag": "James Cameron"}, {"tag": "James Cameron"}], "Writer": [{"tag": "James Cameron"}], "Role": [{"tag": "Sigourney Weaver"}, {"tag": "Sigourney Weaver"}, {"tag": "Sigourney Weaver"}], "Guid": [{"id": "imdb://tt13015952"}], "titleSort": "Whale", "viewCount": 1, "lastViewedAt": 1682752242, "originalTitle": "映画 ブラッククローバー 魔法帝の剣", "viewOffset": 5222500, "skipCount": 1, "index": 1, "theme": "/library/metadata/1/theme/1705636920", "leafCount": 14, "viewedLeafCount": 0, "childCount": 1, "hasPremiumExtras": "1", "hasPremiumPrimaryExtra": "1", "parentRatingKey": "66", "parentGuid": "plex://show/5d9c081b170e24001f2a7be4", "parentStudio": "UCP", "parentKey": "/library/metadata/66", "parentTitle": "Caprica", "parentIndex": 1, "parentYear": 2010, "parentThumb": "/library/metadata/66/thumb/1705716261", "parentTheme": "/library/metadata/66/theme/1705716261"}, {"ratingKey": "58683", "key": "/library/metadata/58683", "guid": "plex://movie/5d7768ba96b655001fdc0408", "studio": "20th Century Studios", "type": "movie", "title": "Avatar: The Way of Water", "contentRating": "PG-13", "summary": "Jake Sully lives with his newfound family formed on the extrasolar moon Pandora. Once a familiar threat returns to finish what was previously started, Jake must work with Neytiri and the army of the Na'vi race to protect their home.", "rating": 7.6, "audienceRating": 9.2, "year": 2022, "tagline": "Return to Pandora.", "thumb": "/library/metadata/58683/thumb/1703239236", "art": "/library/metadata/58683/art/1703239236", "duration": 11558112, "originallyAvailableAt": "2022-12-14T00:00:00Z", "addedAt": 1680457607, "updatedAt": 1703239236, "audienceRatingImage": "rottentomatoes://image.rating.upright", "chapterSource": "media", "primaryExtraKey": "/library/metadata/58684", "ratingImage": "rottentomatoes://image.rating.ripe", "grandparentRatingKey": "66", "grandparentGuid": "plex://show/5d9c081b170e24001f2a7be4", "grandparentKey": "/library/metadata/66", "grandparentTitle": "Caprica", "grandparentThumb": "/library/metadata/66/thumb/1705716261", "grandparentArt": "/library/metadata/66/art/1705716261", "grandparentTheme": "/library/metadata/66/theme/1705716261", "Media": [{"id": 119534, "duration": 11558112, "bitrate": 25025, "width": 3840, "height": 2072, "aspectRatio": 1.85, "audioChannels": 6, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "Part": [{"id": 119542, "key": "/library/parts/119542/1680457526/file.mkv", "duration": 11558112, "file": "/movies/Avatar The Way of Water (2022)/Avatar.The.Way.of.Water.2022.2160p.WEB-DL.DDP5.1.Atmos.DV.HDR10.HEVC-CMRG.mkv", "size": 36158371307, "container": "mkv", "videoProfile": "main 10"}]}], "Genre": [], "Country": [{"tag": "United States of America"}], "Director": [{"tag": "James Cameron"}, {"tag": "James Cameron"}, {"tag": "James Cameron"}], "Writer": [{"tag": "James Cameron"}], "Role": [{"tag": "Sigourney Weaver"}, {"tag": "Sigourney Weaver"}, {"tag": "Sigourney Weaver"}], "Guid": [{"id": "imdb://tt13015952"}], "titleSort": "Whale", "viewCount": 1, "lastViewedAt": 1682752242, "originalTitle": "映画 ブラッククローバー 魔法帝の剣", "viewOffset": 5222500, "skipCount": 1, "index": 1, "theme": "/library/metadata/1/theme/1705636920", "leafCount": 14, "viewedLeafCount": 0, "childCount": 1, "hasPremiumExtras": "1", "hasPremiumPrimaryExtra": "1", "parentRatingKey": "66", "parentGuid": "plex://show/5d9c081b170e24001f2a7be4", "parentStudio": "UCP", "parentKey": "/library/metadata/66", "parentTitle": "Caprica", "parentIndex": 1, "parentYear": 2010, "parentThumb": "/library/metadata/66/thumb/1705716261", "parentTheme": "/library/metadata/66/theme/1705716261"}], "Meta": {"Type": [{"key": "/library/sections/2/all?type=2", "type": "show", "title": "TV Shows", "active": false, "Filter": [], "Sort": [], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}, {"key": "/library/sections/2/all?type=2", "type": "show", "title": "TV Shows", "active": false, "Filter": [{"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter"}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter"}, {"filter": "genre", "filterType": "string", "key": "/library/sections/2/genre?type=2", "title": "Genre", "type": "filter"}], "Sort": [], "Field": [{"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}, {"key": "show.title", "title": "Show Title", "type": "string", "subType": "rating"}]}], "FieldType": [{"type": "tag", "Operator": [{"key": "=", "title": "is"}]}, {"type": "tag", "Operator": [{"key": "=", "title": "is"}, {"key": "=", "title": "is"}]}, {"type": "tag", "Operator": [{"key": "=", "title": "is"}, {"key": "=", "title": "is"}]}]}}} + "400": + application/json: {"errors": [{"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}]} + "401": + application/json: {"errors": [{"code": 1001, "message": "User could not be authenticated", "status": 401}]} get-refresh-library-metadata: speakeasy-default-get-refresh-library-metadata: parameters: @@ -2326,6 +2361,7 @@ examples: query: path: "/home/barkley/playlist.m3u" force: 0 + sectionID: 1 responses: "400": application/json: {"errors": []} @@ -2346,7 +2382,7 @@ examples: speakeasy-default-get-source-connection-information: parameters: query: - source: "server://client-identifier" + source: "provider://provider-identifier" responses: "400": application/json: {"errors": []} @@ -2356,7 +2392,7 @@ examples: speakeasy-default-get-token-details: responses: "200": - application/json: {"adsConsent": true, "adsConsentReminderAt": "2019-08-24T14:15:22Z", "adsConsentSetAt": "2019-08-24T14:15:22Z", "anonymous": false, "authToken": "CxoUzBTSV5hsxjTpFKaf", "backupCodesCreated": false, "confirmed": false, "country": "US", "email": "username@email.com", "emailOnlyAuth": false, "experimentalFeatures": false, "friendlyName": "friendlyUsername", "entitlements": [], "guest": false, "hasPassword": true, "home": false, "homeAdmin": false, "homeSize": 1, "id": 13692262, "joinedAt": 1721154902, "locale": null, "mailingListActive": false, "mailingListStatus": "unsubscribed", "maxHomeSize": 15, "pin": "string", "profile": {"autoSelectAudio": true, "defaultAudioLanguage": "ja", "defaultSubtitleLanguage": "en", "autoSelectSubtitle": "1", "defaultSubtitleAccessibility": "1", "defaultSubtitleForced": "0", "watchedIndicator": "1", "mediaReviewsVisibility": 0}, "protected": false, "rememberExpiresAt": 1722364046, "restricted": false, "roles": ["string"], "scrobbleTypes": "", "services": [{"identifier": "metadata-dev", "endpoint": "https://epg.provider.plex.tv", "token": "DjoMtqFAGRL1uVtCyF1dKIorTbShJeqv", "secret": "string", "status": "online"}], "subscription": {"features": ["Android - Dolby Vision"], "active": true, "subscribedAt": "2021-04-12T18:21:12Z", "status": "Inactive", "paymentService": "string", "plan": "string"}, "subscriptionDescription": "string", "subscriptions": [{"features": ["Android - Dolby Vision"], "active": true, "subscribedAt": "2021-04-12T18:21:12Z", "status": "Inactive", "paymentService": "string", "plan": "string"}], "thumb": "https://plex.tv/users/a4f43c1ebfde43a5/avatar?c=8372075101", "title": "UsernameTitle", "twoFactorEnabled": false, "username": "Username", "uuid": "dae343c1f45beb4f"} + application/json: {"adsConsent": true, "adsConsentReminderAt": "2019-08-24T14:15:22Z", "adsConsentSetAt": "2019-08-24T14:15:22Z", "anonymous": false, "authToken": "CxoUzBTSV5hsxjTpFKaf", "backupCodesCreated": false, "confirmed": false, "country": "US", "email": "username@email.com", "emailOnlyAuth": false, "experimentalFeatures": false, "friendlyName": "friendlyUsername", "entitlements": ["[]"], "guest": false, "hasPassword": true, "home": false, "homeAdmin": false, "homeSize": 1, "id": 13692262, "joinedAt": 1556281940, "locale": null, "mailingListActive": false, "mailingListStatus": "unsubscribed", "maxHomeSize": 15, "pin": "string", "profile": {"autoSelectAudio": true, "defaultAudioLanguage": "ja", "defaultSubtitleLanguage": "en", "autoSelectSubtitle": 1, "defaultSubtitleAccessibility": 1, "defaultSubtitleForced": 1, "watchedIndicator": 1, "mediaReviewsVisibility": 1}, "protected": false, "rememberExpiresAt": 1556281940, "restricted": false, "roles": ["string"], "scrobbleTypes": "", "services": [{"identifier": "metadata-dev", "endpoint": "https://epg.provider.plex.tv", "token": "DjoMtqFAGRL1uVtCyF1dKIorTbShJeqv", "secret": "string", "status": "online"}], "subscription": {"features": ["Android - Dolby Vision"], "active": true, "subscribedAt": "2021-04-12T18:21:12Z", "status": "Inactive", "paymentService": "string", "plan": "string"}, "subscriptionDescription": "string", "subscriptions": [{"features": ["Android - Dolby Vision"], "active": true, "subscribedAt": "2021-04-12T18:21:12Z", "status": "Inactive", "paymentService": "string", "plan": "string"}], "thumb": "https://plex.tv/users/a4f43c1ebfde43a5/avatar?c=8372075101", "title": "UsernameTitle", "twoFactorEnabled": false, "username": "Username", "uuid": "dae343c1f45beb4f"} "400": application/json: {"errors": []} "401": @@ -2367,7 +2403,7 @@ examples: application/x-www-form-urlencoded: {"login": "username@email.com", "password": "password123", "verificationCode": "123456"} responses: "201": - application/json: {"adsConsent": true, "adsConsentReminderAt": "2019-08-24T14:15:22Z", "adsConsentSetAt": "2019-08-24T14:15:22Z", "anonymous": false, "authToken": "CxoUzBTSV5hsxjTpFKaf", "backupCodesCreated": false, "confirmed": false, "country": "US", "email": "username@email.com", "emailOnlyAuth": false, "experimentalFeatures": false, "friendlyName": "friendlyUsername", "entitlements": [], "guest": false, "hasPassword": true, "home": false, "homeAdmin": false, "homeSize": 1, "id": 13692262, "joinedAt": 1721154902, "locale": null, "mailingListActive": false, "mailingListStatus": "unsubscribed", "maxHomeSize": 15, "pin": "string", "profile": {"autoSelectAudio": true, "defaultAudioLanguage": "ja", "defaultSubtitleLanguage": "en", "autoSelectSubtitle": "1", "defaultSubtitleAccessibility": "1", "defaultSubtitleForced": "0", "watchedIndicator": "1", "mediaReviewsVisibility": 0}, "protected": false, "rememberExpiresAt": 1722364046, "restricted": false, "roles": ["string"], "scrobbleTypes": "", "services": [{"identifier": "metadata-dev", "endpoint": "https://epg.provider.plex.tv", "token": "DjoMtqFAGRL1uVtCyF1dKIorTbShJeqv", "secret": "string", "status": "online"}], "subscription": {"features": ["Android - Dolby Vision"], "active": true, "subscribedAt": "2021-04-12T18:21:12Z", "status": "Inactive", "paymentService": "string", "plan": "string"}, "subscriptionDescription": "string", "subscriptions": [{"features": ["Android - Dolby Vision"], "active": true, "subscribedAt": "2021-04-12T18:21:12Z", "status": "Inactive", "paymentService": "string", "plan": "string"}], "thumb": "https://plex.tv/users/a4f43c1ebfde43a5/avatar?c=8372075101", "title": "UsernameTitle", "twoFactorEnabled": false, "username": "Username", "uuid": "dae343c1f45beb4f", "pastSubscriptions": [{"id": "string", "mode": "string", "renewsAt": "string", "endsAt": "1556281940", "canceled": "0", "gracePeriod": "0", "onHold": "0", "canReactivate": "0", "canUpgrade": "0", "canDowngrade": "0", "canConvert": "0", "type": "plexpass", "transfer": "string", "state": "ended", "billing": {"paymentMethodId": 569045}}], "trials": [{}]} + application/json: {"adsConsent": true, "adsConsentReminderAt": "2019-08-24T14:15:22Z", "adsConsentSetAt": "2019-08-24T14:15:22Z", "anonymous": false, "authToken": "CxoUzBTSV5hsxjTpFKaf", "backupCodesCreated": false, "confirmed": false, "country": "US", "email": "username@email.com", "emailOnlyAuth": false, "experimentalFeatures": false, "friendlyName": "friendlyUsername", "entitlements": ["[]"], "guest": false, "hasPassword": true, "home": false, "homeAdmin": false, "homeSize": 1, "id": 13692262, "joinedAt": 1556281940, "locale": null, "mailingListActive": false, "mailingListStatus": "unsubscribed", "maxHomeSize": 15, "pin": "string", "profile": {"autoSelectAudio": true, "defaultAudioLanguage": "ja", "defaultSubtitleLanguage": "en", "autoSelectSubtitle": 1, "defaultSubtitleAccessibility": 1, "defaultSubtitleForced": 1, "watchedIndicator": 1, "mediaReviewsVisibility": 1}, "protected": false, "rememberExpiresAt": 1556281940, "restricted": false, "roles": ["string"], "scrobbleTypes": "", "services": [{"identifier": "metadata-dev", "endpoint": "https://epg.provider.plex.tv", "token": "DjoMtqFAGRL1uVtCyF1dKIorTbShJeqv", "secret": "string", "status": "online"}], "subscription": {"features": ["Android - Dolby Vision"], "active": true, "subscribedAt": "2021-04-12T18:21:12Z", "status": "Inactive", "paymentService": "string", "plan": "string"}, "subscriptionDescription": "string", "subscriptions": [{"features": ["Android - Dolby Vision"], "active": true, "subscribedAt": "2021-04-12T18:21:12Z", "status": "Inactive", "paymentService": "string", "plan": "string"}], "thumb": "https://plex.tv/users/a4f43c1ebfde43a5/avatar?c=8372075101", "title": "UsernameTitle", "twoFactorEnabled": false, "username": "Username", "uuid": "dae343c1f45beb4f", "pastSubscriptions": [{"id": "string", "mode": "string", "renewsAt": 1556281940, "endsAt": 1556281940, "canceled": false, "gracePeriod": false, "onHold": false, "canReactivate": false, "canUpgrade": false, "canDowngrade": false, "canConvert": false, "type": "plexpass", "transfer": "string", "state": "ended", "billing": {"paymentMethodId": 481656}}], "trials": [{}]} "400": application/json: {"errors": []} "401": diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index e22a4bb..b2c8bf4 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -12,7 +12,7 @@ generation: auth: oAuth2ClientCredentialsEnabled: false php: - version: 0.8.1 + version: 0.9.0 clientServerStatusCodesAsErrors: true flattenGlobalSecurity: true imports: diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index cf4da76..94b39b1 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,4 +1,4 @@ -speakeasyVersion: 1.399.2 +speakeasyVersion: 1.401.2 sources: my-source: sourceNamespace: my-source @@ -9,8 +9,8 @@ sources: - main plexapi: sourceNamespace: plexapi - sourceRevisionDigest: sha256:327e4a83099f910e042784ecc571fcbc4c9a6d8ba169b4ba181afb890a9936cc - sourceBlobDigest: sha256:a652fa39754f0c22a1454f628fe84983b34662ee8a153a3461d50b833f8bc5c2 + sourceRevisionDigest: sha256:5aa71ad96ca6de91143ee513c9880e08e555e7748fb4b5f8d069c6ab0c8f3069 + sourceBlobDigest: sha256:1cbef844e2856c2eabba4bd6d677d96c572fed13b27978d0d953aa06b224c02f tags: - latest - main @@ -18,10 +18,10 @@ targets: plexphp: source: plexapi sourceNamespace: plexapi - sourceRevisionDigest: sha256:327e4a83099f910e042784ecc571fcbc4c9a6d8ba169b4ba181afb890a9936cc - sourceBlobDigest: sha256:a652fa39754f0c22a1454f628fe84983b34662ee8a153a3461d50b833f8bc5c2 + sourceRevisionDigest: sha256:5aa71ad96ca6de91143ee513c9880e08e555e7748fb4b5f8d069c6ab0c8f3069 + sourceBlobDigest: sha256:1cbef844e2856c2eabba4bd6d677d96c572fed13b27978d0d953aa06b224c02f codeSamplesNamespace: code-samples-php-plexphp - codeSamplesRevisionDigest: sha256:a2463615fc3539369b1f3f0ba5ac302f6ff3566f1ddbd0194adf7a4a8dc098c0 + codeSamplesRevisionDigest: sha256:31c36f98b0d052576648992aa27009ef7e202960cecc266347879d0f7cb26855 workflow: workflowVersion: 1.0.0 speakeasyVersion: latest @@ -35,7 +35,7 @@ workflow: source: plexapi publish: packagist: - username: LukeHagar + username: lukehagar token: $packagist_token codeSamples: output: codeSamples.yaml diff --git a/README.md b/README.md index c15bae8..32e666b 100644 --- a/README.md +++ b/README.md @@ -208,7 +208,7 @@ try { Certain parameters are configured globally. These parameters may be set on the SDK client instance itself during initialization. When configured as an option during SDK initialization, These global values will be used as defaults on the operations that use them. When such operations are called, there is a place in each to override the global value, if needed. -For example, you can set `ClientID` to `'gcgzw5rz2xovp84b4vha3a40'` at SDK initialization and then you do not have to pass the same value on calls to operations like `getServerResources`. But if you want to do so you may, which will locally override the global setting. See the example code below for a demonstration. +For example, you can set `ClientID` to `'gcgzw5rz2xovp84b4vha3a40'` at SDK initialization and then you do not have to pass the same value on calls to operations like `getPin`. But if you want to do so you may, which will locally override the global setting. See the example code below for a demonstration. ### Available Globals @@ -235,26 +235,21 @@ declare(strict_types=1); require 'vendor/autoload.php'; use LukeHagar\Plex_API; -use LukeHagar\Plex_API\Models\Components; use LukeHagar\Plex_API\Models\Operations; -$security = new Components\Security( - accessToken: "<YOUR_API_KEY_HERE>", -); - $sdk = Plex_API\PlexAPI::builder() ->setClientID('gcgzw5rz2xovp84b4vha3a40') ->setClientName('Plex Web') ->setClientVersion('4.133.0') ->setClientPlatform('Chrome') ->setDeviceName('Linux') - ->setSecurity($security)->build(); + ->build(); try { + $request = new Operations\GetPinRequest(); + $response = $sdk->plex->getPin($request); - $response = $sdk->plex->getServerResources('gcgzw5rz2xovp84b4vha3a40', Operations\IncludeHttps::One, Operations\IncludeRelay::One, Operations\IncludeIPv6::One); - - if ($response->plexDevices !== null) { + if ($response->authPinContainer !== null) { // handle response } } catch (Throwable $e) { diff --git a/RELEASES.md b/RELEASES.md index ad9ed9c..194b660 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -602,4 +602,14 @@ Based on: ### Generated - [php v0.8.1] . ### Releases -- [Composer v0.8.1] https://packagist.org/packages/lukehagar/plex-api#v0.8.1 - . \ No newline at end of file +- [Composer v0.8.1] https://packagist.org/packages/lukehagar/plex-api#v0.8.1 - . + +## 2024-09-21 00:08:58 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.401.2 (2.421.3) https://github.com/speakeasy-api/speakeasy +### Generated +- [php v0.9.0] . +### Releases +- [Composer v0.9.0] https://packagist.org/packages/lukehagar/plex-api#v0.9.0 - . \ No newline at end of file diff --git a/codeSamples.yaml b/codeSamples.yaml index 702c455..081d384 100644 --- a/codeSamples.yaml +++ b/codeSamples.yaml @@ -728,7 +728,7 @@ actions: try { - $response = $sdk->search->performSearch('arnold', 9372.7, 5); + $response = $sdk->search->performSearch('dylan', 5838.67, 5); if ($response->statusCode === 200) { // handle response @@ -763,7 +763,7 @@ actions: try { - $response = $sdk->search->performVoiceSearch('dead+poop', 4094.8, 5); + $response = $sdk->search->performVoiceSearch('dead+poop', 4094.80, 5); if ($response->statusCode === 200) { // handle response @@ -799,7 +799,7 @@ actions: try { - $response = $sdk->hubs->getLibraryHubs(6728.76, 9010.22, Operations\QueryParamOnlyTransient::Zero); + $response = $sdk->hubs->getLibraryHubs(6728.76, 639.24, Operations\QueryParamOnlyTransient::One); if ($response->object !== null) { // handle response @@ -864,7 +864,7 @@ actions: try { - $response = $sdk->library->getTopWatchedContent(Operations\GetTopWatchedContentQueryParamType::Two, 1); + $response = $sdk->library->getTopWatchedContent(Operations\GetTopWatchedContentQueryParamType::Show, 1); if ($response->object !== null) { // handle response @@ -1012,7 +1012,7 @@ actions: try { - $response = $sdk->library->getMetadataChildren(1539.14, '<value>'); + $response = $sdk->library->getMetadataChildren(1539.15, '<value>'); if ($response->object !== null) { // handle response @@ -1342,7 +1342,7 @@ actions: try { - $response = $sdk->library->getSearchLibrary(9518, Operations\QueryParamType::Two); + $response = $sdk->library->getSearchLibrary(9518, Operations\QueryParamType::Show); if ($response->object !== null) { // handle response @@ -1380,9 +1380,9 @@ actions: $request = new Operations\GetLibraryItemsRequest( sectionKey: 9518, tag: Operations\Tag::Edition, - includeGuids: Operations\IncludeGuids::One, - includeMeta: Operations\IncludeMeta::One, - type: Operations\Type::Two, + includeGuids: Operations\IncludeGuids::Enable, + includeMeta: Operations\IncludeMeta::Enable, + type: Operations\Type::Show, xPlexContainerStart: 0, xPlexContainerSize: 50, ); @@ -1601,9 +1601,9 @@ actions: width: 110, height: 165, opacity: 643869, - blur: 0, - minSize: Operations\MinSize::Zero, - upscale: Operations\Upscale::One, + blur: 4000, + minSize: Operations\MinSize::One, + upscale: Operations\Upscale::Zero, url: '/library/metadata/49564/thumb/1654258204', ); $response = $sdk->server->getResizedPhoto($request); @@ -1667,7 +1667,7 @@ actions: try { - $response = $sdk->plex->getTokenByPinId(408895, 'gcgzw5rz2xovp84b4vha3a40'); + $response = $sdk->plex->getTokenByPinId(408895); if ($response->authPinContainer !== null) { // handle response @@ -1742,7 +1742,7 @@ actions: title: '<value>', type: Operations\CreatePlaylistQueryParamType::Photo, smart: Operations\Smart::One, - uri: 'https://inborn-brochure.biz', + uri: 'https://hoarse-testing.info/', ); $response = $sdk->playlists->createPlaylist($request); @@ -1780,7 +1780,7 @@ actions: try { - $response = $sdk->playlists->uploadPlaylist('/home/barkley/playlist.m3u', Operations\QueryParamForce::Zero); + $response = $sdk->playlists->uploadPlaylist('/home/barkley/playlist.m3u', Operations\QueryParamForce::Zero, 1); if ($response->statusCode === 200) { // handle response @@ -1885,7 +1885,7 @@ actions: try { - $response = $sdk->playlists->updatePlaylist(3915, '<value>', '<value>'); + $response = $sdk->playlists->updatePlaylist(3915.00, '<value>', '<value>'); if ($response->statusCode === 200) { // handle response @@ -1956,7 +1956,7 @@ actions: try { - $response = $sdk->playlists->getPlaylistContents(5004.46, Operations\GetPlaylistContentsQueryParamType::Two); + $response = $sdk->playlists->getPlaylistContents(5004.46, Operations\GetPlaylistContentsQueryParamType::Show); if ($response->object !== null) { // handle response @@ -1991,7 +1991,7 @@ actions: try { - $response = $sdk->playlists->addPlaylistContents(8502.01, 'server://12345/com.plexapp.plugins.library/library/metadata/1', 123); + $response = $sdk->playlists->addPlaylistContents(8502.00, 'server://12345/com.plexapp.plugins.library/library/metadata/1', 123); if ($response->object !== null) { // handle response @@ -2027,7 +2027,7 @@ actions: try { - $response = $sdk->plex->getServerResources('gcgzw5rz2xovp84b4vha3a40', Operations\IncludeHttps::One, Operations\IncludeRelay::One, Operations\IncludeIPv6::One); + $response = $sdk->plex->getServerResources(Operations\IncludeHttps::Enable, Operations\IncludeRelay::Enable, Operations\IncludeIPv6::Enable); if ($response->plexDevices !== null) { // handle response @@ -2097,7 +2097,7 @@ actions: try { - $response = $sdk->authentication->getSourceConnectionInformation('server://client-identifier'); + $response = $sdk->authentication->getSourceConnectionInformation('provider://provider-identifier'); if ($response->statusCode === 200) { // handle response @@ -2581,12 +2581,12 @@ actions: ->build(); try { - $requestBody = new Operations\PostUsersSignInDataRequestBody( + $request = new Operations\PostUsersSignInDataRequestBody( login: 'username@email.com', password: 'password123', verificationCode: '123456', ); - $response = $sdk->authentication->postUsersSignInData('gcgzw5rz2xovp84b4vha3a40', $requestBody); + $response = $sdk->authentication->postUsersSignInData($request); if ($response->userPlexAccount !== null) { // handle response diff --git a/docs/Models/Operations/AutoSelectSubtitle.md b/docs/Models/Operations/AutoSelectSubtitle.md index d72ead1..2104db2 100644 --- a/docs/Models/Operations/AutoSelectSubtitle.md +++ b/docs/Models/Operations/AutoSelectSubtitle.md @@ -5,7 +5,7 @@ The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign aud ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/Connections.md b/docs/Models/Operations/Connections.md index 773ce9a..b352fe0 100644 --- a/docs/Models/Operations/Connections.md +++ b/docs/Models/Operations/Connections.md @@ -3,12 +3,12 @@ ## Fields -| Field | Type | Required | Description | -| ------------------ | ------------------ | ------------------ | ------------------ | -| `protocol` | *string* | :heavy_check_mark: | N/A | -| `address` | *string* | :heavy_check_mark: | N/A | -| `port` | *float* | :heavy_check_mark: | N/A | -| `uri` | *string* | :heavy_check_mark: | N/A | -| `local` | *bool* | :heavy_check_mark: | N/A | -| `relay` | *bool* | :heavy_check_mark: | N/A | -| `iPv6` | *bool* | :heavy_check_mark: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | +| `protocol` | [Operations\Protocol](../../Models/Operations/Protocol.md) | :heavy_check_mark: | The protocol used for the connection (http, https, etc) | +| `address` | *string* | :heavy_check_mark: | The (ip) address or domain name used for the connection | +| `port` | *int* | :heavy_check_mark: | The port used for the connection | +| `uri` | *string* | :heavy_check_mark: | The full URI of the connection | +| `local` | *bool* | :heavy_check_mark: | If the connection is local address | +| `relay` | *bool* | :heavy_check_mark: | If the connection is relayed through plex.direct | +| `iPv6` | *bool* | :heavy_check_mark: | If the connection is using IPv6 | \ No newline at end of file diff --git a/docs/Models/Operations/DefaultSubtitleAccessibility.md b/docs/Models/Operations/DefaultSubtitleAccessibility.md index 07a0180..592d982 100644 --- a/docs/Models/Operations/DefaultSubtitleAccessibility.md +++ b/docs/Models/Operations/DefaultSubtitleAccessibility.md @@ -1,11 +1,11 @@ # DefaultSubtitleAccessibility -The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) +The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only show non-SDH subtitles) ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/DefaultSubtitleForced.md b/docs/Models/Operations/DefaultSubtitleForced.md index 99dbddb..6270cf9 100644 --- a/docs/Models/Operations/DefaultSubtitleForced.md +++ b/docs/Models/Operations/DefaultSubtitleForced.md @@ -5,7 +5,7 @@ The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/GetAllLibrariesDirectory.md b/docs/Models/Operations/GetAllLibrariesDirectory.md index ce89dcf..9b6d46c 100644 --- a/docs/Models/Operations/GetAllLibrariesDirectory.md +++ b/docs/Models/Operations/GetAllLibrariesDirectory.md @@ -5,24 +5,24 @@ | Field | Type | Required | Description | Example | | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | -| `allowSync` | *?bool* | :heavy_minus_sign: | N/A | true | -| `art` | *?string* | :heavy_minus_sign: | N/A | /:/resources/movie-fanart.jpg | -| `composite` | *?string* | :heavy_minus_sign: | N/A | /library/sections/1/composite/1705615584 | -| `filters` | *?bool* | :heavy_minus_sign: | N/A | true | -| `refreshing` | *?bool* | :heavy_minus_sign: | N/A | false | -| `thumb` | *?string* | :heavy_minus_sign: | N/A | /:/resources/movie.png | -| `key` | *?string* | :heavy_minus_sign: | N/A | 1 | -| `type` | *?string* | :heavy_minus_sign: | N/A | movie | -| `title` | *?string* | :heavy_minus_sign: | N/A | Movies | -| `agent` | *?string* | :heavy_minus_sign: | N/A | tv.plex.agents.movie | -| `scanner` | *?string* | :heavy_minus_sign: | N/A | Plex Movie | -| `language` | *?string* | :heavy_minus_sign: | N/A | en-US | -| `uuid` | *?string* | :heavy_minus_sign: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 | -| `updatedAt` | *?int* | :heavy_minus_sign: | Unix epoch datetime | 1556281940 | -| `createdAt` | *?int* | :heavy_minus_sign: | Unix epoch datetime | 1556281940 | -| `scannedAt` | *?int* | :heavy_minus_sign: | Unix epoch datetime | 1556281940 | -| `content` | *?bool* | :heavy_minus_sign: | N/A | true | -| `directory` | *?bool* | :heavy_minus_sign: | N/A | true | -| `contentChangedAt` | *?int* | :heavy_minus_sign: | N/A | 3192854 | -| `hidden` | *?int* | :heavy_minus_sign: | N/A | 0 | -| `location` | array<[Operations\Location](../../Models/Operations/Location.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file +| `allowSync` | *bool* | :heavy_check_mark: | N/A | true | +| `art` | *string* | :heavy_check_mark: | N/A | /:/resources/movie-fanart.jpg | +| `composite` | *string* | :heavy_check_mark: | N/A | /library/sections/1/composite/1705615584 | +| `filters` | *bool* | :heavy_check_mark: | N/A | true | +| `refreshing` | *bool* | :heavy_check_mark: | N/A | false | +| `thumb` | *string* | :heavy_check_mark: | N/A | /:/resources/movie.png | +| `key` | *string* | :heavy_check_mark: | N/A | 1 | +| `type` | *string* | :heavy_check_mark: | N/A | movie | +| `title` | *string* | :heavy_check_mark: | N/A | Movies | +| `agent` | *string* | :heavy_check_mark: | N/A | tv.plex.agents.movie | +| `scanner` | *string* | :heavy_check_mark: | N/A | Plex Movie | +| `language` | *string* | :heavy_check_mark: | N/A | en-US | +| `uuid` | *string* | :heavy_check_mark: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 | +| `updatedAt` | *int* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 | +| `createdAt` | *int* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 | +| `scannedAt` | *int* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 | +| `content` | *bool* | :heavy_check_mark: | N/A | true | +| `directory` | *bool* | :heavy_check_mark: | N/A | true | +| `contentChangedAt` | *int* | :heavy_check_mark: | N/A | 3192854 | +| `hidden` | *int* | :heavy_check_mark: | N/A | 0 | +| `location` | array<[Operations\Location](../../Models/Operations/Location.md)> | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/Models/Operations/GetAllLibrariesMediaContainer.md b/docs/Models/Operations/GetAllLibrariesMediaContainer.md index 06c7969..d9ffd03 100644 --- a/docs/Models/Operations/GetAllLibrariesMediaContainer.md +++ b/docs/Models/Operations/GetAllLibrariesMediaContainer.md @@ -8,4 +8,4 @@ | `size` | *int* | :heavy_check_mark: | N/A | 5 | | `allowSync` | *bool* | :heavy_check_mark: | N/A | false | | `title1` | *string* | :heavy_check_mark: | N/A | Plex Library | -| `directory` | array<[Operations\GetAllLibrariesDirectory](../../Models/Operations/GetAllLibrariesDirectory.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file +| `directory` | array<[Operations\GetAllLibrariesDirectory](../../Models/Operations/GetAllLibrariesDirectory.md)> | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/Models/Operations/GetAllLibrariesResponseBody.md b/docs/Models/Operations/GetAllLibrariesResponseBody.md index 0ab5590..5dae7f8 100644 --- a/docs/Models/Operations/GetAllLibrariesResponseBody.md +++ b/docs/Models/Operations/GetAllLibrariesResponseBody.md @@ -5,6 +5,6 @@ The libraries available on the Server ## Fields -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -| `mediaContainer` | [?Operations\GetAllLibrariesMediaContainer](../../Models/Operations/GetAllLibrariesMediaContainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | +| `mediaContainer` | [Operations\GetAllLibrariesMediaContainer](../../Models/Operations/GetAllLibrariesMediaContainer.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/Models/Operations/GetLibraryItemsField.md b/docs/Models/Operations/GetLibraryItemsField.md new file mode 100644 index 0000000..f63c171 --- /dev/null +++ b/docs/Models/Operations/GetLibraryItemsField.md @@ -0,0 +1,11 @@ +# GetLibraryItemsField + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `key` | *string* | :heavy_check_mark: | N/A | show.title | +| `title` | *string* | :heavy_check_mark: | N/A | Show Title | +| `type` | *string* | :heavy_check_mark: | N/A | string | +| `subType` | *?string* | :heavy_minus_sign: | N/A | rating | \ No newline at end of file diff --git a/docs/Models/Operations/GetLibraryItemsFieldType.md b/docs/Models/Operations/GetLibraryItemsFieldType.md new file mode 100644 index 0000000..065f179 --- /dev/null +++ b/docs/Models/Operations/GetLibraryItemsFieldType.md @@ -0,0 +1,9 @@ +# GetLibraryItemsFieldType + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | +| `type` | *string* | :heavy_check_mark: | N/A | tag | +| `operator` | array<[Operations\GetLibraryItemsOperator](../../Models/Operations/GetLibraryItemsOperator.md)> | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/Models/Operations/GetLibraryItemsFilter.md b/docs/Models/Operations/GetLibraryItemsFilter.md new file mode 100644 index 0000000..4e6b2f7 --- /dev/null +++ b/docs/Models/Operations/GetLibraryItemsFilter.md @@ -0,0 +1,12 @@ +# GetLibraryItemsFilter + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | +| `filter` | *string* | :heavy_check_mark: | N/A | genre | +| `filterType` | *string* | :heavy_check_mark: | N/A | string | +| `key` | *string* | :heavy_check_mark: | N/A | /library/sections/2/genre?type=2 | +| `title` | *string* | :heavy_check_mark: | N/A | Genre | +| `type` | *string* | :heavy_check_mark: | N/A | filter | \ No newline at end of file diff --git a/docs/Models/Operations/GetLibraryItemsMediaContainer.md b/docs/Models/Operations/GetLibraryItemsMediaContainer.md index 02fef13..332726f 100644 --- a/docs/Models/Operations/GetLibraryItemsMediaContainer.md +++ b/docs/Models/Operations/GetLibraryItemsMediaContainer.md @@ -5,19 +5,20 @@ | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | -| `size` | *?int* | :heavy_minus_sign: | N/A | 70 | -| `allowSync` | *?bool* | :heavy_minus_sign: | N/A | true | -| `art` | *?string* | :heavy_minus_sign: | N/A | /:/resources/movie-fanart.jpg | -| `identifier` | *?string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library | -| `librarySectionID` | [int\|string\|null](../../Models/Operations/LibrarySectionID.md) | :heavy_minus_sign: | N/A | | -| `librarySectionTitle` | *?string* | :heavy_minus_sign: | N/A | Movies | -| `librarySectionUUID` | *?string* | :heavy_minus_sign: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 | -| `mediaTagPrefix` | *?string* | :heavy_minus_sign: | N/A | /system/bundle/media/flags/ | -| `mediaTagVersion` | *?int* | :heavy_minus_sign: | N/A | 1701731894 | -| `thumb` | *?string* | :heavy_minus_sign: | N/A | /:/resources/movie.png | -| `title1` | *?string* | :heavy_minus_sign: | N/A | Movies | -| `title2` | *?string* | :heavy_minus_sign: | N/A | Recently Released | -| `viewGroup` | *?string* | :heavy_minus_sign: | N/A | movie | +| `size` | *int* | :heavy_check_mark: | N/A | 70 | +| `allowSync` | *bool* | :heavy_check_mark: | N/A | true | +| `art` | *string* | :heavy_check_mark: | N/A | /:/resources/movie-fanart.jpg | +| `identifier` | *string* | :heavy_check_mark: | N/A | com.plexapp.plugins.library | +| `librarySectionID` | [int\|string](../../Models/Operations/LibrarySectionID.md) | :heavy_check_mark: | N/A | | +| `librarySectionTitle` | *string* | :heavy_check_mark: | N/A | Movies | +| `librarySectionUUID` | *string* | :heavy_check_mark: | N/A | 322a231a-b7f7-49f5-920f-14c61199cd30 | +| `mediaTagPrefix` | *string* | :heavy_check_mark: | N/A | /system/bundle/media/flags/ | +| `mediaTagVersion` | *int* | :heavy_check_mark: | N/A | 1701731894 | +| `thumb` | *string* | :heavy_check_mark: | N/A | /:/resources/movie.png | +| `title1` | *string* | :heavy_check_mark: | N/A | Movies | +| `title2` | *string* | :heavy_check_mark: | N/A | Recently Released | +| `viewGroup` | *string* | :heavy_check_mark: | N/A | movie | | `viewMode` | *?int* | :heavy_minus_sign: | N/A | 65592 | | `mixedParents` | *?bool* | :heavy_minus_sign: | N/A | true | -| `metadata` | array<[Operations\GetLibraryItemsMetadata](../../Models/Operations/GetLibraryItemsMetadata.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file +| `metadata` | array<[Operations\GetLibraryItemsMetadata](../../Models/Operations/GetLibraryItemsMetadata.md)> | :heavy_minus_sign: | N/A | | +| `meta` | [?Operations\Meta](../../Models/Operations/Meta.md) | :heavy_minus_sign: | The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.<br/> | | \ No newline at end of file diff --git a/docs/Models/Operations/GetLibraryItemsMetadata.md b/docs/Models/Operations/GetLibraryItemsMetadata.md index a35fd85..8086d7f 100644 --- a/docs/Models/Operations/GetLibraryItemsMetadata.md +++ b/docs/Models/Operations/GetLibraryItemsMetadata.md @@ -5,21 +5,22 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ratingKey` | *?string* | :heavy_minus_sign: | N/A | 58683 | -| `key` | *?string* | :heavy_minus_sign: | N/A | /library/metadata/58683 | -| `guid` | *?string* | :heavy_minus_sign: | N/A | plex://movie/5d7768ba96b655001fdc0408 | +| `ratingKey` | *string* | :heavy_check_mark: | N/A | 58683 | +| `key` | *string* | :heavy_check_mark: | N/A | /library/metadata/58683 | +| `guid` | *string* | :heavy_check_mark: | N/A | plex://movie/5d7768ba96b655001fdc0408 | +| `type` | *string* | :heavy_check_mark: | N/A | movie | +| `title` | *string* | :heavy_check_mark: | N/A | Avatar: The Way of Water | +| `year` | *int* | :heavy_check_mark: | N/A | 2022 | +| `duration` | *int* | :heavy_check_mark: | N/A | 11558112 | +| `media` | array<[Operations\GetLibraryItemsMedia](../../Models/Operations/GetLibraryItemsMedia.md)> | :heavy_check_mark: | N/A | | | `studio` | *?string* | :heavy_minus_sign: | N/A | 20th Century Studios | -| `type` | *?string* | :heavy_minus_sign: | N/A | movie | -| `title` | *?string* | :heavy_minus_sign: | N/A | Avatar: The Way of Water | | `contentRating` | *?string* | :heavy_minus_sign: | N/A | PG-13 | | `summary` | *?string* | :heavy_minus_sign: | N/A | Jake Sully lives with his newfound family formed on the extrasolar moon Pandora. Once a familiar threat returns to finish what was previously started, Jake must work with Neytiri and the army of the Na'vi race to protect their home. | | `rating` | *?float* | :heavy_minus_sign: | N/A | 7.6 | | `audienceRating` | *?float* | :heavy_minus_sign: | N/A | 9.2 | -| `year` | *?int* | :heavy_minus_sign: | N/A | 2022 | | `tagline` | *?string* | :heavy_minus_sign: | N/A | Return to Pandora. | | `thumb` | *?string* | :heavy_minus_sign: | N/A | /library/metadata/58683/thumb/1703239236 | | `art` | *?string* | :heavy_minus_sign: | N/A | /library/metadata/58683/art/1703239236 | -| `duration` | *?int* | :heavy_minus_sign: | N/A | 11558112 | | `originallyAvailableAt` | [\DateTime](https://www.php.net/manual/en/class.datetime.php) | :heavy_minus_sign: | N/A | 2022-12-14 00:00:00 +0000 UTC | | `addedAt` | *?int* | :heavy_minus_sign: | N/A | 1680457607 | | `updatedAt` | *?int* | :heavy_minus_sign: | N/A | 1703239236 | @@ -34,12 +35,12 @@ | `grandparentThumb` | *?string* | :heavy_minus_sign: | N/A | /library/metadata/66/thumb/1705716261 | | `grandparentArt` | *?string* | :heavy_minus_sign: | N/A | /library/metadata/66/art/1705716261 | | `grandparentTheme` | *?string* | :heavy_minus_sign: | N/A | /library/metadata/66/theme/1705716261 | -| `media` | array<[Operations\GetLibraryItemsMedia](../../Models/Operations/GetLibraryItemsMedia.md)> | :heavy_minus_sign: | N/A | | | `genre` | array<[Operations\GetLibraryItemsGenre](../../Models/Operations/GetLibraryItemsGenre.md)> | :heavy_minus_sign: | N/A | | | `country` | array<[Operations\GetLibraryItemsCountry](../../Models/Operations/GetLibraryItemsCountry.md)> | :heavy_minus_sign: | N/A | | | `director` | array<[Operations\GetLibraryItemsDirector](../../Models/Operations/GetLibraryItemsDirector.md)> | :heavy_minus_sign: | N/A | | | `writer` | array<[Operations\GetLibraryItemsWriter](../../Models/Operations/GetLibraryItemsWriter.md)> | :heavy_minus_sign: | N/A | | | `role` | array<[Operations\GetLibraryItemsRole](../../Models/Operations/GetLibraryItemsRole.md)> | :heavy_minus_sign: | N/A | | +| `mediaGuid` | array<[Operations\MediaGuid](../../Models/Operations/MediaGuid.md)> | :heavy_minus_sign: | The Guid object is only included in the response if the `includeGuids` parameter is set to `1`.<br/> | | | `titleSort` | *?string* | :heavy_minus_sign: | N/A | Whale | | `viewCount` | *?int* | :heavy_minus_sign: | N/A | 1 | | `lastViewedAt` | *?int* | :heavy_minus_sign: | N/A | 1682752242 | diff --git a/docs/Models/Operations/GetLibraryItemsOperator.md b/docs/Models/Operations/GetLibraryItemsOperator.md new file mode 100644 index 0000000..9d53570 --- /dev/null +++ b/docs/Models/Operations/GetLibraryItemsOperator.md @@ -0,0 +1,9 @@ +# GetLibraryItemsOperator + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `key` | *string* | :heavy_check_mark: | N/A | = | +| `title` | *string* | :heavy_check_mark: | N/A | is | \ No newline at end of file diff --git a/docs/Models/Operations/GetLibraryItemsSort.md b/docs/Models/Operations/GetLibraryItemsSort.md new file mode 100644 index 0000000..ba83686 --- /dev/null +++ b/docs/Models/Operations/GetLibraryItemsSort.md @@ -0,0 +1,13 @@ +# GetLibraryItemsSort + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- | +| `defaultDirection` | *string* | :heavy_check_mark: | N/A | asc | +| `key` | *string* | :heavy_check_mark: | N/A | titleSort | +| `title` | *string* | :heavy_check_mark: | N/A | Title | +| `default` | *?string* | :heavy_minus_sign: | N/A | asc | +| `descKey` | *?string* | :heavy_minus_sign: | N/A | titleSort:desc | +| `firstCharacterKey` | *?string* | :heavy_minus_sign: | N/A | /library/sections/2/firstCharacter | \ No newline at end of file diff --git a/docs/Models/Operations/GetLibraryItemsType.md b/docs/Models/Operations/GetLibraryItemsType.md new file mode 100644 index 0000000..bf88298 --- /dev/null +++ b/docs/Models/Operations/GetLibraryItemsType.md @@ -0,0 +1,14 @@ +# GetLibraryItemsType + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `key` | *string* | :heavy_check_mark: | N/A | /library/sections/2/all?type=2 | +| `type` | *string* | :heavy_check_mark: | N/A | show | +| `title` | *string* | :heavy_check_mark: | N/A | TV Shows | +| `active` | *bool* | :heavy_check_mark: | N/A | false | +| `filter` | array<[Operations\GetLibraryItemsFilter](../../Models/Operations/GetLibraryItemsFilter.md)> | :heavy_minus_sign: | N/A | | +| `sort` | array<[Operations\GetLibraryItemsSort](../../Models/Operations/GetLibraryItemsSort.md)> | :heavy_minus_sign: | N/A | | +| `field` | array<[Operations\GetLibraryItemsField](../../Models/Operations/GetLibraryItemsField.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/Models/Operations/GetPinRequest.md b/docs/Models/Operations/GetPinRequest.md index 0cb2d65..4df8ba6 100644 --- a/docs/Models/Operations/GetPinRequest.md +++ b/docs/Models/Operations/GetPinRequest.md @@ -3,11 +3,10 @@ ## Fields -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `strong` | *?bool* | :heavy_minus_sign: | Determines the kind of code returned by the API call<br/>Strong codes are used for Pin authentication flows<br/>Non-Strong codes are used for `Plex.tv/link`<br/> | | -| `clientID` | *?string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | gcgzw5rz2xovp84b4vha3a40 | -| `clientName` | *?string* | :heavy_minus_sign: | N/A | Plex Web | -| `deviceName` | *?string* | :heavy_minus_sign: | N/A | Linux | -| `clientVersion` | *?string* | :heavy_minus_sign: | N/A | 4.133.0 | -| `clientPlatform` | *?string* | :heavy_minus_sign: | N/A | Chrome | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `strong` | *?bool* | :heavy_minus_sign: | Determines the kind of code returned by the API call<br/>Strong codes are used for Pin authentication flows<br/>Non-Strong codes are used for `Plex.tv/link`<br/> | | +| `clientName` | *?string* | :heavy_minus_sign: | N/A | Plex Web | +| `deviceName` | *?string* | :heavy_minus_sign: | N/A | Linux | +| `clientVersion` | *?string* | :heavy_minus_sign: | N/A | 4.133.0 | +| `clientPlatform` | *?string* | :heavy_minus_sign: | N/A | Chrome | \ No newline at end of file diff --git a/docs/Models/Operations/GetPlaylistContentsQueryParamType.md b/docs/Models/Operations/GetPlaylistContentsQueryParamType.md index 695573b..6aa241f 100644 --- a/docs/Models/Operations/GetPlaylistContentsQueryParamType.md +++ b/docs/Models/Operations/GetPlaylistContentsQueryParamType.md @@ -11,9 +11,9 @@ E.g. A movie library will not return anything with type 3 as there are no season ## Values -| Name | Value | -| ------- | ------- | -| `One` | 1 | -| `Two` | 2 | -| `Three` | 3 | -| `Four` | 4 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Movie` | 1 | +| `Show` | 2 | +| `Season` | 3 | +| `Episode` | 4 | \ No newline at end of file diff --git a/docs/Models/Operations/GetServerResourcesRequest.md b/docs/Models/Operations/GetServerResourcesRequest.md index ed9ec8c..38111b0 100644 --- a/docs/Models/Operations/GetServerResourcesRequest.md +++ b/docs/Models/Operations/GetServerResourcesRequest.md @@ -3,9 +3,8 @@ ## Fields -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `clientID` | *?string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | gcgzw5rz2xovp84b4vha3a40 | -| `includeHttps` | [?Operations\IncludeHttps](../../Models/Operations/IncludeHttps.md) | :heavy_minus_sign: | Include Https entries in the results | 1 | -| `includeRelay` | [?Operations\IncludeRelay](../../Models/Operations/IncludeRelay.md) | :heavy_minus_sign: | Include Relay addresses in the results <br/>E.g: https://10-0-0-25.bbf8e10c7fa20447cacee74cd9914cde.plex.direct:32400<br/> | 1 | -| `includeIPv6` | [?Operations\IncludeIPv6](../../Models/Operations/IncludeIPv6.md) | :heavy_minus_sign: | Include IPv6 entries in the results | 1 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | +| `includeHttps` | [?Operations\IncludeHttps](../../Models/Operations/IncludeHttps.md) | :heavy_minus_sign: | Include Https entries in the results | 1 | +| `includeRelay` | [?Operations\IncludeRelay](../../Models/Operations/IncludeRelay.md) | :heavy_minus_sign: | Include Relay addresses in the results <br/>E.g: https://10-0-0-25.bbf8e10c7fa20447cacee74cd9914cde.plex.direct:32400<br/> | 1 | +| `includeIPv6` | [?Operations\IncludeIPv6](../../Models/Operations/IncludeIPv6.md) | :heavy_minus_sign: | Include IPv6 entries in the results | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/GetTokenByPinIdRequest.md b/docs/Models/Operations/GetTokenByPinIdRequest.md index 9b25efc..3ede3c7 100644 --- a/docs/Models/Operations/GetTokenByPinIdRequest.md +++ b/docs/Models/Operations/GetTokenByPinIdRequest.md @@ -3,7 +3,6 @@ ## Fields -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `pinID` | *int* | :heavy_check_mark: | The PinID to retrieve an access token for | | -| `clientID` | *?string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | gcgzw5rz2xovp84b4vha3a40 | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | +| `pinID` | *int* | :heavy_check_mark: | The PinID to retrieve an access token for | \ No newline at end of file diff --git a/docs/Models/Operations/GetTokenDetailsUserPlexAccount.md b/docs/Models/Operations/GetTokenDetailsUserPlexAccount.md index bb6da88..7e81893 100644 --- a/docs/Models/Operations/GetTokenDetailsUserPlexAccount.md +++ b/docs/Models/Operations/GetTokenDetailsUserPlexAccount.md @@ -22,13 +22,13 @@ Logged in user details | `homeAdmin` | *bool* | :heavy_check_mark: | If the account is the Plex Home admin | | | `homeSize` | *int* | :heavy_check_mark: | The number of accounts in the Plex Home | 1 | | `id` | *int* | :heavy_check_mark: | The Plex account ID | 13692262 | -| `joinedAt` | *int* | :heavy_check_mark: | Unix epoch datetime | 1556281940 | +| `joinedAt` | *int* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 | | `mailingListActive` | *bool* | :heavy_check_mark: | If you are subscribed to the Plex newsletter | | | `mailingListStatus` | [Operations\MailingListStatus](../../Models/Operations/MailingListStatus.md) | :heavy_check_mark: | Your current mailing list status | | | `maxHomeSize` | *int* | :heavy_check_mark: | The maximum number of accounts allowed in the Plex Home | 15 | | `profile` | [Operations\UserProfile](../../Models/Operations/UserProfile.md) | :heavy_check_mark: | N/A | | | `protected` | *bool* | :heavy_check_mark: | If the account has a Plex Home PIN enabled | | -| `rememberExpiresAt` | *int* | :heavy_check_mark: | Unix epoch datetime | 1556281940 | +| `rememberExpiresAt` | *int* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 | | `restricted` | *bool* | :heavy_check_mark: | If the account is a Plex Home managed user | | | `scrobbleTypes` | *string* | :heavy_check_mark: | Unknown | | | `services` | array<[Operations\Services](../../Models/Operations/Services.md)> | :heavy_check_mark: | N/A | | diff --git a/docs/Models/Operations/GetTopWatchedContentQueryParamType.md b/docs/Models/Operations/GetTopWatchedContentQueryParamType.md index af56352..e61f114 100644 --- a/docs/Models/Operations/GetTopWatchedContentQueryParamType.md +++ b/docs/Models/Operations/GetTopWatchedContentQueryParamType.md @@ -11,9 +11,9 @@ E.g. A movie library will not return anything with type 3 as there are no season ## Values -| Name | Value | -| ------- | ------- | -| `One` | 1 | -| `Two` | 2 | -| `Three` | 3 | -| `Four` | 4 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Movie` | 1 | +| `Show` | 2 | +| `Season` | 3 | +| `Episode` | 4 | \ No newline at end of file diff --git a/docs/Models/Operations/IncludeGuids.md b/docs/Models/Operations/IncludeGuids.md index 1c116a3..eaba0b9 100644 --- a/docs/Models/Operations/IncludeGuids.md +++ b/docs/Models/Operations/IncludeGuids.md @@ -6,7 +6,7 @@ Adds the Guids object to the response ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/IncludeHttps.md b/docs/Models/Operations/IncludeHttps.md index 8f1d81a..94382d4 100644 --- a/docs/Models/Operations/IncludeHttps.md +++ b/docs/Models/Operations/IncludeHttps.md @@ -5,7 +5,7 @@ Include Https entries in the results ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/IncludeIPv6.md b/docs/Models/Operations/IncludeIPv6.md index 96e4493..0b70e65 100644 --- a/docs/Models/Operations/IncludeIPv6.md +++ b/docs/Models/Operations/IncludeIPv6.md @@ -5,7 +5,7 @@ Include IPv6 entries in the results ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/IncludeMeta.md b/docs/Models/Operations/IncludeMeta.md index 4ea608c..0f180eb 100644 --- a/docs/Models/Operations/IncludeMeta.md +++ b/docs/Models/Operations/IncludeMeta.md @@ -6,7 +6,7 @@ Adds the Meta object to the response ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/IncludeRelay.md b/docs/Models/Operations/IncludeRelay.md index 3fd2058..2136d5a 100644 --- a/docs/Models/Operations/IncludeRelay.md +++ b/docs/Models/Operations/IncludeRelay.md @@ -7,7 +7,7 @@ E.g: https://10-0-0-25.bbf8e10c7fa20447cacee74cd9914cde.plex.direct:32400 ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/Location.md b/docs/Models/Operations/Location.md index e8f1163..6116eb0 100644 --- a/docs/Models/Operations/Location.md +++ b/docs/Models/Operations/Location.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | Example | | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | -| `id` | *?int* | :heavy_minus_sign: | N/A | 1 | -| `path` | *?string* | :heavy_minus_sign: | N/A | /movies | \ No newline at end of file +| `id` | *int* | :heavy_check_mark: | N/A | 1 | +| `path` | *string* | :heavy_check_mark: | N/A | /movies | \ No newline at end of file diff --git a/docs/Models/Operations/MediaGuid.md b/docs/Models/Operations/MediaGuid.md new file mode 100644 index 0000000..a52347f --- /dev/null +++ b/docs/Models/Operations/MediaGuid.md @@ -0,0 +1,8 @@ +# MediaGuid + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | +| `id` | *string* | :heavy_check_mark: | Can be one of the following formats:<br/>imdb://tt13015952, tmdb://2434012, tvdb://7945991<br/> | imdb://tt13015952 | \ No newline at end of file diff --git a/docs/Models/Operations/MediaReviewsVisibility.md b/docs/Models/Operations/MediaReviewsVisibility.md index 4d78804..b36e802 100644 --- a/docs/Models/Operations/MediaReviewsVisibility.md +++ b/docs/Models/Operations/MediaReviewsVisibility.md @@ -1,9 +1,11 @@ # MediaReviewsVisibility +Whether or not the account has media reviews visibility enabled + ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/Meta.md b/docs/Models/Operations/Meta.md new file mode 100644 index 0000000..6f2db09 --- /dev/null +++ b/docs/Models/Operations/Meta.md @@ -0,0 +1,12 @@ +# Meta + +The Meta object is only included in the response if the `includeMeta` parameter is set to `1`. + + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | +| `type` | array<[Operations\GetLibraryItemsType](../../Models/Operations/GetLibraryItemsType.md)> | :heavy_minus_sign: | N/A | +| `fieldType` | array<[Operations\GetLibraryItemsFieldType](../../Models/Operations/GetLibraryItemsFieldType.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/Models/Operations/PlexDevice.md b/docs/Models/Operations/PlexDevice.md index 3fd3a62..6de1b2c 100644 --- a/docs/Models/Operations/PlexDevice.md +++ b/docs/Models/Operations/PlexDevice.md @@ -3,29 +3,29 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `name` | *string* | :heavy_check_mark: | N/A | -| `product` | *string* | :heavy_check_mark: | N/A | -| `productVersion` | *string* | :heavy_check_mark: | N/A | -| `clientIdentifier` | *string* | :heavy_check_mark: | N/A | -| `createdAt` | [\DateTime](https://www.php.net/manual/en/class.datetime.php) | :heavy_check_mark: | N/A | -| `lastSeenAt` | [\DateTime](https://www.php.net/manual/en/class.datetime.php) | :heavy_check_mark: | N/A | -| `provides` | *string* | :heavy_check_mark: | N/A | -| `publicAddress` | *string* | :heavy_check_mark: | N/A | -| `accessToken` | *string* | :heavy_check_mark: | N/A | -| `owned` | *bool* | :heavy_check_mark: | N/A | -| `home` | *bool* | :heavy_check_mark: | N/A | -| `synced` | *bool* | :heavy_check_mark: | N/A | -| `relay` | *bool* | :heavy_check_mark: | N/A | -| `presence` | *bool* | :heavy_check_mark: | N/A | -| `httpsRequired` | *bool* | :heavy_check_mark: | N/A | -| `publicAddressMatches` | *bool* | :heavy_check_mark: | N/A | -| `dnsRebindingProtection` | *bool* | :heavy_check_mark: | N/A | -| `natLoopbackSupported` | *bool* | :heavy_check_mark: | N/A | -| `connections` | array<[Operations\Connections](../../Models/Operations/Connections.md)> | :heavy_check_mark: | N/A | -| `platform` | *string* | :heavy_check_mark: | N/A | -| `platformVersion` | *string* | :heavy_check_mark: | N/A | -| `device` | *string* | :heavy_check_mark: | N/A | -| `ownerId` | *int* | :heavy_check_mark: | ownerId is null when the device is owned by the token used to send the request | -| `sourceTitle` | *string* | :heavy_check_mark: | N/A | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | +| `name` | *string* | :heavy_check_mark: | N/A | | +| `product` | *string* | :heavy_check_mark: | N/A | | +| `productVersion` | *string* | :heavy_check_mark: | N/A | | +| `clientIdentifier` | *string* | :heavy_check_mark: | N/A | | +| `createdAt` | [\DateTime](https://www.php.net/manual/en/class.datetime.php) | :heavy_check_mark: | N/A | 2019-06-24T11:38:02Z | +| `lastSeenAt` | [\DateTime](https://www.php.net/manual/en/class.datetime.php) | :heavy_check_mark: | N/A | 2019-06-24T11:38:02Z | +| `provides` | *string* | :heavy_check_mark: | N/A | | +| `publicAddress` | *string* | :heavy_check_mark: | N/A | | +| `accessToken` | *string* | :heavy_check_mark: | N/A | | +| `owned` | *bool* | :heavy_check_mark: | N/A | | +| `home` | *bool* | :heavy_check_mark: | N/A | | +| `synced` | *bool* | :heavy_check_mark: | N/A | | +| `relay` | *bool* | :heavy_check_mark: | N/A | | +| `presence` | *bool* | :heavy_check_mark: | N/A | | +| `httpsRequired` | *bool* | :heavy_check_mark: | N/A | | +| `publicAddressMatches` | *bool* | :heavy_check_mark: | N/A | | +| `dnsRebindingProtection` | *bool* | :heavy_check_mark: | N/A | | +| `natLoopbackSupported` | *bool* | :heavy_check_mark: | N/A | | +| `connections` | array<[Operations\Connections](../../Models/Operations/Connections.md)> | :heavy_check_mark: | N/A | | +| `platform` | *string* | :heavy_check_mark: | N/A | | +| `platformVersion` | *string* | :heavy_check_mark: | N/A | | +| `device` | *string* | :heavy_check_mark: | N/A | | +| `ownerId` | *int* | :heavy_check_mark: | ownerId is null when the device is owned by the token used to send the request | | +| `sourceTitle` | *string* | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/Models/Operations/PostUsersSignInDataAutoSelectSubtitle.md b/docs/Models/Operations/PostUsersSignInDataAutoSelectSubtitle.md index 4e22309..a1932db 100644 --- a/docs/Models/Operations/PostUsersSignInDataAutoSelectSubtitle.md +++ b/docs/Models/Operations/PostUsersSignInDataAutoSelectSubtitle.md @@ -5,7 +5,7 @@ The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign aud ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/PostUsersSignInDataDefaultSubtitleAccessibility.md b/docs/Models/Operations/PostUsersSignInDataDefaultSubtitleAccessibility.md index 3986a78..254dd69 100644 --- a/docs/Models/Operations/PostUsersSignInDataDefaultSubtitleAccessibility.md +++ b/docs/Models/Operations/PostUsersSignInDataDefaultSubtitleAccessibility.md @@ -1,11 +1,11 @@ # PostUsersSignInDataDefaultSubtitleAccessibility -The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) +The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only show non-SDH subtitles) ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/PostUsersSignInDataDefaultSubtitleForced.md b/docs/Models/Operations/PostUsersSignInDataDefaultSubtitleForced.md index 4106d94..df66898 100644 --- a/docs/Models/Operations/PostUsersSignInDataDefaultSubtitleForced.md +++ b/docs/Models/Operations/PostUsersSignInDataDefaultSubtitleForced.md @@ -5,7 +5,7 @@ The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/PostUsersSignInDataMediaReviewsVisibility.md b/docs/Models/Operations/PostUsersSignInDataMediaReviewsVisibility.md index 01aff0f..234a440 100644 --- a/docs/Models/Operations/PostUsersSignInDataMediaReviewsVisibility.md +++ b/docs/Models/Operations/PostUsersSignInDataMediaReviewsVisibility.md @@ -1,9 +1,11 @@ # PostUsersSignInDataMediaReviewsVisibility +Whether or not the account has media reviews visibility enabled + ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/PostUsersSignInDataRequest.md b/docs/Models/Operations/PostUsersSignInDataRequest.md deleted file mode 100644 index c66fbed..0000000 --- a/docs/Models/Operations/PostUsersSignInDataRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# PostUsersSignInDataRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `clientID` | *?string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | gcgzw5rz2xovp84b4vha3a40 | -| `requestBody` | [?Operations\PostUsersSignInDataRequestBody](../../Models/Operations/PostUsersSignInDataRequestBody.md) | :heavy_minus_sign: | Login credentials | | \ No newline at end of file diff --git a/docs/Models/Operations/PostUsersSignInDataUserPlexAccount.md b/docs/Models/Operations/PostUsersSignInDataUserPlexAccount.md index bcfb626..bb3b751 100644 --- a/docs/Models/Operations/PostUsersSignInDataUserPlexAccount.md +++ b/docs/Models/Operations/PostUsersSignInDataUserPlexAccount.md @@ -22,13 +22,13 @@ Returns the user account data with a valid auth token | `homeAdmin` | *bool* | :heavy_check_mark: | If the account is the Plex Home admin | | | `homeSize` | *int* | :heavy_check_mark: | The number of accounts in the Plex Home | 1 | | `id` | *int* | :heavy_check_mark: | The Plex account ID | 13692262 | -| `joinedAt` | *int* | :heavy_check_mark: | Unix epoch datetime | 1556281940 | +| `joinedAt` | *int* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 | | `mailingListActive` | *bool* | :heavy_check_mark: | If you are subscribed to the Plex newsletter | | | `mailingListStatus` | [Operations\PostUsersSignInDataMailingListStatus](../../Models/Operations/PostUsersSignInDataMailingListStatus.md) | :heavy_check_mark: | Your current mailing list status | | | `maxHomeSize` | *int* | :heavy_check_mark: | The maximum number of accounts allowed in the Plex Home | 15 | | `profile` | [Operations\PostUsersSignInDataUserProfile](../../Models/Operations/PostUsersSignInDataUserProfile.md) | :heavy_check_mark: | N/A | | | `protected` | *bool* | :heavy_check_mark: | If the account has a Plex Home PIN enabled | | -| `rememberExpiresAt` | *int* | :heavy_check_mark: | Unix epoch datetime | 1556281940 | +| `rememberExpiresAt` | *int* | :heavy_check_mark: | Unix epoch datetime in seconds | 1556281940 | | `restricted` | *bool* | :heavy_check_mark: | If the account is a Plex Home managed user | | | `scrobbleTypes` | *string* | :heavy_check_mark: | Unknown | | | `services` | array<[Operations\PostUsersSignInDataServices](../../Models/Operations/PostUsersSignInDataServices.md)> | :heavy_check_mark: | N/A | | diff --git a/docs/Models/Operations/PostUsersSignInDataUserProfile.md b/docs/Models/Operations/PostUsersSignInDataUserProfile.md index a2d59ee..c3e19ec 100644 --- a/docs/Models/Operations/PostUsersSignInDataUserProfile.md +++ b/docs/Models/Operations/PostUsersSignInDataUserProfile.md @@ -3,13 +3,13 @@ ## Fields -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `autoSelectAudio` | *?bool* | :heavy_minus_sign: | If the account has automatically select audio and subtitle tracks enabled | true | -| `defaultAudioLanguage` | *string* | :heavy_check_mark: | The preferred audio language for the account | ja | -| `defaultSubtitleLanguage` | *string* | :heavy_check_mark: | The preferred subtitle language for the account | en | -| `autoSelectSubtitle` | [?Operations\PostUsersSignInDataAutoSelectSubtitle](../../Models/Operations/PostUsersSignInDataAutoSelectSubtitle.md) | :heavy_minus_sign: | The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) | 1 | -| `defaultSubtitleAccessibility` | [?Operations\PostUsersSignInDataDefaultSubtitleAccessibility](../../Models/Operations/PostUsersSignInDataDefaultSubtitleAccessibility.md) | :heavy_minus_sign: | The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) | 1 | -| `defaultSubtitleForced` | [?Operations\PostUsersSignInDataDefaultSubtitleForced](../../Models/Operations/PostUsersSignInDataDefaultSubtitleForced.md) | :heavy_minus_sign: | The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) | 0 | -| `watchedIndicator` | [?Operations\PostUsersSignInDataWatchedIndicator](../../Models/Operations/PostUsersSignInDataWatchedIndicator.md) | :heavy_minus_sign: | N/A | 1 | -| `mediaReviewsVisibility` | [?Operations\PostUsersSignInDataMediaReviewsVisibility](../../Models/Operations/PostUsersSignInDataMediaReviewsVisibility.md) | :heavy_minus_sign: | N/A | 0 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | +| `autoSelectAudio` | *bool* | :heavy_check_mark: | If the account has automatically select audio and subtitle tracks enabled | true | +| `autoSelectSubtitle` | [Operations\PostUsersSignInDataAutoSelectSubtitle](../../Models/Operations/PostUsersSignInDataAutoSelectSubtitle.md) | :heavy_check_mark: | N/A | 1 | +| `defaultSubtitleAccessibility` | [Operations\PostUsersSignInDataDefaultSubtitleAccessibility](../../Models/Operations/PostUsersSignInDataDefaultSubtitleAccessibility.md) | :heavy_check_mark: | N/A | 1 | +| `defaultSubtitleForced` | [Operations\PostUsersSignInDataDefaultSubtitleForced](../../Models/Operations/PostUsersSignInDataDefaultSubtitleForced.md) | :heavy_check_mark: | N/A | 1 | +| `watchedIndicator` | [Operations\PostUsersSignInDataWatchedIndicator](../../Models/Operations/PostUsersSignInDataWatchedIndicator.md) | :heavy_check_mark: | N/A | 1 | +| `mediaReviewsVisibility` | [Operations\PostUsersSignInDataMediaReviewsVisibility](../../Models/Operations/PostUsersSignInDataMediaReviewsVisibility.md) | :heavy_check_mark: | N/A | 1 | +| `defaultAudioLanguage` | *string* | :heavy_check_mark: | The preferred audio language for the account | ja | +| `defaultSubtitleLanguage` | *string* | :heavy_check_mark: | The preferred subtitle language for the account | en | \ No newline at end of file diff --git a/docs/Models/Operations/PostUsersSignInDataWatchedIndicator.md b/docs/Models/Operations/PostUsersSignInDataWatchedIndicator.md index 9cce93e..fa6d450 100644 --- a/docs/Models/Operations/PostUsersSignInDataWatchedIndicator.md +++ b/docs/Models/Operations/PostUsersSignInDataWatchedIndicator.md @@ -1,9 +1,11 @@ # PostUsersSignInDataWatchedIndicator +Whether or not media watched indicators are enabled (little orange dot on media) + ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/Protocol.md b/docs/Models/Operations/Protocol.md new file mode 100644 index 0000000..41a611c --- /dev/null +++ b/docs/Models/Operations/Protocol.md @@ -0,0 +1,11 @@ +# Protocol + +The protocol used for the connection (http, https, etc) + + +## Values + +| Name | Value | +| ------- | ------- | +| `Http` | http | +| `Https` | https | \ No newline at end of file diff --git a/docs/Models/Operations/QueryParamType.md b/docs/Models/Operations/QueryParamType.md index 23780bc..65dedff 100644 --- a/docs/Models/Operations/QueryParamType.md +++ b/docs/Models/Operations/QueryParamType.md @@ -11,9 +11,9 @@ E.g. A movie library will not return anything with type 3 as there are no season ## Values -| Name | Value | -| ------- | ------- | -| `One` | 1 | -| `Two` | 2 | -| `Three` | 3 | -| `Four` | 4 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Movie` | 1 | +| `Show` | 2 | +| `Season` | 3 | +| `Episode` | 4 | \ No newline at end of file diff --git a/docs/Models/Operations/Type.md b/docs/Models/Operations/Type.md index 95a0e83..9856d9e 100644 --- a/docs/Models/Operations/Type.md +++ b/docs/Models/Operations/Type.md @@ -11,9 +11,9 @@ E.g. A movie library will not return anything with type 3 as there are no season ## Values -| Name | Value | -| ------- | ------- | -| `One` | 1 | -| `Two` | 2 | -| `Three` | 3 | -| `Four` | 4 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Movie` | 1 | +| `Show` | 2 | +| `Season` | 3 | +| `Episode` | 4 | \ No newline at end of file diff --git a/docs/Models/Operations/UploadPlaylistRequest.md b/docs/Models/Operations/UploadPlaylistRequest.md index b240293..206df16 100644 --- a/docs/Models/Operations/UploadPlaylistRequest.md +++ b/docs/Models/Operations/UploadPlaylistRequest.md @@ -6,4 +6,5 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `path` | *string* | :heavy_check_mark: | absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. <br/>If the `path` argument is a directory, that path will be scanned for playlist files to be processed. <br/>Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. <br/>The GUID of each playlist is based on the filename. <br/>If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. <br/>The GUID of each playlist is based on the filename.<br/> | /home/barkley/playlist.m3u | -| `force` | [Operations\QueryParamForce](../../Models/Operations/QueryParamForce.md) | :heavy_check_mark: | Force overwriting of duplicate playlists. <br/>By default, a playlist file uploaded with the same path will overwrite the existing playlist. <br/>The `force` argument is used to disable overwriting. <br/>If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.<br/> | | \ No newline at end of file +| `force` | [Operations\QueryParamForce](../../Models/Operations/QueryParamForce.md) | :heavy_check_mark: | Force overwriting of duplicate playlists. <br/>By default, a playlist file uploaded with the same path will overwrite the existing playlist. <br/>The `force` argument is used to disable overwriting. <br/>If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.<br/> | | +| `sectionID` | *int* | :heavy_check_mark: | Possibly the section ID to upload the playlist to, we are not certain. | 1 | \ No newline at end of file diff --git a/docs/Models/Operations/UserProfile.md b/docs/Models/Operations/UserProfile.md index 2c76013..5d781a3 100644 --- a/docs/Models/Operations/UserProfile.md +++ b/docs/Models/Operations/UserProfile.md @@ -3,13 +3,13 @@ ## Fields -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `autoSelectAudio` | *?bool* | :heavy_minus_sign: | If the account has automatically select audio and subtitle tracks enabled | true | -| `defaultAudioLanguage` | *string* | :heavy_check_mark: | The preferred audio language for the account | ja | -| `defaultSubtitleLanguage` | *string* | :heavy_check_mark: | The preferred subtitle language for the account | en | -| `autoSelectSubtitle` | [?Operations\AutoSelectSubtitle](../../Models/Operations/AutoSelectSubtitle.md) | :heavy_minus_sign: | The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) | 1 | -| `defaultSubtitleAccessibility` | [?Operations\DefaultSubtitleAccessibility](../../Models/Operations/DefaultSubtitleAccessibility.md) | :heavy_minus_sign: | The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) | 1 | -| `defaultSubtitleForced` | [?Operations\DefaultSubtitleForced](../../Models/Operations/DefaultSubtitleForced.md) | :heavy_minus_sign: | The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) | 0 | -| `watchedIndicator` | [?Operations\WatchedIndicator](../../Models/Operations/WatchedIndicator.md) | :heavy_minus_sign: | N/A | 1 | -| `mediaReviewsVisibility` | [?Operations\MediaReviewsVisibility](../../Models/Operations/MediaReviewsVisibility.md) | :heavy_minus_sign: | N/A | 0 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | +| `autoSelectAudio` | *bool* | :heavy_check_mark: | If the account has automatically select audio and subtitle tracks enabled | true | +| `autoSelectSubtitle` | [Operations\AutoSelectSubtitle](../../Models/Operations/AutoSelectSubtitle.md) | :heavy_check_mark: | N/A | 1 | +| `defaultSubtitleAccessibility` | [Operations\DefaultSubtitleAccessibility](../../Models/Operations/DefaultSubtitleAccessibility.md) | :heavy_check_mark: | N/A | 1 | +| `defaultSubtitleForced` | [Operations\DefaultSubtitleForced](../../Models/Operations/DefaultSubtitleForced.md) | :heavy_check_mark: | N/A | 1 | +| `watchedIndicator` | [Operations\WatchedIndicator](../../Models/Operations/WatchedIndicator.md) | :heavy_check_mark: | N/A | 1 | +| `mediaReviewsVisibility` | [Operations\MediaReviewsVisibility](../../Models/Operations/MediaReviewsVisibility.md) | :heavy_check_mark: | N/A | 1 | +| `defaultAudioLanguage` | *string* | :heavy_check_mark: | The preferred audio language for the account | ja | +| `defaultSubtitleLanguage` | *string* | :heavy_check_mark: | The preferred subtitle language for the account | en | \ No newline at end of file diff --git a/docs/Models/Operations/WatchedIndicator.md b/docs/Models/Operations/WatchedIndicator.md index 1ad0cbe..5a931a7 100644 --- a/docs/Models/Operations/WatchedIndicator.md +++ b/docs/Models/Operations/WatchedIndicator.md @@ -1,9 +1,11 @@ # WatchedIndicator +Whether or not media watched indicators are enabled (little orange dot on media) + ## Values -| Name | Value | -| ------ | ------ | -| `Zero` | 0 | -| `One` | 1 | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `Disable` | 0 | +| `Enable` | 1 | \ No newline at end of file diff --git a/docs/sdks/authentication/README.md b/docs/sdks/authentication/README.md index baad445..559dce4 100644 --- a/docs/sdks/authentication/README.md +++ b/docs/sdks/authentication/README.md @@ -102,7 +102,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->authentication->getSourceConnectionInformation('server://client-identifier'); + $response = $sdk->authentication->getSourceConnectionInformation('provider://provider-identifier'); if ($response->statusCode === 200) { // handle response @@ -210,12 +210,12 @@ $sdk = Plex_API\PlexAPI::builder() ->build(); try { - $requestBody = new Operations\PostUsersSignInDataRequestBody( + $request = new Operations\PostUsersSignInDataRequestBody( login: 'username@email.com', password: 'password123', verificationCode: '123456', ); - $response = $sdk->authentication->postUsersSignInData('gcgzw5rz2xovp84b4vha3a40', $requestBody); + $response = $sdk->authentication->postUsersSignInData($request); if ($response->userPlexAccount !== null) { // handle response @@ -227,11 +227,10 @@ try { ### Parameters -| Parameter | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `clientID` | *string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | gcgzw5rz2xovp84b4vha3a40 | -| `requestBody` | [Operations\PostUsersSignInDataRequestBody](../../Models/Operations/PostUsersSignInDataRequestBody.md) | :heavy_minus_sign: | Login credentials | | -| `$serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. | http://localhost:8080 | +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | +| `$request` | [Operations\PostUsersSignInDataRequestBody](../../Models/Operations/PostUsersSignInDataRequestBody.md) | :heavy_check_mark: | The request object to use for the request. | +| `$serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. | ### Response diff --git a/docs/sdks/hubs/README.md b/docs/sdks/hubs/README.md index 1bc3add..41d3ff7 100644 --- a/docs/sdks/hubs/README.md +++ b/docs/sdks/hubs/README.md @@ -99,7 +99,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->hubs->getLibraryHubs(6728.76, 9010.22, Operations\QueryParamOnlyTransient::Zero); + $response = $sdk->hubs->getLibraryHubs(6728.76, 639.24, Operations\QueryParamOnlyTransient::One); if ($response->object !== null) { // handle response diff --git a/docs/sdks/library/README.md b/docs/sdks/library/README.md index ee626db..c19e2af 100644 --- a/docs/sdks/library/README.md +++ b/docs/sdks/library/README.md @@ -399,9 +399,9 @@ try { $request = new Operations\GetLibraryItemsRequest( sectionKey: 9518, tag: Operations\Tag::Edition, - type: Operations\Type::Two, - includeGuids: Operations\IncludeGuids::One, - includeMeta: Operations\IncludeMeta::One, + type: Operations\Type::Show, + includeGuids: Operations\IncludeGuids::Enable, + includeMeta: Operations\IncludeMeta::Enable, xPlexContainerStart: 0, xPlexContainerSize: 50, ); @@ -541,7 +541,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->library->getSearchLibrary(9518, Operations\QueryParamType::Two); + $response = $sdk->library->getSearchLibrary(9518, Operations\QueryParamType::Show); if ($response->object !== null) { // handle response @@ -658,7 +658,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->library->getMetadataChildren(1539.14, '<value>'); + $response = $sdk->library->getMetadataChildren(1539.15, '<value>'); if ($response->object !== null) { // handle response @@ -718,7 +718,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->library->getTopWatchedContent(Operations\GetTopWatchedContentQueryParamType::Two, 1); + $response = $sdk->library->getTopWatchedContent(Operations\GetTopWatchedContentQueryParamType::Show, 1); if ($response->object !== null) { // handle response diff --git a/docs/sdks/playlists/README.md b/docs/sdks/playlists/README.md index f611ccf..5d036d1 100644 --- a/docs/sdks/playlists/README.md +++ b/docs/sdks/playlists/README.md @@ -55,7 +55,7 @@ try { title: '<value>', type: Operations\CreatePlaylistQueryParamType::Photo, smart: Operations\Smart::One, - uri: 'https://inborn-brochure.biz', + uri: 'https://hoarse-testing.info/', ); $response = $sdk->playlists->createPlaylist($request); @@ -291,7 +291,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->playlists->updatePlaylist(3915, '<value>', '<value>'); + $response = $sdk->playlists->updatePlaylist(3915.00, '<value>', '<value>'); if ($response->statusCode === 200) { // handle response @@ -355,7 +355,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->playlists->getPlaylistContents(5004.46, Operations\GetPlaylistContentsQueryParamType::Two); + $response = $sdk->playlists->getPlaylistContents(5004.46, Operations\GetPlaylistContentsQueryParamType::Show); if ($response->object !== null) { // handle response @@ -473,7 +473,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->playlists->addPlaylistContents(8502.01, 'server://12345/com.plexapp.plugins.library/library/metadata/1', 123); + $response = $sdk->playlists->addPlaylistContents(8502.00, 'server://12345/com.plexapp.plugins.library/library/metadata/1', 123); if ($response->object !== null) { // handle response @@ -534,7 +534,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->playlists->uploadPlaylist('/home/barkley/playlist.m3u', Operations\QueryParamForce::Zero); + $response = $sdk->playlists->uploadPlaylist('/home/barkley/playlist.m3u', Operations\QueryParamForce::Zero, 1); if ($response->statusCode === 200) { // handle response @@ -550,6 +550,7 @@ try { | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `path` | *string* | :heavy_check_mark: | absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. <br/>If the `path` argument is a directory, that path will be scanned for playlist files to be processed. <br/>Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. <br/>The GUID of each playlist is based on the filename. <br/>If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. <br/>The GUID of each playlist is based on the filename.<br/> | /home/barkley/playlist.m3u | | `force` | [Operations\QueryParamForce](../../Models/Operations/QueryParamForce.md) | :heavy_check_mark: | Force overwriting of duplicate playlists. <br/>By default, a playlist file uploaded with the same path will overwrite the existing playlist. <br/>The `force` argument is used to disable overwriting. <br/>If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded.<br/> | | +| `sectionID` | *int* | :heavy_check_mark: | Possibly the section ID to upload the playlist to, we are not certain. | 1 | ### Response diff --git a/docs/sdks/plex/README.md b/docs/sdks/plex/README.md index 8aa55a6..e714470 100644 --- a/docs/sdks/plex/README.md +++ b/docs/sdks/plex/README.md @@ -257,7 +257,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->plex->getServerResources('gcgzw5rz2xovp84b4vha3a40', Operations\IncludeHttps::One, Operations\IncludeRelay::One, Operations\IncludeIPv6::One); + $response = $sdk->plex->getServerResources(Operations\IncludeHttps::Enable, Operations\IncludeRelay::Enable, Operations\IncludeIPv6::Enable); if ($response->plexDevices !== null) { // handle response @@ -269,13 +269,12 @@ try { ### Parameters -| Parameter | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `clientID` | *string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | gcgzw5rz2xovp84b4vha3a40 | -| `includeHttps` | [Operations\IncludeHttps](../../Models/Operations/IncludeHttps.md) | :heavy_minus_sign: | Include Https entries in the results | 1 | -| `includeRelay` | [Operations\IncludeRelay](../../Models/Operations/IncludeRelay.md) | :heavy_minus_sign: | Include Relay addresses in the results <br/>E.g: https://10-0-0-25.bbf8e10c7fa20447cacee74cd9914cde.plex.direct:32400<br/> | 1 | -| `includeIPv6` | [Operations\IncludeIPv6](../../Models/Operations/IncludeIPv6.md) | :heavy_minus_sign: | Include IPv6 entries in the results | 1 | -| `$serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. | http://localhost:8080 | +| Parameter | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | +| `includeHttps` | [Operations\IncludeHttps](../../Models/Operations/IncludeHttps.md) | :heavy_minus_sign: | Include Https entries in the results | 1 | +| `includeRelay` | [Operations\IncludeRelay](../../Models/Operations/IncludeRelay.md) | :heavy_minus_sign: | Include Relay addresses in the results <br/>E.g: https://10-0-0-25.bbf8e10c7fa20447cacee74cd9914cde.plex.direct:32400<br/> | 1 | +| `includeIPv6` | [Operations\IncludeIPv6](../../Models/Operations/IncludeIPv6.md) | :heavy_minus_sign: | Include IPv6 entries in the results | 1 | +| `$serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. | http://localhost:8080 | ### Response @@ -366,7 +365,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->plex->getTokenByPinId(408895, 'gcgzw5rz2xovp84b4vha3a40'); + $response = $sdk->plex->getTokenByPinId(408895); if ($response->authPinContainer !== null) { // handle response @@ -378,11 +377,10 @@ try { ### Parameters -| Parameter | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `pinID` | *int* | :heavy_check_mark: | The PinID to retrieve an access token for | | -| `clientID` | *string* | :heavy_minus_sign: | The unique identifier for the client application<br/>This is used to track the client application and its usage<br/>(UUID, serial number, or other number unique per device)<br/> | gcgzw5rz2xovp84b4vha3a40 | -| `$serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. | http://localhost:8080 | +| Parameter | Type | Required | Description | +| ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | +| `pinID` | *int* | :heavy_check_mark: | The PinID to retrieve an access token for | +| `$serverURL` | *string* | :heavy_minus_sign: | An optional server URL to use. | ### Response diff --git a/docs/sdks/search/README.md b/docs/sdks/search/README.md index 3b377d0..11e027e 100644 --- a/docs/sdks/search/README.md +++ b/docs/sdks/search/README.md @@ -51,7 +51,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->search->performSearch('arnold', 9372.7, 5); + $response = $sdk->search->performSearch('dylan', 5838.67, 5); if ($response->statusCode === 200) { // handle response @@ -114,7 +114,7 @@ $sdk = Plex_API\PlexAPI::builder() try { - $response = $sdk->search->performVoiceSearch('dead+poop', 4094.8, 5); + $response = $sdk->search->performVoiceSearch('dead+poop', 4094.80, 5); if ($response->statusCode === 200) { // handle response diff --git a/docs/sdks/server/README.md b/docs/sdks/server/README.md index fb39ab1..ab1d875 100644 --- a/docs/sdks/server/README.md +++ b/docs/sdks/server/README.md @@ -344,9 +344,9 @@ try { width: 110, height: 165, opacity: 643869, - blur: 0, - minSize: Operations\MinSize::Zero, - upscale: Operations\Upscale::One, + blur: 4000, + minSize: Operations\MinSize::One, + upscale: Operations\Upscale::Zero, url: '/library/metadata/49564/thumb/1654258204', ); $response = $sdk->server->getResizedPhoto($request); diff --git a/src/Authentication.php b/src/Authentication.php index ce81cc3..1c3998c 100644 --- a/src/Authentication.php +++ b/src/Authentication.php @@ -226,21 +226,15 @@ public function getTokenDetails( * * Sign in user with username and password and return user data with Plex authentication token * - * @param ?string $clientID - * @param ?Operations\PostUsersSignInDataRequestBody $requestBody + * @param Operations\PostUsersSignInDataRequestBody $request * @param string $serverURL * @return Operations\PostUsersSignInDataResponse * @throws \LukeHagar\Plex_API\Models\Errors\SDKException */ public function postUsersSignInData( - ?string $clientID = null, - ?Operations\PostUsersSignInDataRequestBody $requestBody = null, + ?Operations\PostUsersSignInDataRequestBody $request, ?string $serverURL = null, ): Operations\PostUsersSignInDataResponse { - $request = new Operations\PostUsersSignInDataRequest( - clientID: $clientID, - requestBody: $requestBody, - ); $baseUrl = Utils\Utils::templateUrl(Authentication::POST_USERS_SIGN_IN_DATA_SERVERS[0], [ ]); if (! empty($serverURL)) { @@ -248,11 +242,10 @@ public function postUsersSignInData( } $url = Utils\Utils::generateUrl($baseUrl, '/users/signin'); $options = ['http_errors' => false]; - $body = Utils\Utils::serializeRequestBody($request, 'requestBody', 'form'); + $body = Utils\Utils::serializeRequestBody($request, 'request', 'form'); if ($body !== null) { $options = array_merge_recursive($options, $body); } - $options = array_merge_recursive($options, Utils\Utils::getQueryParams(Operations\PostUsersSignInDataRequest::class, $request, $this->sdkConfiguration->globals)); $options['headers']['Accept'] = 'application/json'; $options['headers']['user-agent'] = $this->sdkConfiguration->userAgent; $httpRequest = new \GuzzleHttp\Psr7\Request('POST', $url); diff --git a/src/Models/Components/Security.php b/src/Models/Components/Security.php index b5b9fe2..f6d08e3 100644 --- a/src/Models/Components/Security.php +++ b/src/Models/Components/Security.php @@ -15,7 +15,7 @@ class Security * * @var ?string $accessToken */ - #[SpeakeasyMetadata('security:scheme=true,type=apiKey,subtype=query,name=X-Plex-Token')] + #[SpeakeasyMetadata('security:scheme=true,type=apiKey,subtype=header,name=X-Plex-Token')] public ?string $accessToken = null; /** diff --git a/src/Models/Operations/AutoSelectSubtitle.php b/src/Models/Operations/AutoSelectSubtitle.php index e32ebbe..e7820b5 100644 --- a/src/Models/Operations/AutoSelectSubtitle.php +++ b/src/Models/Operations/AutoSelectSubtitle.php @@ -10,8 +10,8 @@ /** The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) */ -enum AutoSelectSubtitle: string +enum AutoSelectSubtitle: int { - case Zero = '0'; - case One = '1'; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/Connections.php b/src/Models/Operations/Connections.php index 343efe5..0650bf4 100644 --- a/src/Models/Operations/Connections.php +++ b/src/Models/Operations/Connections.php @@ -12,13 +12,16 @@ class Connections { /** + * The protocol used for the connection (http, https, etc) * - * @var string $protocol + * @var Protocol $protocol */ #[\JMS\Serializer\Annotation\SerializedName('protocol')] - public string $protocol; + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\Protocol')] + public Protocol $protocol; /** + * The (ip) address or domain name used for the connection * * @var string $address */ @@ -26,13 +29,15 @@ class Connections public string $address; /** + * The port used for the connection * - * @var float $port + * @var int $port */ #[\JMS\Serializer\Annotation\SerializedName('port')] - public float $port; + public int $port; /** + * The full URI of the connection * * @var string $uri */ @@ -40,6 +45,7 @@ class Connections public string $uri; /** + * If the connection is local address * * @var bool $local */ @@ -47,6 +53,7 @@ class Connections public bool $local; /** + * If the connection is relayed through plex.direct * * @var bool $relay */ @@ -54,6 +61,7 @@ class Connections public bool $relay; /** + * If the connection is using IPv6 * * @var bool $iPv6 */ @@ -61,15 +69,15 @@ class Connections public bool $iPv6; /** - * @param string $protocol + * @param Protocol $protocol * @param string $address - * @param float $port + * @param int $port * @param string $uri * @param bool $local * @param bool $relay * @param bool $iPv6 */ - public function __construct(string $protocol, string $address, float $port, string $uri, bool $local, bool $relay, bool $iPv6) + public function __construct(Protocol $protocol, string $address, int $port, string $uri, bool $local, bool $relay, bool $iPv6) { $this->protocol = $protocol; $this->address = $address; diff --git a/src/Models/Operations/DefaultSubtitleAccessibility.php b/src/Models/Operations/DefaultSubtitleAccessibility.php index c224ad1..27c152b 100644 --- a/src/Models/Operations/DefaultSubtitleAccessibility.php +++ b/src/Models/Operations/DefaultSubtitleAccessibility.php @@ -9,9 +9,9 @@ namespace LukeHagar\Plex_API\Models\Operations; -/** The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) */ -enum DefaultSubtitleAccessibility: string +/** The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only show non-SDH subtitles) */ +enum DefaultSubtitleAccessibility: int { - case Zero = '0'; - case One = '1'; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/DefaultSubtitleForced.php b/src/Models/Operations/DefaultSubtitleForced.php index b3d34d5..dce5819 100644 --- a/src/Models/Operations/DefaultSubtitleForced.php +++ b/src/Models/Operations/DefaultSubtitleForced.php @@ -10,8 +10,8 @@ /** The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) */ -enum DefaultSubtitleForced: string +enum DefaultSubtitleForced: int { - case Zero = '0'; - case One = '1'; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/GetAllLibrariesDirectory.php b/src/Models/Operations/GetAllLibrariesDirectory.php index 115663f..9817a94 100644 --- a/src/Models/Operations/GetAllLibrariesDirectory.php +++ b/src/Models/Operations/GetAllLibrariesDirectory.php @@ -13,201 +13,180 @@ class GetAllLibrariesDirectory { /** * - * @var ?bool $allowSync + * @var bool $allowSync */ #[\JMS\Serializer\Annotation\SerializedName('allowSync')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?bool $allowSync = null; + public bool $allowSync; /** * - * @var ?string $art + * @var string $art */ #[\JMS\Serializer\Annotation\SerializedName('art')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $art = null; + public string $art; /** * - * @var ?string $composite + * @var string $composite */ #[\JMS\Serializer\Annotation\SerializedName('composite')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $composite = null; + public string $composite; /** * - * @var ?bool $filters + * @var bool $filters */ #[\JMS\Serializer\Annotation\SerializedName('filters')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?bool $filters = null; + public bool $filters; /** * - * @var ?bool $refreshing + * @var bool $refreshing */ #[\JMS\Serializer\Annotation\SerializedName('refreshing')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?bool $refreshing = null; + public bool $refreshing; /** * - * @var ?string $thumb + * @var string $thumb */ #[\JMS\Serializer\Annotation\SerializedName('thumb')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $thumb = null; + public string $thumb; /** * - * @var ?string $key + * @var string $key */ #[\JMS\Serializer\Annotation\SerializedName('key')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $key = null; + public string $key; /** * - * @var ?string $type + * @var string $type */ #[\JMS\Serializer\Annotation\SerializedName('type')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $type = null; + public string $type; /** * - * @var ?string $title + * @var string $title */ #[\JMS\Serializer\Annotation\SerializedName('title')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $title = null; + public string $title; /** * - * @var ?string $agent + * @var string $agent */ #[\JMS\Serializer\Annotation\SerializedName('agent')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $agent = null; + public string $agent; /** * - * @var ?string $scanner + * @var string $scanner */ #[\JMS\Serializer\Annotation\SerializedName('scanner')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $scanner = null; + public string $scanner; /** * - * @var ?string $language + * @var string $language */ #[\JMS\Serializer\Annotation\SerializedName('language')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $language = null; + public string $language; /** * - * @var ?string $uuid + * @var string $uuid */ #[\JMS\Serializer\Annotation\SerializedName('uuid')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $uuid = null; + public string $uuid; /** - * Unix epoch datetime + * Unix epoch datetime in seconds * - * @var ?int $updatedAt + * @var int $updatedAt */ #[\JMS\Serializer\Annotation\SerializedName('updatedAt')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?int $updatedAt = null; + public int $updatedAt; /** - * Unix epoch datetime + * Unix epoch datetime in seconds * - * @var ?int $createdAt + * @var int $createdAt */ #[\JMS\Serializer\Annotation\SerializedName('createdAt')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?int $createdAt = null; + public int $createdAt; /** - * Unix epoch datetime + * Unix epoch datetime in seconds * - * @var ?int $scannedAt + * @var int $scannedAt */ #[\JMS\Serializer\Annotation\SerializedName('scannedAt')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?int $scannedAt = null; + public int $scannedAt; /** * - * @var ?bool $content + * @var bool $content */ #[\JMS\Serializer\Annotation\SerializedName('content')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?bool $content = null; + public bool $content; /** * - * @var ?bool $directory + * @var bool $directory */ #[\JMS\Serializer\Annotation\SerializedName('directory')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?bool $directory = null; + public bool $directory; /** * - * @var ?int $contentChangedAt + * @var int $contentChangedAt */ #[\JMS\Serializer\Annotation\SerializedName('contentChangedAt')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?int $contentChangedAt = null; + public int $contentChangedAt; /** * - * @var ?int $hidden + * @var int $hidden */ #[\JMS\Serializer\Annotation\SerializedName('hidden')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?int $hidden = null; + public int $hidden; /** * $location * - * @var ?array<Location> $location + * @var array<Location> $location */ #[\JMS\Serializer\Annotation\SerializedName('Location')] - #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\Location>|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?array $location = null; - - /** - * @param ?bool $allowSync - * @param ?string $art - * @param ?string $composite - * @param ?bool $filters - * @param ?bool $refreshing - * @param ?string $thumb - * @param ?string $key - * @param ?string $type - * @param ?string $title - * @param ?string $agent - * @param ?string $scanner - * @param ?string $language - * @param ?string $uuid - * @param ?int $updatedAt - * @param ?int $createdAt - * @param ?int $scannedAt - * @param ?bool $content - * @param ?bool $directory - * @param ?int $contentChangedAt - * @param ?int $hidden - * @param ?array<Location> $location - */ - public function __construct(?bool $allowSync = null, ?string $art = null, ?string $composite = null, ?bool $filters = null, ?bool $refreshing = null, ?string $thumb = null, ?string $key = null, ?string $type = null, ?string $title = null, ?string $agent = null, ?string $scanner = null, ?string $language = null, ?string $uuid = null, ?int $updatedAt = null, ?int $createdAt = null, ?int $scannedAt = null, ?bool $content = null, ?bool $directory = null, ?int $contentChangedAt = null, ?int $hidden = null, ?array $location = null) + #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\Location>')] + public array $location; + + /** + * @param bool $allowSync + * @param string $art + * @param string $composite + * @param bool $filters + * @param bool $refreshing + * @param string $thumb + * @param string $key + * @param string $type + * @param string $title + * @param string $agent + * @param string $scanner + * @param string $language + * @param string $uuid + * @param int $updatedAt + * @param int $createdAt + * @param int $scannedAt + * @param bool $content + * @param bool $directory + * @param int $contentChangedAt + * @param int $hidden + * @param array<Location> $location + */ + public function __construct(bool $allowSync, string $art, string $composite, bool $filters, bool $refreshing, string $thumb, string $key, string $type, string $title, string $agent, string $scanner, string $language, string $uuid, int $updatedAt, int $createdAt, int $scannedAt, bool $content, bool $directory, int $contentChangedAt, int $hidden, array $location) { $this->allowSync = $allowSync; $this->art = $art; diff --git a/src/Models/Operations/GetAllLibrariesMediaContainer.php b/src/Models/Operations/GetAllLibrariesMediaContainer.php index b71f66c..c2ac830 100644 --- a/src/Models/Operations/GetAllLibrariesMediaContainer.php +++ b/src/Models/Operations/GetAllLibrariesMediaContainer.php @@ -35,20 +35,19 @@ class GetAllLibrariesMediaContainer /** * $directory * - * @var ?array<GetAllLibrariesDirectory> $directory + * @var array<GetAllLibrariesDirectory> $directory */ #[\JMS\Serializer\Annotation\SerializedName('Directory')] - #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\GetAllLibrariesDirectory>|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?array $directory = null; + #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\GetAllLibrariesDirectory>')] + public array $directory; /** * @param int $size * @param bool $allowSync * @param string $title1 - * @param ?array<GetAllLibrariesDirectory> $directory + * @param array<GetAllLibrariesDirectory> $directory */ - public function __construct(int $size, bool $allowSync, string $title1, ?array $directory = null) + public function __construct(int $size, bool $allowSync, string $title1, array $directory) { $this->size = $size; $this->allowSync = $allowSync; diff --git a/src/Models/Operations/GetAllLibrariesResponseBody.php b/src/Models/Operations/GetAllLibrariesResponseBody.php index 4400209..6e897a4 100644 --- a/src/Models/Operations/GetAllLibrariesResponseBody.php +++ b/src/Models/Operations/GetAllLibrariesResponseBody.php @@ -14,17 +14,16 @@ class GetAllLibrariesResponseBody { /** * - * @var ?GetAllLibrariesMediaContainer $mediaContainer + * @var GetAllLibrariesMediaContainer $mediaContainer */ #[\JMS\Serializer\Annotation\SerializedName('MediaContainer')] - #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\GetAllLibrariesMediaContainer|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?GetAllLibrariesMediaContainer $mediaContainer = null; + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\GetAllLibrariesMediaContainer')] + public GetAllLibrariesMediaContainer $mediaContainer; /** - * @param ?GetAllLibrariesMediaContainer $mediaContainer + * @param GetAllLibrariesMediaContainer $mediaContainer */ - public function __construct(?GetAllLibrariesMediaContainer $mediaContainer = null) + public function __construct(GetAllLibrariesMediaContainer $mediaContainer) { $this->mediaContainer = $mediaContainer; } diff --git a/src/Models/Operations/GetLibraryItemsField.php b/src/Models/Operations/GetLibraryItemsField.php new file mode 100644 index 0000000..7212ad0 --- /dev/null +++ b/src/Models/Operations/GetLibraryItemsField.php @@ -0,0 +1,56 @@ +<?php + +/** + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +declare(strict_types=1); + +namespace LukeHagar\Plex_API\Models\Operations; + + +class GetLibraryItemsField +{ + /** + * + * @var string $key + */ + #[\JMS\Serializer\Annotation\SerializedName('key')] + public string $key; + + /** + * + * @var string $title + */ + #[\JMS\Serializer\Annotation\SerializedName('title')] + public string $title; + + /** + * + * @var string $type + */ + #[\JMS\Serializer\Annotation\SerializedName('type')] + public string $type; + + /** + * + * @var ?string $subType + */ + #[\JMS\Serializer\Annotation\SerializedName('subType')] + #[\JMS\Serializer\Annotation\SkipWhenNull] + public ?string $subType = null; + + /** + * @param string $key + * @param string $title + * @param string $type + * @param ?string $subType + */ + public function __construct(string $key, string $title, string $type, ?string $subType = null) + { + $this->key = $key; + $this->title = $title; + $this->type = $type; + $this->subType = $subType; + } +} \ No newline at end of file diff --git a/src/Models/Operations/GetLibraryItemsFieldType.php b/src/Models/Operations/GetLibraryItemsFieldType.php new file mode 100644 index 0000000..7e21e26 --- /dev/null +++ b/src/Models/Operations/GetLibraryItemsFieldType.php @@ -0,0 +1,39 @@ +<?php + +/** + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +declare(strict_types=1); + +namespace LukeHagar\Plex_API\Models\Operations; + + +class GetLibraryItemsFieldType +{ + /** + * + * @var string $type + */ + #[\JMS\Serializer\Annotation\SerializedName('type')] + public string $type; + + /** + * $operator + * + * @var array<GetLibraryItemsOperator> $operator + */ + #[\JMS\Serializer\Annotation\SerializedName('Operator')] + #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\GetLibraryItemsOperator>')] + public array $operator; + + /** + * @param string $type + * @param array<GetLibraryItemsOperator> $operator + */ + public function __construct(string $type, array $operator) + { + $this->type = $type; + $this->operator = $operator; + } +} \ No newline at end of file diff --git a/src/Models/Operations/GetLibraryItemsFilter.php b/src/Models/Operations/GetLibraryItemsFilter.php new file mode 100644 index 0000000..bd6e426 --- /dev/null +++ b/src/Models/Operations/GetLibraryItemsFilter.php @@ -0,0 +1,64 @@ +<?php + +/** + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +declare(strict_types=1); + +namespace LukeHagar\Plex_API\Models\Operations; + + +class GetLibraryItemsFilter +{ + /** + * + * @var string $filter + */ + #[\JMS\Serializer\Annotation\SerializedName('filter')] + public string $filter; + + /** + * + * @var string $filterType + */ + #[\JMS\Serializer\Annotation\SerializedName('filterType')] + public string $filterType; + + /** + * + * @var string $key + */ + #[\JMS\Serializer\Annotation\SerializedName('key')] + public string $key; + + /** + * + * @var string $title + */ + #[\JMS\Serializer\Annotation\SerializedName('title')] + public string $title; + + /** + * + * @var string $type + */ + #[\JMS\Serializer\Annotation\SerializedName('type')] + public string $type; + + /** + * @param string $filter + * @param string $filterType + * @param string $key + * @param string $title + * @param string $type + */ + public function __construct(string $filter, string $filterType, string $key, string $title, string $type) + { + $this->filter = $filter; + $this->filterType = $filterType; + $this->key = $key; + $this->title = $title; + $this->type = $type; + } +} \ No newline at end of file diff --git a/src/Models/Operations/GetLibraryItemsMediaContainer.php b/src/Models/Operations/GetLibraryItemsMediaContainer.php index 2804156..d888302 100644 --- a/src/Models/Operations/GetLibraryItemsMediaContainer.php +++ b/src/Models/Operations/GetLibraryItemsMediaContainer.php @@ -13,108 +13,95 @@ class GetLibraryItemsMediaContainer { /** * - * @var ?int $size + * @var int $size */ #[\JMS\Serializer\Annotation\SerializedName('size')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?int $size = null; + public int $size; /** * - * @var ?bool $allowSync + * @var bool $allowSync */ #[\JMS\Serializer\Annotation\SerializedName('allowSync')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?bool $allowSync = null; + public bool $allowSync; /** * - * @var ?string $art + * @var string $art */ #[\JMS\Serializer\Annotation\SerializedName('art')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $art = null; + public string $art; /** * - * @var ?string $identifier + * @var string $identifier */ #[\JMS\Serializer\Annotation\SerializedName('identifier')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $identifier = null; + public string $identifier; /** * - * @var int|string|null $librarySectionID + * @var int|string $librarySectionID */ #[\JMS\Serializer\Annotation\SerializedName('librarySectionID')] #[\JMS\Serializer\Annotation\Type('int|string')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public int|string|null $librarySectionID = null; + public int|string $librarySectionID; /** * - * @var ?string $librarySectionTitle + * @var string $librarySectionTitle */ #[\JMS\Serializer\Annotation\SerializedName('librarySectionTitle')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $librarySectionTitle = null; + public string $librarySectionTitle; /** * - * @var ?string $librarySectionUUID + * @var string $librarySectionUUID */ #[\JMS\Serializer\Annotation\SerializedName('librarySectionUUID')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $librarySectionUUID = null; + public string $librarySectionUUID; /** * - * @var ?string $mediaTagPrefix + * @var string $mediaTagPrefix */ #[\JMS\Serializer\Annotation\SerializedName('mediaTagPrefix')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $mediaTagPrefix = null; + public string $mediaTagPrefix; /** * - * @var ?int $mediaTagVersion + * @var int $mediaTagVersion */ #[\JMS\Serializer\Annotation\SerializedName('mediaTagVersion')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?int $mediaTagVersion = null; + public int $mediaTagVersion; /** * - * @var ?string $thumb + * @var string $thumb */ #[\JMS\Serializer\Annotation\SerializedName('thumb')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $thumb = null; + public string $thumb; /** * - * @var ?string $title1 + * @var string $title1 */ #[\JMS\Serializer\Annotation\SerializedName('title1')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $title1 = null; + public string $title1; /** * - * @var ?string $title2 + * @var string $title2 */ #[\JMS\Serializer\Annotation\SerializedName('title2')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $title2 = null; + public string $title2; /** * - * @var ?string $viewGroup + * @var string $viewGroup */ #[\JMS\Serializer\Annotation\SerializedName('viewGroup')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $viewGroup = null; + public string $viewGroup; /** * @@ -143,24 +130,37 @@ class GetLibraryItemsMediaContainer public ?array $metadata = null; /** - * @param ?int $size - * @param ?bool $allowSync - * @param ?string $art - * @param ?string $identifier - * @param int|string|null $librarySectionID - * @param ?string $librarySectionTitle - * @param ?string $librarySectionUUID - * @param ?string $mediaTagPrefix - * @param ?int $mediaTagVersion - * @param ?string $thumb - * @param ?string $title1 - * @param ?string $title2 - * @param ?string $viewGroup + * The Meta object is only included in the response if the `includeMeta` parameter is set to `1`. + * + * + * + * @var ?Meta $meta + */ + #[\JMS\Serializer\Annotation\SerializedName('Meta')] + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\Meta|null')] + #[\JMS\Serializer\Annotation\SkipWhenNull] + public ?Meta $meta = null; + + /** + * @param int $size + * @param bool $allowSync + * @param string $art + * @param string $identifier + * @param int|string $librarySectionID + * @param string $librarySectionTitle + * @param string $librarySectionUUID + * @param string $mediaTagPrefix + * @param int $mediaTagVersion + * @param string $thumb + * @param string $title1 + * @param string $title2 + * @param string $viewGroup * @param ?int $viewMode * @param ?bool $mixedParents * @param ?array<GetLibraryItemsMetadata> $metadata + * @param ?Meta $meta */ - public function __construct(?int $size = null, ?bool $allowSync = null, ?string $art = null, ?string $identifier = null, int|string|null $librarySectionID = null, ?string $librarySectionTitle = null, ?string $librarySectionUUID = null, ?string $mediaTagPrefix = null, ?int $mediaTagVersion = null, ?string $thumb = null, ?string $title1 = null, ?string $title2 = null, ?string $viewGroup = null, ?int $viewMode = null, ?bool $mixedParents = null, ?array $metadata = null) + public function __construct(int $size, bool $allowSync, string $art, string $identifier, int|string $librarySectionID, string $librarySectionTitle, string $librarySectionUUID, string $mediaTagPrefix, int $mediaTagVersion, string $thumb, string $title1, string $title2, string $viewGroup, ?int $viewMode = null, ?bool $mixedParents = null, ?array $metadata = null, ?Meta $meta = null) { $this->size = $size; $this->allowSync = $allowSync; @@ -178,5 +178,6 @@ public function __construct(?int $size = null, ?bool $allowSync = null, ?string $this->viewMode = $viewMode; $this->mixedParents = $mixedParents; $this->metadata = $metadata; + $this->meta = $meta; } } \ No newline at end of file diff --git a/src/Models/Operations/GetLibraryItemsMetadata.php b/src/Models/Operations/GetLibraryItemsMetadata.php index bbac35b..5afc2fc 100644 --- a/src/Models/Operations/GetLibraryItemsMetadata.php +++ b/src/Models/Operations/GetLibraryItemsMetadata.php @@ -13,27 +13,24 @@ class GetLibraryItemsMetadata { /** * - * @var ?string $ratingKey + * @var string $ratingKey */ #[\JMS\Serializer\Annotation\SerializedName('ratingKey')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $ratingKey = null; + public string $ratingKey; /** * - * @var ?string $key + * @var string $key */ #[\JMS\Serializer\Annotation\SerializedName('key')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $key = null; + public string $key; /** * - * @var ?string $guid + * @var string $guid */ #[\JMS\Serializer\Annotation\SerializedName('guid')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $guid = null; + public string $guid; /** * @@ -45,19 +42,17 @@ class GetLibraryItemsMetadata /** * - * @var ?string $type + * @var string $type */ #[\JMS\Serializer\Annotation\SerializedName('type')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $type = null; + public string $type; /** * - * @var ?string $title + * @var string $title */ #[\JMS\Serializer\Annotation\SerializedName('title')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $title = null; + public string $title; /** * @@ -93,11 +88,10 @@ class GetLibraryItemsMetadata /** * - * @var ?int $year + * @var int $year */ #[\JMS\Serializer\Annotation\SerializedName('year')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?int $year = null; + public int $year; /** * @@ -125,11 +119,10 @@ class GetLibraryItemsMetadata /** * - * @var ?int $duration + * @var int $duration */ #[\JMS\Serializer\Annotation\SerializedName('duration')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?int $duration = null; + public int $duration; /** * @@ -246,12 +239,11 @@ class GetLibraryItemsMetadata /** * $media * - * @var ?array<GetLibraryItemsMedia> $media + * @var array<GetLibraryItemsMedia> $media */ #[\JMS\Serializer\Annotation\SerializedName('Media')] - #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\GetLibraryItemsMedia>|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?array $media = null; + #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\GetLibraryItemsMedia>')] + public array $media; /** * $genre @@ -303,6 +295,18 @@ class GetLibraryItemsMetadata #[\JMS\Serializer\Annotation\SkipWhenNull] public ?array $role = null; + /** + * The Guid object is only included in the response if the `includeGuids` parameter is set to `1`. + * + * + * + * @var ?array<MediaGuid> $mediaGuid + */ + #[\JMS\Serializer\Annotation\SerializedName('Guid')] + #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\MediaGuid>|null')] + #[\JMS\Serializer\Annotation\SkipWhenNull] + public ?array $mediaGuid = null; + /** * * @var ?string $titleSort @@ -480,21 +484,22 @@ class GetLibraryItemsMetadata public ?string $parentTheme = null; /** - * @param ?string $ratingKey - * @param ?string $key - * @param ?string $guid + * @param string $ratingKey + * @param string $key + * @param string $guid + * @param string $type + * @param string $title + * @param int $year + * @param int $duration + * @param array<GetLibraryItemsMedia> $media * @param ?string $studio - * @param ?string $type - * @param ?string $title * @param ?string $contentRating * @param ?string $summary * @param ?float $rating * @param ?float $audienceRating - * @param ?int $year * @param ?string $tagline * @param ?string $thumb * @param ?string $art - * @param ?int $duration * @param ?LocalDate $originallyAvailableAt * @param ?int $addedAt * @param ?int $updatedAt @@ -509,12 +514,12 @@ class GetLibraryItemsMetadata * @param ?string $grandparentThumb * @param ?string $grandparentArt * @param ?string $grandparentTheme - * @param ?array<GetLibraryItemsMedia> $media * @param ?array<GetLibraryItemsGenre> $genre * @param ?array<GetLibraryItemsCountry> $country * @param ?array<GetLibraryItemsDirector> $director * @param ?array<GetLibraryItemsWriter> $writer * @param ?array<GetLibraryItemsRole> $role + * @param ?array<MediaGuid> $mediaGuid * @param ?string $titleSort * @param ?int $viewCount * @param ?int $lastViewedAt @@ -538,23 +543,24 @@ class GetLibraryItemsMetadata * @param ?string $parentThumb * @param ?string $parentTheme */ - public function __construct(?string $ratingKey = null, ?string $key = null, ?string $guid = null, ?string $studio = null, ?string $type = null, ?string $title = null, ?string $contentRating = null, ?string $summary = null, ?float $rating = null, ?float $audienceRating = null, ?int $year = null, ?string $tagline = null, ?string $thumb = null, ?string $art = null, ?int $duration = null, ?LocalDate $originallyAvailableAt = null, ?int $addedAt = null, ?int $updatedAt = null, ?string $audienceRatingImage = null, ?string $chapterSource = null, ?string $primaryExtraKey = null, ?string $ratingImage = null, ?string $grandparentRatingKey = null, ?string $grandparentGuid = null, ?string $grandparentKey = null, ?string $grandparentTitle = null, ?string $grandparentThumb = null, ?string $grandparentArt = null, ?string $grandparentTheme = null, ?array $media = null, ?array $genre = null, ?array $country = null, ?array $director = null, ?array $writer = null, ?array $role = null, ?string $titleSort = null, ?int $viewCount = null, ?int $lastViewedAt = null, ?string $originalTitle = null, ?int $viewOffset = null, ?int $skipCount = null, ?int $index = null, ?string $theme = null, ?int $leafCount = null, ?int $viewedLeafCount = null, ?int $childCount = null, ?string $hasPremiumExtras = null, ?string $hasPremiumPrimaryExtra = null, ?string $parentRatingKey = null, ?string $parentGuid = null, ?string $parentStudio = null, ?string $parentKey = null, ?string $parentTitle = null, ?int $parentIndex = null, ?int $parentYear = null, ?string $parentThumb = null, ?string $parentTheme = null) + public function __construct(string $ratingKey, string $key, string $guid, string $type, string $title, int $year, int $duration, array $media, ?string $studio = null, ?string $contentRating = null, ?string $summary = null, ?float $rating = null, ?float $audienceRating = null, ?string $tagline = null, ?string $thumb = null, ?string $art = null, ?LocalDate $originallyAvailableAt = null, ?int $addedAt = null, ?int $updatedAt = null, ?string $audienceRatingImage = null, ?string $chapterSource = null, ?string $primaryExtraKey = null, ?string $ratingImage = null, ?string $grandparentRatingKey = null, ?string $grandparentGuid = null, ?string $grandparentKey = null, ?string $grandparentTitle = null, ?string $grandparentThumb = null, ?string $grandparentArt = null, ?string $grandparentTheme = null, ?array $genre = null, ?array $country = null, ?array $director = null, ?array $writer = null, ?array $role = null, ?array $mediaGuid = null, ?string $titleSort = null, ?int $viewCount = null, ?int $lastViewedAt = null, ?string $originalTitle = null, ?int $viewOffset = null, ?int $skipCount = null, ?int $index = null, ?string $theme = null, ?int $leafCount = null, ?int $viewedLeafCount = null, ?int $childCount = null, ?string $hasPremiumExtras = null, ?string $hasPremiumPrimaryExtra = null, ?string $parentRatingKey = null, ?string $parentGuid = null, ?string $parentStudio = null, ?string $parentKey = null, ?string $parentTitle = null, ?int $parentIndex = null, ?int $parentYear = null, ?string $parentThumb = null, ?string $parentTheme = null) { $this->ratingKey = $ratingKey; $this->key = $key; $this->guid = $guid; - $this->studio = $studio; $this->type = $type; $this->title = $title; + $this->year = $year; + $this->duration = $duration; + $this->media = $media; + $this->studio = $studio; $this->contentRating = $contentRating; $this->summary = $summary; $this->rating = $rating; $this->audienceRating = $audienceRating; - $this->year = $year; $this->tagline = $tagline; $this->thumb = $thumb; $this->art = $art; - $this->duration = $duration; $this->originallyAvailableAt = $originallyAvailableAt; $this->addedAt = $addedAt; $this->updatedAt = $updatedAt; @@ -569,12 +575,12 @@ public function __construct(?string $ratingKey = null, ?string $key = null, ?str $this->grandparentThumb = $grandparentThumb; $this->grandparentArt = $grandparentArt; $this->grandparentTheme = $grandparentTheme; - $this->media = $media; $this->genre = $genre; $this->country = $country; $this->director = $director; $this->writer = $writer; $this->role = $role; + $this->mediaGuid = $mediaGuid; $this->titleSort = $titleSort; $this->viewCount = $viewCount; $this->lastViewedAt = $lastViewedAt; diff --git a/src/Models/Operations/GetLibraryItemsOperator.php b/src/Models/Operations/GetLibraryItemsOperator.php new file mode 100644 index 0000000..c01740e --- /dev/null +++ b/src/Models/Operations/GetLibraryItemsOperator.php @@ -0,0 +1,37 @@ +<?php + +/** + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +declare(strict_types=1); + +namespace LukeHagar\Plex_API\Models\Operations; + + +class GetLibraryItemsOperator +{ + /** + * + * @var string $key + */ + #[\JMS\Serializer\Annotation\SerializedName('key')] + public string $key; + + /** + * + * @var string $title + */ + #[\JMS\Serializer\Annotation\SerializedName('title')] + public string $title; + + /** + * @param string $key + * @param string $title + */ + public function __construct(string $key, string $title) + { + $this->key = $key; + $this->title = $title; + } +} \ No newline at end of file diff --git a/src/Models/Operations/GetLibraryItemsSort.php b/src/Models/Operations/GetLibraryItemsSort.php new file mode 100644 index 0000000..681bfd6 --- /dev/null +++ b/src/Models/Operations/GetLibraryItemsSort.php @@ -0,0 +1,76 @@ +<?php + +/** + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +declare(strict_types=1); + +namespace LukeHagar\Plex_API\Models\Operations; + + +class GetLibraryItemsSort +{ + /** + * + * @var ?string $default + */ + #[\JMS\Serializer\Annotation\SerializedName('default')] + #[\JMS\Serializer\Annotation\SkipWhenNull] + public ?string $default = null; + + /** + * + * @var string $defaultDirection + */ + #[\JMS\Serializer\Annotation\SerializedName('defaultDirection')] + public string $defaultDirection; + + /** + * + * @var ?string $descKey + */ + #[\JMS\Serializer\Annotation\SerializedName('descKey')] + #[\JMS\Serializer\Annotation\SkipWhenNull] + public ?string $descKey = null; + + /** + * + * @var ?string $firstCharacterKey + */ + #[\JMS\Serializer\Annotation\SerializedName('firstCharacterKey')] + #[\JMS\Serializer\Annotation\SkipWhenNull] + public ?string $firstCharacterKey = null; + + /** + * + * @var string $key + */ + #[\JMS\Serializer\Annotation\SerializedName('key')] + public string $key; + + /** + * + * @var string $title + */ + #[\JMS\Serializer\Annotation\SerializedName('title')] + public string $title; + + /** + * @param string $defaultDirection + * @param string $key + * @param string $title + * @param ?string $default + * @param ?string $descKey + * @param ?string $firstCharacterKey + */ + public function __construct(string $defaultDirection, string $key, string $title, ?string $default = null, ?string $descKey = null, ?string $firstCharacterKey = null) + { + $this->defaultDirection = $defaultDirection; + $this->key = $key; + $this->title = $title; + $this->default = $default; + $this->descKey = $descKey; + $this->firstCharacterKey = $firstCharacterKey; + } +} \ No newline at end of file diff --git a/src/Models/Operations/GetLibraryItemsType.php b/src/Models/Operations/GetLibraryItemsType.php new file mode 100644 index 0000000..8ac136e --- /dev/null +++ b/src/Models/Operations/GetLibraryItemsType.php @@ -0,0 +1,91 @@ +<?php + +/** + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +declare(strict_types=1); + +namespace LukeHagar\Plex_API\Models\Operations; + + +class GetLibraryItemsType +{ + /** + * + * @var string $key + */ + #[\JMS\Serializer\Annotation\SerializedName('key')] + public string $key; + + /** + * + * @var string $type + */ + #[\JMS\Serializer\Annotation\SerializedName('type')] + public string $type; + + /** + * + * @var string $title + */ + #[\JMS\Serializer\Annotation\SerializedName('title')] + public string $title; + + /** + * + * @var bool $active + */ + #[\JMS\Serializer\Annotation\SerializedName('active')] + public bool $active; + + /** + * $filter + * + * @var ?array<GetLibraryItemsFilter> $filter + */ + #[\JMS\Serializer\Annotation\SerializedName('Filter')] + #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\GetLibraryItemsFilter>|null')] + #[\JMS\Serializer\Annotation\SkipWhenNull] + public ?array $filter = null; + + /** + * $sort + * + * @var ?array<GetLibraryItemsSort> $sort + */ + #[\JMS\Serializer\Annotation\SerializedName('Sort')] + #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\GetLibraryItemsSort>|null')] + #[\JMS\Serializer\Annotation\SkipWhenNull] + public ?array $sort = null; + + /** + * $field + * + * @var ?array<GetLibraryItemsField> $field + */ + #[\JMS\Serializer\Annotation\SerializedName('Field')] + #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\GetLibraryItemsField>|null')] + #[\JMS\Serializer\Annotation\SkipWhenNull] + public ?array $field = null; + + /** + * @param string $key + * @param string $type + * @param string $title + * @param bool $active + * @param ?array<GetLibraryItemsFilter> $filter + * @param ?array<GetLibraryItemsSort> $sort + * @param ?array<GetLibraryItemsField> $field + */ + public function __construct(string $key, string $type, string $title, bool $active, ?array $filter = null, ?array $sort = null, ?array $field = null) + { + $this->key = $key; + $this->type = $type; + $this->title = $title; + $this->active = $active; + $this->filter = $filter; + $this->sort = $sort; + $this->field = $field; + } +} \ No newline at end of file diff --git a/src/Models/Operations/GetPinRequest.php b/src/Models/Operations/GetPinRequest.php index 1f36d9a..f581425 100644 --- a/src/Models/Operations/GetPinRequest.php +++ b/src/Models/Operations/GetPinRequest.php @@ -23,18 +23,6 @@ class GetPinRequest #[SpeakeasyMetadata('queryParam:style=form,explode=true,name=strong')] public ?bool $strong = null; - /** - * The unique identifier for the client application - * - * This is used to track the client application and its usage - * (UUID, serial number, or other number unique per device) - * - * - * @var ?string $clientID - */ - #[SpeakeasyMetadata('queryParam:style=form,explode=true,name=X-Plex-Client-Identifier')] - public ?string $clientID = null; - /** * * @var ?string $clientName @@ -65,16 +53,14 @@ class GetPinRequest /** * @param ?bool $strong - * @param ?string $clientID * @param ?string $clientName * @param ?string $deviceName * @param ?string $clientVersion * @param ?string $clientPlatform */ - public function __construct(?bool $strong = null, ?string $clientID = null, ?string $clientName = null, ?string $deviceName = null, ?string $clientVersion = null, ?string $clientPlatform = null) + public function __construct(?bool $strong = null, ?string $clientName = null, ?string $deviceName = null, ?string $clientVersion = null, ?string $clientPlatform = null) { $this->strong = $strong; - $this->clientID = $clientID; $this->clientName = $clientName; $this->deviceName = $deviceName; $this->clientVersion = $clientVersion; diff --git a/src/Models/Operations/GetPlaylistContentsQueryParamType.php b/src/Models/Operations/GetPlaylistContentsQueryParamType.php index e5a9c67..762a3a3 100644 --- a/src/Models/Operations/GetPlaylistContentsQueryParamType.php +++ b/src/Models/Operations/GetPlaylistContentsQueryParamType.php @@ -21,8 +21,8 @@ */ enum GetPlaylistContentsQueryParamType: int { - case One = 1; - case Two = 2; - case Three = 3; - case Four = 4; + case Movie = 1; + case Show = 2; + case Season = 3; + case Episode = 4; } diff --git a/src/Models/Operations/GetServerResourcesRequest.php b/src/Models/Operations/GetServerResourcesRequest.php index 7139cf7..aa14789 100644 --- a/src/Models/Operations/GetServerResourcesRequest.php +++ b/src/Models/Operations/GetServerResourcesRequest.php @@ -11,18 +11,6 @@ use LukeHagar\Plex_API\Utils\SpeakeasyMetadata; class GetServerResourcesRequest { - /** - * The unique identifier for the client application - * - * This is used to track the client application and its usage - * (UUID, serial number, or other number unique per device) - * - * - * @var ?string $clientID - */ - #[SpeakeasyMetadata('queryParam:style=form,explode=true,name=X-Plex-Client-Identifier')] - public ?string $clientID = null; - /** * Include Https entries in the results * @@ -51,14 +39,12 @@ class GetServerResourcesRequest public ?IncludeIPv6 $includeIPv6 = null; /** - * @param ?string $clientID * @param ?IncludeHttps $includeHttps * @param ?IncludeRelay $includeRelay * @param ?IncludeIPv6 $includeIPv6 */ - public function __construct(?string $clientID = null, ?IncludeHttps $includeHttps = null, ?IncludeRelay $includeRelay = null, ?IncludeIPv6 $includeIPv6 = null) + public function __construct(?IncludeHttps $includeHttps = null, ?IncludeRelay $includeRelay = null, ?IncludeIPv6 $includeIPv6 = null) { - $this->clientID = $clientID; $this->includeHttps = $includeHttps; $this->includeRelay = $includeRelay; $this->includeIPv6 = $includeIPv6; diff --git a/src/Models/Operations/GetTokenByPinIdRequest.php b/src/Models/Operations/GetTokenByPinIdRequest.php index 56b2054..7ad326c 100644 --- a/src/Models/Operations/GetTokenByPinIdRequest.php +++ b/src/Models/Operations/GetTokenByPinIdRequest.php @@ -19,25 +19,11 @@ class GetTokenByPinIdRequest #[SpeakeasyMetadata('pathParam:style=simple,explode=false,name=pinID')] public int $pinID; - /** - * The unique identifier for the client application - * - * This is used to track the client application and its usage - * (UUID, serial number, or other number unique per device) - * - * - * @var ?string $clientID - */ - #[SpeakeasyMetadata('queryParam:style=form,explode=true,name=X-Plex-Client-Identifier')] - public ?string $clientID = null; - /** * @param int $pinID - * @param ?string $clientID */ - public function __construct(int $pinID, ?string $clientID = null) + public function __construct(int $pinID) { $this->pinID = $pinID; - $this->clientID = $clientID; } } \ No newline at end of file diff --git a/src/Models/Operations/GetTokenDetailsUserPlexAccount.php b/src/Models/Operations/GetTokenDetailsUserPlexAccount.php index d36df85..3e71433 100644 --- a/src/Models/Operations/GetTokenDetailsUserPlexAccount.php +++ b/src/Models/Operations/GetTokenDetailsUserPlexAccount.php @@ -166,7 +166,7 @@ class GetTokenDetailsUserPlexAccount public int $id; /** - * Unix epoch datetime + * Unix epoch datetime in seconds * * @var int $joinedAt */ @@ -233,7 +233,7 @@ class GetTokenDetailsUserPlexAccount public bool $protected; /** - * Unix epoch datetime + * Unix epoch datetime in seconds * * @var int $rememberExpiresAt */ diff --git a/src/Models/Operations/GetTopWatchedContentQueryParamType.php b/src/Models/Operations/GetTopWatchedContentQueryParamType.php index 33dea9b..363a3f7 100644 --- a/src/Models/Operations/GetTopWatchedContentQueryParamType.php +++ b/src/Models/Operations/GetTopWatchedContentQueryParamType.php @@ -21,8 +21,8 @@ */ enum GetTopWatchedContentQueryParamType: int { - case One = 1; - case Two = 2; - case Three = 3; - case Four = 4; + case Movie = 1; + case Show = 2; + case Season = 3; + case Episode = 4; } diff --git a/src/Models/Operations/IncludeGuids.php b/src/Models/Operations/IncludeGuids.php index e32fec6..acecb9e 100644 --- a/src/Models/Operations/IncludeGuids.php +++ b/src/Models/Operations/IncludeGuids.php @@ -16,6 +16,6 @@ */ enum IncludeGuids: int { - case Zero = 0; - case One = 1; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/IncludeHttps.php b/src/Models/Operations/IncludeHttps.php index 1ca251e..762032d 100644 --- a/src/Models/Operations/IncludeHttps.php +++ b/src/Models/Operations/IncludeHttps.php @@ -12,6 +12,6 @@ /** Include Https entries in the results */ enum IncludeHttps: int { - case Zero = 0; - case One = 1; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/IncludeIPv6.php b/src/Models/Operations/IncludeIPv6.php index aa6040b..49530ac 100644 --- a/src/Models/Operations/IncludeIPv6.php +++ b/src/Models/Operations/IncludeIPv6.php @@ -12,6 +12,6 @@ /** Include IPv6 entries in the results */ enum IncludeIPv6: int { - case Zero = 0; - case One = 1; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/IncludeMeta.php b/src/Models/Operations/IncludeMeta.php index 2a828a8..541f1a3 100644 --- a/src/Models/Operations/IncludeMeta.php +++ b/src/Models/Operations/IncludeMeta.php @@ -16,6 +16,6 @@ */ enum IncludeMeta: int { - case Zero = 0; - case One = 1; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/IncludeRelay.php b/src/Models/Operations/IncludeRelay.php index c0033be..8cf40a3 100644 --- a/src/Models/Operations/IncludeRelay.php +++ b/src/Models/Operations/IncludeRelay.php @@ -17,6 +17,6 @@ */ enum IncludeRelay: int { - case Zero = 0; - case One = 1; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/Location.php b/src/Models/Operations/Location.php index 1151f25..8e8a026 100644 --- a/src/Models/Operations/Location.php +++ b/src/Models/Operations/Location.php @@ -13,25 +13,23 @@ class Location { /** * - * @var ?int $id + * @var int $id */ #[\JMS\Serializer\Annotation\SerializedName('id')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?int $id = null; + public int $id; /** * - * @var ?string $path + * @var string $path */ #[\JMS\Serializer\Annotation\SerializedName('path')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?string $path = null; + public string $path; /** - * @param ?int $id - * @param ?string $path + * @param int $id + * @param string $path */ - public function __construct(?int $id = null, ?string $path = null) + public function __construct(int $id, string $path) { $this->id = $id; $this->path = $path; diff --git a/src/Models/Operations/MediaGuid.php b/src/Models/Operations/MediaGuid.php new file mode 100644 index 0000000..4273e48 --- /dev/null +++ b/src/Models/Operations/MediaGuid.php @@ -0,0 +1,32 @@ +<?php + +/** + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +declare(strict_types=1); + +namespace LukeHagar\Plex_API\Models\Operations; + + +class MediaGuid +{ + /** + * Can be one of the following formats: + * + * imdb://tt13015952, tmdb://2434012, tvdb://7945991 + * + * + * @var string $id + */ + #[\JMS\Serializer\Annotation\SerializedName('id')] + public string $id; + + /** + * @param string $id + */ + public function __construct(string $id) + { + $this->id = $id; + } +} \ No newline at end of file diff --git a/src/Models/Operations/MediaReviewsVisibility.php b/src/Models/Operations/MediaReviewsVisibility.php index 5bd2c2e..dfcb5a7 100644 --- a/src/Models/Operations/MediaReviewsVisibility.php +++ b/src/Models/Operations/MediaReviewsVisibility.php @@ -9,8 +9,9 @@ namespace LukeHagar\Plex_API\Models\Operations; +/** Whether or not the account has media reviews visibility enabled */ enum MediaReviewsVisibility: int { - case Zero = 0; - case One = 1; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/Meta.php b/src/Models/Operations/Meta.php new file mode 100644 index 0000000..fe60c1d --- /dev/null +++ b/src/Models/Operations/Meta.php @@ -0,0 +1,48 @@ +<?php + +/** + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +declare(strict_types=1); + +namespace LukeHagar\Plex_API\Models\Operations; + + +/** + * Meta - The Meta object is only included in the response if the `includeMeta` parameter is set to `1`. + * + * + */ +class Meta +{ + /** + * $type + * + * @var ?array<GetLibraryItemsType> $type + */ + #[\JMS\Serializer\Annotation\SerializedName('Type')] + #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\GetLibraryItemsType>|null')] + #[\JMS\Serializer\Annotation\SkipWhenNull] + public ?array $type = null; + + /** + * $fieldType + * + * @var ?array<GetLibraryItemsFieldType> $fieldType + */ + #[\JMS\Serializer\Annotation\SerializedName('FieldType')] + #[\JMS\Serializer\Annotation\Type('array<\LukeHagar\Plex_API\Models\Operations\GetLibraryItemsFieldType>|null')] + #[\JMS\Serializer\Annotation\SkipWhenNull] + public ?array $fieldType = null; + + /** + * @param ?array<GetLibraryItemsType> $type + * @param ?array<GetLibraryItemsFieldType> $fieldType + */ + public function __construct(?array $type = null, ?array $fieldType = null) + { + $this->type = $type; + $this->fieldType = $fieldType; + } +} \ No newline at end of file diff --git a/src/Models/Operations/PostUsersSignInDataAutoSelectSubtitle.php b/src/Models/Operations/PostUsersSignInDataAutoSelectSubtitle.php index a7c48f2..f78d3e1 100644 --- a/src/Models/Operations/PostUsersSignInDataAutoSelectSubtitle.php +++ b/src/Models/Operations/PostUsersSignInDataAutoSelectSubtitle.php @@ -10,8 +10,8 @@ /** The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) */ -enum PostUsersSignInDataAutoSelectSubtitle: string +enum PostUsersSignInDataAutoSelectSubtitle: int { - case Zero = '0'; - case One = '1'; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/PostUsersSignInDataDefaultSubtitleAccessibility.php b/src/Models/Operations/PostUsersSignInDataDefaultSubtitleAccessibility.php index bc2a8f7..62e2097 100644 --- a/src/Models/Operations/PostUsersSignInDataDefaultSubtitleAccessibility.php +++ b/src/Models/Operations/PostUsersSignInDataDefaultSubtitleAccessibility.php @@ -9,9 +9,9 @@ namespace LukeHagar\Plex_API\Models\Operations; -/** The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) */ -enum PostUsersSignInDataDefaultSubtitleAccessibility: string +/** The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only show non-SDH subtitles) */ +enum PostUsersSignInDataDefaultSubtitleAccessibility: int { - case Zero = '0'; - case One = '1'; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/PostUsersSignInDataDefaultSubtitleForced.php b/src/Models/Operations/PostUsersSignInDataDefaultSubtitleForced.php index d83c59f..b9f5352 100644 --- a/src/Models/Operations/PostUsersSignInDataDefaultSubtitleForced.php +++ b/src/Models/Operations/PostUsersSignInDataDefaultSubtitleForced.php @@ -10,8 +10,8 @@ /** The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) */ -enum PostUsersSignInDataDefaultSubtitleForced: string +enum PostUsersSignInDataDefaultSubtitleForced: int { - case Zero = '0'; - case One = '1'; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/PostUsersSignInDataMediaReviewsVisibility.php b/src/Models/Operations/PostUsersSignInDataMediaReviewsVisibility.php index 6885c8d..dc8307e 100644 --- a/src/Models/Operations/PostUsersSignInDataMediaReviewsVisibility.php +++ b/src/Models/Operations/PostUsersSignInDataMediaReviewsVisibility.php @@ -9,8 +9,9 @@ namespace LukeHagar\Plex_API\Models\Operations; +/** Whether or not the account has media reviews visibility enabled */ enum PostUsersSignInDataMediaReviewsVisibility: int { - case Zero = 0; - case One = 1; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/PostUsersSignInDataRequest.php b/src/Models/Operations/PostUsersSignInDataRequest.php deleted file mode 100644 index de7dc30..0000000 --- a/src/Models/Operations/PostUsersSignInDataRequest.php +++ /dev/null @@ -1,43 +0,0 @@ -<?php - -/** - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ - -declare(strict_types=1); - -namespace LukeHagar\Plex_API\Models\Operations; - -use LukeHagar\Plex_API\Utils\SpeakeasyMetadata; -class PostUsersSignInDataRequest -{ - /** - * The unique identifier for the client application - * - * This is used to track the client application and its usage - * (UUID, serial number, or other number unique per device) - * - * - * @var ?string $clientID - */ - #[SpeakeasyMetadata('queryParam:style=form,explode=true,name=X-Plex-Client-Identifier')] - public ?string $clientID = null; - - /** - * Login credentials - * - * @var ?PostUsersSignInDataRequestBody $requestBody - */ - #[SpeakeasyMetadata('request:mediaType=application/x-www-form-urlencoded')] - public ?PostUsersSignInDataRequestBody $requestBody = null; - - /** - * @param ?string $clientID - * @param ?PostUsersSignInDataRequestBody $requestBody - */ - public function __construct(?string $clientID = null, ?PostUsersSignInDataRequestBody $requestBody = null) - { - $this->clientID = $clientID; - $this->requestBody = $requestBody; - } -} \ No newline at end of file diff --git a/src/Models/Operations/PostUsersSignInDataUserPlexAccount.php b/src/Models/Operations/PostUsersSignInDataUserPlexAccount.php index aa21beb..4c8eb1c 100644 --- a/src/Models/Operations/PostUsersSignInDataUserPlexAccount.php +++ b/src/Models/Operations/PostUsersSignInDataUserPlexAccount.php @@ -166,7 +166,7 @@ class PostUsersSignInDataUserPlexAccount public int $id; /** - * Unix epoch datetime + * Unix epoch datetime in seconds * * @var int $joinedAt */ @@ -233,7 +233,7 @@ class PostUsersSignInDataUserPlexAccount public bool $protected; /** - * Unix epoch datetime + * Unix epoch datetime in seconds * * @var int $rememberExpiresAt */ diff --git a/src/Models/Operations/PostUsersSignInDataUserProfile.php b/src/Models/Operations/PostUsersSignInDataUserProfile.php index 36f1b7c..4464932 100644 --- a/src/Models/Operations/PostUsersSignInDataUserProfile.php +++ b/src/Models/Operations/PostUsersSignInDataUserProfile.php @@ -14,11 +14,10 @@ class PostUsersSignInDataUserProfile /** * If the account has automatically select audio and subtitle tracks enabled * - * @var ?bool $autoSelectAudio + * @var bool $autoSelectAudio */ #[\JMS\Serializer\Annotation\SerializedName('autoSelectAudio')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?bool $autoSelectAudio = null; + public bool $autoSelectAudio; /** * The preferred audio language for the account @@ -37,72 +36,64 @@ class PostUsersSignInDataUserProfile public ?string $defaultSubtitleLanguage; /** - * The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) * - * @var ?PostUsersSignInDataAutoSelectSubtitle $autoSelectSubtitle + * @var PostUsersSignInDataAutoSelectSubtitle $autoSelectSubtitle */ #[\JMS\Serializer\Annotation\SerializedName('autoSelectSubtitle')] - #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\PostUsersSignInDataAutoSelectSubtitle|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?PostUsersSignInDataAutoSelectSubtitle $autoSelectSubtitle = null; + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\PostUsersSignInDataAutoSelectSubtitle')] + public PostUsersSignInDataAutoSelectSubtitle $autoSelectSubtitle; /** - * The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) * - * @var ?PostUsersSignInDataDefaultSubtitleAccessibility $defaultSubtitleAccessibility + * @var PostUsersSignInDataDefaultSubtitleAccessibility $defaultSubtitleAccessibility */ #[\JMS\Serializer\Annotation\SerializedName('defaultSubtitleAccessibility')] - #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\PostUsersSignInDataDefaultSubtitleAccessibility|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?PostUsersSignInDataDefaultSubtitleAccessibility $defaultSubtitleAccessibility = null; + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\PostUsersSignInDataDefaultSubtitleAccessibility')] + public PostUsersSignInDataDefaultSubtitleAccessibility $defaultSubtitleAccessibility; /** - * The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) * - * @var ?PostUsersSignInDataDefaultSubtitleForced $defaultSubtitleForced + * @var PostUsersSignInDataDefaultSubtitleForced $defaultSubtitleForced */ #[\JMS\Serializer\Annotation\SerializedName('defaultSubtitleForced')] - #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\PostUsersSignInDataDefaultSubtitleForced|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?PostUsersSignInDataDefaultSubtitleForced $defaultSubtitleForced = null; + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\PostUsersSignInDataDefaultSubtitleForced')] + public PostUsersSignInDataDefaultSubtitleForced $defaultSubtitleForced; /** * - * @var ?PostUsersSignInDataWatchedIndicator $watchedIndicator + * @var PostUsersSignInDataWatchedIndicator $watchedIndicator */ #[\JMS\Serializer\Annotation\SerializedName('watchedIndicator')] - #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\PostUsersSignInDataWatchedIndicator|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?PostUsersSignInDataWatchedIndicator $watchedIndicator = null; + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\PostUsersSignInDataWatchedIndicator')] + public PostUsersSignInDataWatchedIndicator $watchedIndicator; /** * - * @var ?PostUsersSignInDataMediaReviewsVisibility $mediaReviewsVisibility + * @var PostUsersSignInDataMediaReviewsVisibility $mediaReviewsVisibility */ #[\JMS\Serializer\Annotation\SerializedName('mediaReviewsVisibility')] - #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\PostUsersSignInDataMediaReviewsVisibility|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?PostUsersSignInDataMediaReviewsVisibility $mediaReviewsVisibility = null; + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\PostUsersSignInDataMediaReviewsVisibility')] + public PostUsersSignInDataMediaReviewsVisibility $mediaReviewsVisibility; /** - * @param ?bool $autoSelectAudio + * @param bool $autoSelectAudio + * @param PostUsersSignInDataAutoSelectSubtitle $autoSelectSubtitle + * @param PostUsersSignInDataDefaultSubtitleAccessibility $defaultSubtitleAccessibility + * @param PostUsersSignInDataDefaultSubtitleForced $defaultSubtitleForced + * @param PostUsersSignInDataWatchedIndicator $watchedIndicator + * @param PostUsersSignInDataMediaReviewsVisibility $mediaReviewsVisibility * @param ?string $defaultAudioLanguage * @param ?string $defaultSubtitleLanguage - * @param ?PostUsersSignInDataAutoSelectSubtitle $autoSelectSubtitle - * @param ?PostUsersSignInDataDefaultSubtitleAccessibility $defaultSubtitleAccessibility - * @param ?PostUsersSignInDataDefaultSubtitleForced $defaultSubtitleForced - * @param ?PostUsersSignInDataWatchedIndicator $watchedIndicator - * @param ?PostUsersSignInDataMediaReviewsVisibility $mediaReviewsVisibility */ - public function __construct(?bool $autoSelectAudio = null, ?string $defaultAudioLanguage = null, ?string $defaultSubtitleLanguage = null, ?PostUsersSignInDataAutoSelectSubtitle $autoSelectSubtitle = null, ?PostUsersSignInDataDefaultSubtitleAccessibility $defaultSubtitleAccessibility = null, ?PostUsersSignInDataDefaultSubtitleForced $defaultSubtitleForced = null, ?PostUsersSignInDataWatchedIndicator $watchedIndicator = null, ?PostUsersSignInDataMediaReviewsVisibility $mediaReviewsVisibility = null) + public function __construct(bool $autoSelectAudio, PostUsersSignInDataAutoSelectSubtitle $autoSelectSubtitle, PostUsersSignInDataDefaultSubtitleAccessibility $defaultSubtitleAccessibility, PostUsersSignInDataDefaultSubtitleForced $defaultSubtitleForced, PostUsersSignInDataWatchedIndicator $watchedIndicator, PostUsersSignInDataMediaReviewsVisibility $mediaReviewsVisibility, ?string $defaultAudioLanguage = null, ?string $defaultSubtitleLanguage = null) { $this->autoSelectAudio = $autoSelectAudio; - $this->defaultAudioLanguage = $defaultAudioLanguage; - $this->defaultSubtitleLanguage = $defaultSubtitleLanguage; $this->autoSelectSubtitle = $autoSelectSubtitle; $this->defaultSubtitleAccessibility = $defaultSubtitleAccessibility; $this->defaultSubtitleForced = $defaultSubtitleForced; $this->watchedIndicator = $watchedIndicator; $this->mediaReviewsVisibility = $mediaReviewsVisibility; + $this->defaultAudioLanguage = $defaultAudioLanguage; + $this->defaultSubtitleLanguage = $defaultSubtitleLanguage; } } \ No newline at end of file diff --git a/src/Models/Operations/PostUsersSignInDataWatchedIndicator.php b/src/Models/Operations/PostUsersSignInDataWatchedIndicator.php index aa0f579..e8511ec 100644 --- a/src/Models/Operations/PostUsersSignInDataWatchedIndicator.php +++ b/src/Models/Operations/PostUsersSignInDataWatchedIndicator.php @@ -9,8 +9,9 @@ namespace LukeHagar\Plex_API\Models\Operations; -enum PostUsersSignInDataWatchedIndicator: string +/** Whether or not media watched indicators are enabled (little orange dot on media) */ +enum PostUsersSignInDataWatchedIndicator: int { - case Zero = '0'; - case One = '1'; + case Disable = 0; + case Enable = 1; } diff --git a/src/Models/Operations/Protocol.php b/src/Models/Operations/Protocol.php new file mode 100644 index 0000000..58605c1 --- /dev/null +++ b/src/Models/Operations/Protocol.php @@ -0,0 +1,17 @@ +<?php + +/** + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +declare(strict_types=1); + +namespace LukeHagar\Plex_API\Models\Operations; + + +/** The protocol used for the connection (http, https, etc) */ +enum Protocol: string +{ + case Http = 'http'; + case Https = 'https'; +} diff --git a/src/Models/Operations/QueryParamType.php b/src/Models/Operations/QueryParamType.php index 5dad2f1..b40a0bb 100644 --- a/src/Models/Operations/QueryParamType.php +++ b/src/Models/Operations/QueryParamType.php @@ -21,8 +21,8 @@ */ enum QueryParamType: int { - case One = 1; - case Two = 2; - case Three = 3; - case Four = 4; + case Movie = 1; + case Show = 2; + case Season = 3; + case Episode = 4; } diff --git a/src/Models/Operations/Type.php b/src/Models/Operations/Type.php index 47a65b4..7fa1370 100644 --- a/src/Models/Operations/Type.php +++ b/src/Models/Operations/Type.php @@ -21,8 +21,8 @@ */ enum Type: int { - case One = 1; - case Two = 2; - case Three = 3; - case Four = 4; + case Movie = 1; + case Show = 2; + case Season = 3; + case Episode = 4; } diff --git a/src/Models/Operations/UploadPlaylistRequest.php b/src/Models/Operations/UploadPlaylistRequest.php index d848142..9c65702 100644 --- a/src/Models/Operations/UploadPlaylistRequest.php +++ b/src/Models/Operations/UploadPlaylistRequest.php @@ -39,13 +39,23 @@ class UploadPlaylistRequest #[SpeakeasyMetadata('queryParam:style=form,explode=true,name=force')] public QueryParamForce $force; + /** + * Possibly the section ID to upload the playlist to, we are not certain. + * + * @var int $sectionID + */ + #[SpeakeasyMetadata('queryParam:style=form,explode=true,name=sectionID')] + public int $sectionID; + /** * @param string $path * @param QueryParamForce $force + * @param int $sectionID */ - public function __construct(string $path, QueryParamForce $force) + public function __construct(string $path, QueryParamForce $force, int $sectionID) { $this->path = $path; $this->force = $force; + $this->sectionID = $sectionID; } } \ No newline at end of file diff --git a/src/Models/Operations/UserProfile.php b/src/Models/Operations/UserProfile.php index 10b10b9..c441314 100644 --- a/src/Models/Operations/UserProfile.php +++ b/src/Models/Operations/UserProfile.php @@ -14,11 +14,10 @@ class UserProfile /** * If the account has automatically select audio and subtitle tracks enabled * - * @var ?bool $autoSelectAudio + * @var bool $autoSelectAudio */ #[\JMS\Serializer\Annotation\SerializedName('autoSelectAudio')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?bool $autoSelectAudio = null; + public bool $autoSelectAudio; /** * The preferred audio language for the account @@ -37,72 +36,64 @@ class UserProfile public ?string $defaultSubtitleLanguage; /** - * The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled) * - * @var ?AutoSelectSubtitle $autoSelectSubtitle + * @var AutoSelectSubtitle $autoSelectSubtitle */ #[\JMS\Serializer\Annotation\SerializedName('autoSelectSubtitle')] - #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\AutoSelectSubtitle|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?AutoSelectSubtitle $autoSelectSubtitle = null; + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\AutoSelectSubtitle')] + public AutoSelectSubtitle $autoSelectSubtitle; /** - * The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles) * - * @var ?DefaultSubtitleAccessibility $defaultSubtitleAccessibility + * @var DefaultSubtitleAccessibility $defaultSubtitleAccessibility */ #[\JMS\Serializer\Annotation\SerializedName('defaultSubtitleAccessibility')] - #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\DefaultSubtitleAccessibility|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?DefaultSubtitleAccessibility $defaultSubtitleAccessibility = null; + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\DefaultSubtitleAccessibility')] + public DefaultSubtitleAccessibility $defaultSubtitleAccessibility; /** - * The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles) * - * @var ?DefaultSubtitleForced $defaultSubtitleForced + * @var DefaultSubtitleForced $defaultSubtitleForced */ #[\JMS\Serializer\Annotation\SerializedName('defaultSubtitleForced')] - #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\DefaultSubtitleForced|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?DefaultSubtitleForced $defaultSubtitleForced = null; + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\DefaultSubtitleForced')] + public DefaultSubtitleForced $defaultSubtitleForced; /** * - * @var ?WatchedIndicator $watchedIndicator + * @var WatchedIndicator $watchedIndicator */ #[\JMS\Serializer\Annotation\SerializedName('watchedIndicator')] - #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\WatchedIndicator|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?WatchedIndicator $watchedIndicator = null; + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\WatchedIndicator')] + public WatchedIndicator $watchedIndicator; /** * - * @var ?MediaReviewsVisibility $mediaReviewsVisibility + * @var MediaReviewsVisibility $mediaReviewsVisibility */ #[\JMS\Serializer\Annotation\SerializedName('mediaReviewsVisibility')] - #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\MediaReviewsVisibility|null')] - #[\JMS\Serializer\Annotation\SkipWhenNull] - public ?MediaReviewsVisibility $mediaReviewsVisibility = null; + #[\JMS\Serializer\Annotation\Type('\LukeHagar\Plex_API\Models\Operations\MediaReviewsVisibility')] + public MediaReviewsVisibility $mediaReviewsVisibility; /** - * @param ?bool $autoSelectAudio + * @param bool $autoSelectAudio + * @param AutoSelectSubtitle $autoSelectSubtitle + * @param DefaultSubtitleAccessibility $defaultSubtitleAccessibility + * @param DefaultSubtitleForced $defaultSubtitleForced + * @param WatchedIndicator $watchedIndicator + * @param MediaReviewsVisibility $mediaReviewsVisibility * @param ?string $defaultAudioLanguage * @param ?string $defaultSubtitleLanguage - * @param ?AutoSelectSubtitle $autoSelectSubtitle - * @param ?DefaultSubtitleAccessibility $defaultSubtitleAccessibility - * @param ?DefaultSubtitleForced $defaultSubtitleForced - * @param ?WatchedIndicator $watchedIndicator - * @param ?MediaReviewsVisibility $mediaReviewsVisibility */ - public function __construct(?bool $autoSelectAudio = null, ?string $defaultAudioLanguage = null, ?string $defaultSubtitleLanguage = null, ?AutoSelectSubtitle $autoSelectSubtitle = null, ?DefaultSubtitleAccessibility $defaultSubtitleAccessibility = null, ?DefaultSubtitleForced $defaultSubtitleForced = null, ?WatchedIndicator $watchedIndicator = null, ?MediaReviewsVisibility $mediaReviewsVisibility = null) + public function __construct(bool $autoSelectAudio, AutoSelectSubtitle $autoSelectSubtitle, DefaultSubtitleAccessibility $defaultSubtitleAccessibility, DefaultSubtitleForced $defaultSubtitleForced, WatchedIndicator $watchedIndicator, MediaReviewsVisibility $mediaReviewsVisibility, ?string $defaultAudioLanguage = null, ?string $defaultSubtitleLanguage = null) { $this->autoSelectAudio = $autoSelectAudio; - $this->defaultAudioLanguage = $defaultAudioLanguage; - $this->defaultSubtitleLanguage = $defaultSubtitleLanguage; $this->autoSelectSubtitle = $autoSelectSubtitle; $this->defaultSubtitleAccessibility = $defaultSubtitleAccessibility; $this->defaultSubtitleForced = $defaultSubtitleForced; $this->watchedIndicator = $watchedIndicator; $this->mediaReviewsVisibility = $mediaReviewsVisibility; + $this->defaultAudioLanguage = $defaultAudioLanguage; + $this->defaultSubtitleLanguage = $defaultSubtitleLanguage; } } \ No newline at end of file diff --git a/src/Models/Operations/WatchedIndicator.php b/src/Models/Operations/WatchedIndicator.php index 94f1a09..9dd5718 100644 --- a/src/Models/Operations/WatchedIndicator.php +++ b/src/Models/Operations/WatchedIndicator.php @@ -9,8 +9,9 @@ namespace LukeHagar\Plex_API\Models\Operations; -enum WatchedIndicator: string +/** Whether or not media watched indicators are enabled (little orange dot on media) */ +enum WatchedIndicator: int { - case Zero = '0'; - case One = '1'; + case Disable = 0; + case Enable = 1; } diff --git a/src/Playlists.php b/src/Playlists.php index 07ab31c..0ae982b 100644 --- a/src/Playlists.php +++ b/src/Playlists.php @@ -568,16 +568,19 @@ public function addPlaylistContents( * * @param string $path * @param Operations\QueryParamForce $force + * @param int $sectionID * @return Operations\UploadPlaylistResponse * @throws \LukeHagar\Plex_API\Models\Errors\SDKException */ public function uploadPlaylist( string $path, Operations\QueryParamForce $force, + int $sectionID, ): Operations\UploadPlaylistResponse { $request = new Operations\UploadPlaylistRequest( path: $path, force: $force, + sectionID: $sectionID, ); $baseUrl = Utils\Utils::templateUrl($this->sdkConfiguration->getServerUrl(), $this->sdkConfiguration->getServerDefaults()); $url = Utils\Utils::generateUrl($baseUrl, '/playlists/upload'); diff --git a/src/Plex.php b/src/Plex.php index 3fb5eee..a00ddf0 100644 --- a/src/Plex.php +++ b/src/Plex.php @@ -311,7 +311,6 @@ public function getHomeData( * * Get Plex server access tokens and server connections * - * @param ?string $clientID * @param ?Operations\IncludeHttps $includeHttps * @param ?Operations\IncludeRelay $includeRelay * @param ?Operations\IncludeIPv6 $includeIPv6 @@ -320,14 +319,12 @@ public function getHomeData( * @throws \LukeHagar\Plex_API\Models\Errors\SDKException */ public function getServerResources( - ?string $clientID = null, ?Operations\IncludeHttps $includeHttps = null, ?Operations\IncludeRelay $includeRelay = null, ?Operations\IncludeIPv6 $includeIPv6 = null, ?string $serverURL = null, ): Operations\GetServerResourcesResponse { $request = new Operations\GetServerResourcesRequest( - clientID: $clientID, includeHttps: $includeHttps, includeRelay: $includeRelay, includeIPv6: $includeIPv6, @@ -453,19 +450,16 @@ public function getPin( * Retrieve an Access Token from Plex.tv after the Pin has been authenticated * * @param int $pinID - * @param ?string $clientID * @param string $serverURL * @return Operations\GetTokenByPinIdResponse * @throws \LukeHagar\Plex_API\Models\Errors\SDKException */ public function getTokenByPinId( int $pinID, - ?string $clientID = null, ?string $serverURL = null, ): Operations\GetTokenByPinIdResponse { $request = new Operations\GetTokenByPinIdRequest( pinID: $pinID, - clientID: $clientID, ); $baseUrl = Utils\Utils::templateUrl(Plex::GET_TOKEN_BY_PIN_ID_SERVERS[0], [ ]); @@ -474,7 +468,6 @@ public function getTokenByPinId( } $url = Utils\Utils::generateUrl($baseUrl, '/pins/{pinID}', Operations\GetTokenByPinIdRequest::class, $request, $this->sdkConfiguration->globals); $options = ['http_errors' => false]; - $options = array_merge_recursive($options, Utils\Utils::getQueryParams(Operations\GetTokenByPinIdRequest::class, $request, $this->sdkConfiguration->globals)); $options['headers']['Accept'] = 'application/json'; $options['headers']['user-agent'] = $this->sdkConfiguration->userAgent; $httpRequest = new \GuzzleHttp\Psr7\Request('GET', $url); diff --git a/src/SDKConfiguration.php b/src/SDKConfiguration.php index 3e20138..e5170e9 100644 --- a/src/SDKConfiguration.php +++ b/src/SDKConfiguration.php @@ -36,11 +36,11 @@ class SDKConfiguration public string $openapiDocVersion = '0.0.3'; - public string $sdkVersion = '0.8.1'; + public string $sdkVersion = '0.9.0'; - public string $genVersion = '2.416.6'; + public string $genVersion = '2.421.3'; - public string $userAgent = 'speakeasy-sdk/php 0.8.1 2.416.6 0.0.3 lukehagar/plex-api'; + public string $userAgent = 'speakeasy-sdk/php 0.9.0 2.421.3 0.0.3 lukehagar/plex-api'; /** @var array<string, array<string, array<string, mixed>>> */ public ?array $globals = [ 'parameters' => [],