Compare commits

...

3 Commits

Author SHA1 Message Date
speakeasybot
c431cee288 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.484.1 2025-02-05 00:22:30 +00:00
speakeasybot
5195de1dca ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.476.1 2025-01-27 00:23:03 +00:00
speakeasybot
43dc47a5a0 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.476.1 2025-01-26 17:23:56 +00:00
76 changed files with 1379 additions and 161 deletions

File diff suppressed because one or more lines are too long

View File

@@ -13,7 +13,7 @@ generation:
oAuth2ClientCredentialsEnabled: true oAuth2ClientCredentialsEnabled: true
oAuth2PasswordEnabled: false oAuth2PasswordEnabled: false
csharp: csharp:
version: 0.13.1 version: 0.13.4
additionalDependencies: [] additionalDependencies: []
author: LukeHagar author: LukeHagar
clientServerStatusCodesAsErrors: true clientServerStatusCodesAsErrors: true

View File

@@ -1,4 +1,4 @@
speakeasyVersion: 1.476.1 speakeasyVersion: 1.484.1
sources: sources:
my-source: my-source:
sourceNamespace: my-source sourceNamespace: my-source
@@ -16,19 +16,19 @@ sources:
- main - main
plexapi: plexapi:
sourceNamespace: plexapi sourceNamespace: plexapi
sourceRevisionDigest: sha256:b146684d2d813daa8ba29e432a12334838753d0b20183beca8178a74ec4d895a sourceRevisionDigest: sha256:0b88c8bfc41def63e19e91fdd4d51bab07cb947cc3d39d2b44e8523a209cec10
sourceBlobDigest: sha256:58f51c4319fcda931d63950fd926e8650e20a2e1375e356bf3a930111e246a58 sourceBlobDigest: sha256:89d5b8427d4fb61b25751aebbaf71f9613958e9e91073fc084fed2c2ec62ce55
tags: tags:
- latest - latest
- speakeasy-sdk-regen-1737907338 - speakeasy-sdk-regen-1738714877
targets: targets:
plexcsharp: plexcsharp:
source: plexapi source: plexapi
sourceNamespace: plexapi sourceNamespace: plexapi
sourceRevisionDigest: sha256:b146684d2d813daa8ba29e432a12334838753d0b20183beca8178a74ec4d895a sourceRevisionDigest: sha256:0b88c8bfc41def63e19e91fdd4d51bab07cb947cc3d39d2b44e8523a209cec10
sourceBlobDigest: sha256:58f51c4319fcda931d63950fd926e8650e20a2e1375e356bf3a930111e246a58 sourceBlobDigest: sha256:89d5b8427d4fb61b25751aebbaf71f9613958e9e91073fc084fed2c2ec62ce55
codeSamplesNamespace: code-samples-csharp-plexcsharp codeSamplesNamespace: code-samples-csharp-plexcsharp
codeSamplesRevisionDigest: sha256:45fc86c4745bc4bfd3d4cb1ee0b42245fe5d4f639d826e41b0e12191a64a2c09 codeSamplesRevisionDigest: sha256:88936de014527ae45d25e2fb54ad227d5d6b173c4085c5b60daf42335a0b0305
workflow: workflow:
workflowVersion: 1.0.0 workflowVersion: 1.0.0
speakeasyVersion: latest speakeasyVersion: latest

View File

@@ -74,10 +74,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -95,10 +95,10 @@ namespace LukeHagar.PlexAPI.SDK
}; };
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -101,10 +101,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -73,10 +73,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -190,6 +190,26 @@ namespace LukeHagar.PlexAPI.SDK
/// </summary> /// </summary>
Task<GetSearchLibraryResponse> GetSearchLibraryAsync(int sectionKey, GetSearchLibraryQueryParamType type); Task<GetSearchLibraryResponse> GetSearchLibraryAsync(int sectionKey, GetSearchLibraryQueryParamType type);
/// <summary>
/// Get Genres of library media
///
/// <remarks>
/// Retrieves a list of all the genres that are found for the media in this library.<br/>
///
/// </remarks>
/// </summary>
Task<GetGenresLibraryResponse> GetGenresLibraryAsync(int sectionKey);
/// <summary>
/// Get Countries of library media
///
/// <remarks>
/// Retrieves a list of all the countries that are found for the media in this library.<br/>
///
/// </remarks>
/// </summary>
Task<GetCountriesLibraryResponse> GetCountriesLibraryAsync(int sectionKey);
/// <summary> /// <summary>
/// Search All Libraries /// Search All Libraries
/// ///
@@ -252,10 +272,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;
@@ -1069,6 +1089,214 @@ namespace LukeHagar.PlexAPI.SDK
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse); throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
} }
public async Task<GetGenresLibraryResponse> GetGenresLibraryAsync(int sectionKey)
{
var request = new GetGenresLibraryRequest()
{
SectionKey = sectionKey,
};
string baseUrl = this.SDKConfiguration.GetTemplatedServerUrl();
var urlString = URLBuilder.Build(baseUrl, "/library/sections/{sectionKey}/genre", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
if (_securitySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
}
var hookCtx = new HookContext("get-genres-library", null, _securitySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode == 404 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
{
var _httpResponse = await this.SDKConfiguration.Hooks.AfterErrorAsync(new AfterErrorContext(hookCtx), httpResponse, null);
if (_httpResponse != null)
{
httpResponse = _httpResponse;
}
}
}
catch (Exception error)
{
var _httpResponse = await this.SDKConfiguration.Hooks.AfterErrorAsync(new AfterErrorContext(hookCtx), null, error);
if (_httpResponse != null)
{
httpResponse = _httpResponse;
}
else
{
throw;
}
}
httpResponse = await this.SDKConfiguration.Hooks.AfterSuccessAsync(new AfterSuccessContext(hookCtx), httpResponse);
var contentType = httpResponse.Content.Headers.ContentType?.MediaType;
int responseStatusCode = (int)httpResponse.StatusCode;
if(responseStatusCode == 200)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetGenresLibraryResponseBody>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
var response = new GetGenresLibraryResponse()
{
StatusCode = responseStatusCode,
ContentType = contentType,
RawResponse = httpResponse
};
response.Object = obj;
return response;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
}
else if(responseStatusCode == 400)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetGenresLibraryBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetGenresLibraryUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
}
else if(responseStatusCode == 404 || responseStatusCode >= 400 && responseStatusCode < 500)
{
throw new Models.Errors.SDKException("API error occurred", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
}
else if(responseStatusCode >= 500 && responseStatusCode < 600)
{
throw new Models.Errors.SDKException("API error occurred", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
}
public async Task<GetCountriesLibraryResponse> GetCountriesLibraryAsync(int sectionKey)
{
var request = new GetCountriesLibraryRequest()
{
SectionKey = sectionKey,
};
string baseUrl = this.SDKConfiguration.GetTemplatedServerUrl();
var urlString = URLBuilder.Build(baseUrl, "/library/sections/{sectionKey}/country", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
if (_securitySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
}
var hookCtx = new HookContext("get-countries-library", null, _securitySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode == 404 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
{
var _httpResponse = await this.SDKConfiguration.Hooks.AfterErrorAsync(new AfterErrorContext(hookCtx), httpResponse, null);
if (_httpResponse != null)
{
httpResponse = _httpResponse;
}
}
}
catch (Exception error)
{
var _httpResponse = await this.SDKConfiguration.Hooks.AfterErrorAsync(new AfterErrorContext(hookCtx), null, error);
if (_httpResponse != null)
{
httpResponse = _httpResponse;
}
else
{
throw;
}
}
httpResponse = await this.SDKConfiguration.Hooks.AfterSuccessAsync(new AfterSuccessContext(hookCtx), httpResponse);
var contentType = httpResponse.Content.Headers.ContentType?.MediaType;
int responseStatusCode = (int)httpResponse.StatusCode;
if(responseStatusCode == 200)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetCountriesLibraryResponseBody>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
var response = new GetCountriesLibraryResponse()
{
StatusCode = responseStatusCode,
ContentType = contentType,
RawResponse = httpResponse
};
response.Object = obj;
return response;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
}
else if(responseStatusCode == 400)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetCountriesLibraryBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetCountriesLibraryUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
}
else if(responseStatusCode == 404 || responseStatusCode >= 400 && responseStatusCode < 500)
{
throw new Models.Errors.SDKException("API error occurred", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
}
else if(responseStatusCode >= 500 && responseStatusCode < 600)
{
throw new Models.Errors.SDKException("API error occurred", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
}
public async Task<GetSearchAllLibrariesResponse> GetSearchAllLibrariesAsync(GetSearchAllLibrariesRequest request) public async Task<GetSearchAllLibrariesResponse> GetSearchAllLibrariesAsync(GetSearchAllLibrariesRequest request)
{ {
string baseUrl = this.SDKConfiguration.GetTemplatedServerUrl(); string baseUrl = this.SDKConfiguration.GetTemplatedServerUrl();

View File

@@ -94,10 +94,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -3,7 +3,7 @@
<PropertyGroup> <PropertyGroup>
<IsPackable>true</IsPackable> <IsPackable>true</IsPackable>
<PackageId>LukeHagar.PlexAPI.SDK</PackageId> <PackageId>LukeHagar.PlexAPI.SDK</PackageId>
<Version>0.13.1</Version> <Version>0.13.4</Version>
<TargetFramework>net8.0</TargetFramework> <TargetFramework>net8.0</TargetFramework>
<Authors>LukeHagar</Authors> <Authors>LukeHagar</Authors>
<Copyright>Copyright (c) LukeHagar 2025</Copyright> <Copyright>Copyright (c) LukeHagar 2025</Copyright>

View File

@@ -90,10 +90,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -0,0 +1,34 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Errors
{
using LukeHagar.PlexAPI.SDK.Models.Errors;
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetCountriesLibraryBadRequest : Exception
{
[JsonProperty("errors")]
public List<GetCountriesLibraryErrors>? Errors { get; set; }
/// <summary>
/// Raw HTTP response; suitable for custom response parsing
/// </summary>
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
}

View File

@@ -0,0 +1,27 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Errors
{
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
public class GetCountriesLibraryErrors
{
[JsonProperty("code")]
public int? Code { get; set; }
[JsonProperty("message")]
public string? Message { get; set; }
[JsonProperty("status")]
public int? Status { get; set; }
}
}

View File

@@ -0,0 +1,27 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Errors
{
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
public class GetCountriesLibraryLibraryErrors
{
[JsonProperty("code")]
public int? Code { get; set; }
[JsonProperty("message")]
public string? Message { get; set; }
[JsonProperty("status")]
public int? Status { get; set; }
}
}

View File

@@ -0,0 +1,34 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Errors
{
using LukeHagar.PlexAPI.SDK.Models.Errors;
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetCountriesLibraryUnauthorized : Exception
{
[JsonProperty("errors")]
public List<GetCountriesLibraryLibraryErrors>? Errors { get; set; }
/// <summary>
/// Raw HTTP response; suitable for custom response parsing
/// </summary>
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
}

View File

@@ -0,0 +1,34 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Errors
{
using LukeHagar.PlexAPI.SDK.Models.Errors;
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetGenresLibraryBadRequest : Exception
{
[JsonProperty("errors")]
public List<GetGenresLibraryErrors>? Errors { get; set; }
/// <summary>
/// Raw HTTP response; suitable for custom response parsing
/// </summary>
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
}

View File

@@ -0,0 +1,27 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Errors
{
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
public class GetGenresLibraryErrors
{
[JsonProperty("code")]
public int? Code { get; set; }
[JsonProperty("message")]
public string? Message { get; set; }
[JsonProperty("status")]
public int? Status { get; set; }
}
}

View File

@@ -0,0 +1,27 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Errors
{
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
public class GetGenresLibraryLibraryErrors
{
[JsonProperty("code")]
public int? Code { get; set; }
[JsonProperty("message")]
public string? Message { get; set; }
[JsonProperty("status")]
public int? Status { get; set; }
}
}

View File

@@ -0,0 +1,34 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Errors
{
using LukeHagar.PlexAPI.SDK.Models.Errors;
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetGenresLibraryUnauthorized : Exception
{
[JsonProperty("errors")]
public List<GetGenresLibraryLibraryErrors>? Errors { get; set; }
/// <summary>
/// Raw HTTP response; suitable for custom response parsing
/// </summary>
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
}

View File

@@ -0,0 +1,27 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
public class GetCountriesLibraryDirectory
{
[JsonProperty("fastKey")]
public string FastKey { get; set; } = default!;
[JsonProperty("key")]
public string Key { get; set; } = default!;
[JsonProperty("title")]
public string Title { get; set; } = default!;
}
}

View File

@@ -0,0 +1,65 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
using LukeHagar.PlexAPI.SDK.Models.Requests;
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
using System.Collections.Generic;
public class GetCountriesLibraryMediaContainer
{
[JsonProperty("size")]
public double Size { get; set; } = default!;
[JsonProperty("offset")]
public int? Offset { get; set; }
[JsonProperty("totalSize")]
public int? TotalSize { get; set; }
[JsonProperty("identifier")]
public string Identifier { get; set; } = default!;
[JsonProperty("allowSync")]
public bool AllowSync { get; set; } = default!;
[JsonProperty("art")]
public string Art { get; set; } = default!;
[JsonProperty("content")]
public string Content { get; set; } = default!;
[JsonProperty("mediaTagPrefix")]
public string MediaTagPrefix { get; set; } = default!;
[JsonProperty("mediaTagVersion")]
public long MediaTagVersion { get; set; } = default!;
[JsonProperty("nocache")]
public bool Nocache { get; set; } = default!;
[JsonProperty("thumb")]
public string Thumb { get; set; } = default!;
[JsonProperty("title1")]
public string Title1 { get; set; } = default!;
[JsonProperty("title2")]
public string Title2 { get; set; } = default!;
[JsonProperty("viewGroup")]
public string ViewGroup { get; set; } = default!;
[JsonProperty("Directory")]
public List<GetCountriesLibraryDirectory>? Directory { get; set; }
}
}

View File

@@ -0,0 +1,28 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
using LukeHagar.PlexAPI.SDK.Utils;
public class GetCountriesLibraryRequest
{
/// <summary>
/// The unique key of the Plex library. <br/>
///
/// <remarks>
/// Note: This is unique in the context of the Plex server.<br/>
///
/// </remarks>
/// </summary>
[SpeakeasyMetadata("pathParam:style=simple,explode=false,name=sectionKey")]
public int SectionKey { get; set; } = default!;
}
}

View File

@@ -0,0 +1,40 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
using LukeHagar.PlexAPI.SDK.Models.Requests;
using LukeHagar.PlexAPI.SDK.Utils;
using System;
using System.Net.Http;
public class GetCountriesLibraryResponse
{
/// <summary>
/// HTTP response content type for this operation
/// </summary>
public string? ContentType { get; set; } = default!;
/// <summary>
/// HTTP response status code for this operation
/// </summary>
public int StatusCode { get; set; } = default!;
/// <summary>
/// Raw HTTP response; suitable for custom response parsing
/// </summary>
public HttpResponseMessage RawResponse { get; set; } = default!;
/// <summary>
/// Successful response containing media container data.
/// </summary>
public GetCountriesLibraryResponseBody? Object { get; set; }
}
}

View File

@@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
using LukeHagar.PlexAPI.SDK.Models.Requests;
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
/// <summary>
/// Successful response containing media container data.
/// </summary>
public class GetCountriesLibraryResponseBody
{
[JsonProperty("MediaContainer")]
public GetCountriesLibraryMediaContainer? MediaContainer { get; set; }
}
}

View File

@@ -0,0 +1,30 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
public class GetGenresLibraryDirectory
{
[JsonProperty("fastKey")]
public string FastKey { get; set; } = default!;
[JsonProperty("key")]
public string Key { get; set; } = default!;
[JsonProperty("title")]
public string Title { get; set; } = default!;
[JsonProperty("type")]
public string Type { get; set; } = default!;
}
}

View File

@@ -0,0 +1,65 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
using LukeHagar.PlexAPI.SDK.Models.Requests;
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
using System.Collections.Generic;
public class GetGenresLibraryMediaContainer
{
[JsonProperty("size")]
public double Size { get; set; } = default!;
[JsonProperty("offset")]
public int? Offset { get; set; }
[JsonProperty("totalSize")]
public int? TotalSize { get; set; }
[JsonProperty("identifier")]
public string Identifier { get; set; } = default!;
[JsonProperty("allowSync")]
public bool AllowSync { get; set; } = default!;
[JsonProperty("art")]
public string Art { get; set; } = default!;
[JsonProperty("content")]
public string Content { get; set; } = default!;
[JsonProperty("mediaTagPrefix")]
public string MediaTagPrefix { get; set; } = default!;
[JsonProperty("mediaTagVersion")]
public long MediaTagVersion { get; set; } = default!;
[JsonProperty("nocache")]
public bool Nocache { get; set; } = default!;
[JsonProperty("thumb")]
public string Thumb { get; set; } = default!;
[JsonProperty("title1")]
public string Title1 { get; set; } = default!;
[JsonProperty("title2")]
public string Title2 { get; set; } = default!;
[JsonProperty("viewGroup")]
public string ViewGroup { get; set; } = default!;
[JsonProperty("Directory")]
public List<GetGenresLibraryDirectory>? Directory { get; set; }
}
}

View File

@@ -0,0 +1,28 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
using LukeHagar.PlexAPI.SDK.Utils;
public class GetGenresLibraryRequest
{
/// <summary>
/// The unique key of the Plex library. <br/>
///
/// <remarks>
/// Note: This is unique in the context of the Plex server.<br/>
///
/// </remarks>
/// </summary>
[SpeakeasyMetadata("pathParam:style=simple,explode=false,name=sectionKey")]
public int SectionKey { get; set; } = default!;
}
}

View File

@@ -0,0 +1,40 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
using LukeHagar.PlexAPI.SDK.Models.Requests;
using LukeHagar.PlexAPI.SDK.Utils;
using System;
using System.Net.Http;
public class GetGenresLibraryResponse
{
/// <summary>
/// HTTP response content type for this operation
/// </summary>
public string? ContentType { get; set; } = default!;
/// <summary>
/// HTTP response status code for this operation
/// </summary>
public int StatusCode { get; set; } = default!;
/// <summary>
/// Raw HTTP response; suitable for custom response parsing
/// </summary>
public HttpResponseMessage RawResponse { get; set; } = default!;
/// <summary>
/// Successful response containing media container data.
/// </summary>
public GetGenresLibraryResponseBody? Object { get; set; }
}
}

View File

@@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
using LukeHagar.PlexAPI.SDK.Models.Requests;
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
/// <summary>
/// Successful response containing media container data.
/// </summary>
public class GetGenresLibraryResponseBody
{
[JsonProperty("MediaContainer")]
public GetGenresLibraryMediaContainer? MediaContainer { get; set; }
}
}

View File

@@ -106,14 +106,14 @@ namespace LukeHagar.PlexAPI.SDK.Models.Requests
public GetLibraryItemsEnableCreditsMarkerGeneration? EnableCreditsMarkerGeneration { get; set; } public GetLibraryItemsEnableCreditsMarkerGeneration? EnableCreditsMarkerGeneration { get; set; }
/// <summary> /// <summary>
/// Setting that indicates the episode ordering for the show<br/> /// Setting that indicates the episode ordering for the show.<br/>
/// ///
/// <remarks> /// <remarks>
/// None = Library default,<br/> /// None = Library default,<br/>
/// tmdbAiring = The Movie Database (Aired),<br/> /// tmdbAiring = The Movie Database (Aired),<br/>
/// tvdbAiring = TheTVDB (Aired),<br/> /// aired = TheTVDB (Aired),<br/>
/// tvdbDvd = TheTVDB (DVD),<br/> /// dvd = TheTVDB (DVD),<br/>
/// tvdbAbsolute = TheTVDB (Absolute)).<br/> /// absolute = TheTVDB (Absolute)).<br/>
/// ///
/// </remarks> /// </remarks>
/// </summary> /// </summary>

View File

@@ -14,14 +14,14 @@ namespace LukeHagar.PlexAPI.SDK.Models.Requests
using System; using System;
/// <summary> /// <summary>
/// Setting that indicates the episode ordering for the show<br/> /// Setting that indicates the episode ordering for the show.<br/>
/// ///
/// <remarks> /// <remarks>
/// None = Library default,<br/> /// None = Library default,<br/>
/// tmdbAiring = The Movie Database (Aired),<br/> /// tmdbAiring = The Movie Database (Aired),<br/>
/// tvdbAiring = TheTVDB (Aired),<br/> /// aired = TheTVDB (Aired),<br/>
/// tvdbDvd = TheTVDB (DVD),<br/> /// dvd = TheTVDB (DVD),<br/>
/// tvdbAbsolute = TheTVDB (Absolute)).<br/> /// absolute = TheTVDB (Absolute)).<br/>
/// ///
/// </remarks> /// </remarks>
/// </summary> /// </summary>
@@ -31,11 +31,11 @@ namespace LukeHagar.PlexAPI.SDK.Models.Requests
None, None,
[JsonProperty("tmdbAiring")] [JsonProperty("tmdbAiring")]
TmdbAiring, TmdbAiring,
[JsonProperty("tvdbAiring")] [JsonProperty("aired")]
TvdbAiring, TvdbAired,
[JsonProperty("tvdbDvd")] [JsonProperty("dvd")]
TvdbDvd, TvdbDvd,
[JsonProperty("tvdbAbsolute")] [JsonProperty("absolute")]
TvdbAbsolute, TvdbAbsolute,
} }

View File

@@ -106,14 +106,14 @@ namespace LukeHagar.PlexAPI.SDK.Models.Requests
public EnableCreditsMarkerGeneration? EnableCreditsMarkerGeneration { get; set; } public EnableCreditsMarkerGeneration? EnableCreditsMarkerGeneration { get; set; }
/// <summary> /// <summary>
/// Setting that indicates the episode ordering for the show<br/> /// Setting that indicates the episode ordering for the show.<br/>
/// ///
/// <remarks> /// <remarks>
/// None = Library default,<br/> /// None = Library default,<br/>
/// tmdbAiring = The Movie Database (Aired),<br/> /// tmdbAiring = The Movie Database (Aired),<br/>
/// tvdbAiring = TheTVDB (Aired),<br/> /// aired = TheTVDB (Aired),<br/>
/// tvdbDvd = TheTVDB (DVD),<br/> /// dvd = TheTVDB (DVD),<br/>
/// tvdbAbsolute = TheTVDB (Absolute)).<br/> /// absolute = TheTVDB (Absolute)).<br/>
/// ///
/// </remarks> /// </remarks>
/// </summary> /// </summary>

View File

@@ -106,14 +106,14 @@ namespace LukeHagar.PlexAPI.SDK.Models.Requests
public GetSearchAllLibrariesEnableCreditsMarkerGeneration? EnableCreditsMarkerGeneration { get; set; } public GetSearchAllLibrariesEnableCreditsMarkerGeneration? EnableCreditsMarkerGeneration { get; set; }
/// <summary> /// <summary>
/// Setting that indicates the episode ordering for the show<br/> /// Setting that indicates the episode ordering for the show.<br/>
/// ///
/// <remarks> /// <remarks>
/// None = Library default,<br/> /// None = Library default,<br/>
/// tmdbAiring = The Movie Database (Aired),<br/> /// tmdbAiring = The Movie Database (Aired),<br/>
/// tvdbAiring = TheTVDB (Aired),<br/> /// aired = TheTVDB (Aired),<br/>
/// tvdbDvd = TheTVDB (DVD),<br/> /// dvd = TheTVDB (DVD),<br/>
/// tvdbAbsolute = TheTVDB (Absolute)).<br/> /// absolute = TheTVDB (Absolute)).<br/>
/// ///
/// </remarks> /// </remarks>
/// </summary> /// </summary>

View File

@@ -14,14 +14,14 @@ namespace LukeHagar.PlexAPI.SDK.Models.Requests
using System; using System;
/// <summary> /// <summary>
/// Setting that indicates the episode ordering for the show<br/> /// Setting that indicates the episode ordering for the show.<br/>
/// ///
/// <remarks> /// <remarks>
/// None = Library default,<br/> /// None = Library default,<br/>
/// tmdbAiring = The Movie Database (Aired),<br/> /// tmdbAiring = The Movie Database (Aired),<br/>
/// tvdbAiring = TheTVDB (Aired),<br/> /// aired = TheTVDB (Aired),<br/>
/// tvdbDvd = TheTVDB (DVD),<br/> /// dvd = TheTVDB (DVD),<br/>
/// tvdbAbsolute = TheTVDB (Absolute)).<br/> /// absolute = TheTVDB (Absolute)).<br/>
/// ///
/// </remarks> /// </remarks>
/// </summary> /// </summary>
@@ -31,11 +31,11 @@ namespace LukeHagar.PlexAPI.SDK.Models.Requests
None, None,
[JsonProperty("tmdbAiring")] [JsonProperty("tmdbAiring")]
TmdbAiring, TmdbAiring,
[JsonProperty("tvdbAiring")] [JsonProperty("aired")]
TvdbAiring, TvdbAired,
[JsonProperty("tvdbDvd")] [JsonProperty("dvd")]
TvdbDvd, TvdbDvd,
[JsonProperty("tvdbAbsolute")] [JsonProperty("absolute")]
TvdbAbsolute, TvdbAbsolute,
} }

View File

@@ -14,14 +14,14 @@ namespace LukeHagar.PlexAPI.SDK.Models.Requests
using System; using System;
/// <summary> /// <summary>
/// Setting that indicates the episode ordering for the show<br/> /// Setting that indicates the episode ordering for the show.<br/>
/// ///
/// <remarks> /// <remarks>
/// None = Library default,<br/> /// None = Library default,<br/>
/// tmdbAiring = The Movie Database (Aired),<br/> /// tmdbAiring = The Movie Database (Aired),<br/>
/// tvdbAiring = TheTVDB (Aired),<br/> /// aired = TheTVDB (Aired),<br/>
/// tvdbDvd = TheTVDB (DVD),<br/> /// dvd = TheTVDB (DVD),<br/>
/// tvdbAbsolute = TheTVDB (Absolute)).<br/> /// absolute = TheTVDB (Absolute)).<br/>
/// ///
/// </remarks> /// </remarks>
/// </summary> /// </summary>
@@ -31,11 +31,11 @@ namespace LukeHagar.PlexAPI.SDK.Models.Requests
None, None,
[JsonProperty("tmdbAiring")] [JsonProperty("tmdbAiring")]
TmdbAiring, TmdbAiring,
[JsonProperty("tvdbAiring")] [JsonProperty("aired")]
TvdbAiring, TvdbAired,
[JsonProperty("tvdbDvd")] [JsonProperty("dvd")]
TvdbDvd, TvdbDvd,
[JsonProperty("tvdbAbsolute")] [JsonProperty("absolute")]
TvdbAbsolute, TvdbAbsolute,
} }

View File

@@ -146,10 +146,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -143,10 +143,10 @@ namespace LukeHagar.PlexAPI.SDK
}; };
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -326,10 +326,10 @@ namespace LukeHagar.PlexAPI.SDK
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private int _serverIndex = 0; private int _serverIndex = 0;
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;

View File

@@ -87,10 +87,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -126,10 +126,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -80,10 +80,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -71,10 +71,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -74,10 +74,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;
@@ -372,11 +372,11 @@ namespace LukeHagar.PlexAPI.SDK
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse); throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
} }
else if(responseStatusCode == 500 || responseStatusCode >= 500 && responseStatusCode < 600) else if(responseStatusCode >= 400 && responseStatusCode < 500)
{ {
throw new Models.Errors.SDKException("API error occurred", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse); throw new Models.Errors.SDKException("API error occurred", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
} }
else if(responseStatusCode >= 400 && responseStatusCode < 500) else if(responseStatusCode == 500 || responseStatusCode >= 500 && responseStatusCode < 600)
{ {
throw new Models.Errors.SDKException("API error occurred", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse); throw new Models.Errors.SDKException("API error occurred", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
} }

View File

@@ -62,10 +62,10 @@ namespace LukeHagar.PlexAPI.SDK
{ {
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -59,10 +59,10 @@ namespace LukeHagar.PlexAPI.SDK
}; };
public SDKConfig SDKConfiguration { get; private set; } public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp"; private const string _language = "csharp";
private const string _sdkVersion = "0.13.1"; private const string _sdkVersion = "0.13.4";
private const string _sdkGenVersion = "2.495.1"; private const string _sdkGenVersion = "2.503.2";
private const string _openapiDocVersion = "0.0.3"; private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.13.1 2.495.1 0.0.3 LukeHagar.PlexAPI.SDK"; private const string _userAgent = "speakeasy-sdk/csharp 0.13.4 2.503.2 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = ""; private string _serverUrl = "";
private ISpeakeasyHttpClient _client; private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource; private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;

View File

@@ -84,6 +84,8 @@ var res = await sdk.Server.GetServerCapabilitiesAsync();
* [GetLibraryItems](docs/sdks/library/README.md#getlibraryitems) - Get Library Items * [GetLibraryItems](docs/sdks/library/README.md#getlibraryitems) - Get Library Items
* [GetRefreshLibraryMetadata](docs/sdks/library/README.md#getrefreshlibrarymetadata) - Refresh Metadata Of The Library * [GetRefreshLibraryMetadata](docs/sdks/library/README.md#getrefreshlibrarymetadata) - Refresh Metadata Of The Library
* [GetSearchLibrary](docs/sdks/library/README.md#getsearchlibrary) - Search Library * [GetSearchLibrary](docs/sdks/library/README.md#getsearchlibrary) - Search Library
* [GetGenresLibrary](docs/sdks/library/README.md#getgenreslibrary) - Get Genres of library media
* [GetCountriesLibrary](docs/sdks/library/README.md#getcountrieslibrary) - Get Countries of library media
* [GetSearchAllLibraries](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries * [GetSearchAllLibraries](docs/sdks/library/README.md#getsearchalllibraries) - Search All Libraries
* [GetMetaDataByRatingKey](docs/sdks/library/README.md#getmetadatabyratingkey) - Get Metadata by RatingKey * [GetMetaDataByRatingKey](docs/sdks/library/README.md#getmetadatabyratingkey) - Get Metadata by RatingKey
* [GetMetadataChildren](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children * [GetMetadataChildren](docs/sdks/library/README.md#getmetadatachildren) - Get Items Children

View File

@@ -435,3 +435,33 @@ Based on:
- [csharp v0.13.1] . - [csharp v0.13.1] .
### Releases ### Releases
- [NuGet v0.13.1] https://www.nuget.org/packages/LukeHagar.PlexAPI.SDK/0.13.1 - . - [NuGet v0.13.1] https://www.nuget.org/packages/LukeHagar.PlexAPI.SDK/0.13.1 - .
## 2025-01-26 17:22:27
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.476.1 (2.495.1) https://github.com/speakeasy-api/speakeasy
### Generated
- [csharp v0.13.2] .
### Releases
- [NuGet v0.13.2] https://www.nuget.org/packages/LukeHagar.PlexAPI.SDK/0.13.2 - .
## 2025-01-27 00:21:38
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.476.1 (2.495.1) https://github.com/speakeasy-api/speakeasy
### Generated
- [csharp v0.13.3] .
### Releases
- [NuGet v0.13.3] https://www.nuget.org/packages/LukeHagar.PlexAPI.SDK/0.13.3 - .
## 2025-02-05 00:21:02
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.484.1 (2.503.2) https://github.com/speakeasy-api/speakeasy
### Generated
- [csharp v0.13.4] .
### Releases
- [NuGet v0.13.4] https://www.nuget.org/packages/LukeHagar.PlexAPI.SDK/0.13.4 - .

View File

@@ -322,9 +322,6 @@ actions:
ContentDirectoryID = 470161, ContentDirectoryID = 470161,
SectionID = 2, SectionID = 2,
Type = LukeHagar.PlexAPI.SDK.Models.Requests.Type.TvShow, Type = LukeHagar.PlexAPI.SDK.Models.Requests.Type.TvShow,
IncludeMeta = IncludeMeta.Enable,
XPlexContainerStart = 0,
XPlexContainerSize = 50,
}; };
var res = await sdk.Hubs.GetRecentlyAddedAsync(req); var res = await sdk.Hubs.GetRecentlyAddedAsync(req);
@@ -557,9 +554,6 @@ actions:
}, },
SectionID = 2, SectionID = 2,
Type = QueryParamType.TvShow, Type = QueryParamType.TvShow,
IncludeMeta = QueryParamIncludeMeta.Enable,
XPlexContainerStart = 0,
XPlexContainerSize = 50,
}; };
var res = await sdk.Library.GetRecentlyAddedLibraryAsync(req); var res = await sdk.Library.GetRecentlyAddedLibraryAsync(req);
@@ -584,8 +578,6 @@ actions:
SearchTypes = new List<SearchTypes>() { SearchTypes = new List<SearchTypes>() {
SearchTypes.People, SearchTypes.People,
}, },
IncludeCollections = QueryParamIncludeCollections.Enable,
IncludeExternalMedia = QueryParamIncludeExternalMedia.Enable,
}; };
var res = await sdk.Library.GetSearchAllLibrariesAsync(req); var res = await sdk.Library.GetSearchAllLibrariesAsync(req);
@@ -619,8 +611,6 @@ actions:
GetWatchListRequest req = new GetWatchListRequest() { GetWatchListRequest req = new GetWatchListRequest() {
Filter = Filter.Available, Filter = Filter.Available,
XPlexContainerStart = 0,
XPlexContainerSize = 50,
XPlexToken = "CV5xoxjTpFKUzBTShsaf", XPlexToken = "CV5xoxjTpFKUzBTShsaf",
}; };
@@ -658,6 +648,34 @@ actions:
includeDetails: IncludeDetails.Zero includeDetails: IncludeDetails.Zero
); );
// handle response
- target: $["paths"]["/library/sections/{sectionKey}/country"]["get"]
update:
x-codeSamples:
- lang: csharp
label: library
source: |-
using LukeHagar.PlexAPI.SDK;
using LukeHagar.PlexAPI.SDK.Models.Components;
var sdk = new PlexAPI(accessToken: "<YOUR_API_KEY_HERE>");
var res = await sdk.Library.GetCountriesLibraryAsync(sectionKey: 9518);
// handle response
- target: $["paths"]["/library/sections/{sectionKey}/genre"]["get"]
update:
x-codeSamples:
- lang: csharp
label: library
source: |-
using LukeHagar.PlexAPI.SDK;
using LukeHagar.PlexAPI.SDK.Models.Components;
var sdk = new PlexAPI(accessToken: "<YOUR_API_KEY_HERE>");
var res = await sdk.Library.GetGenresLibraryAsync(sectionKey: 9518);
// handle response // handle response
- target: $["paths"]["/library/sections/{sectionKey}/refresh"]["get"] - target: $["paths"]["/library/sections/{sectionKey}/refresh"]["get"]
update: update:
@@ -709,12 +727,8 @@ actions:
GetLibraryItemsRequest req = new GetLibraryItemsRequest() { GetLibraryItemsRequest req = new GetLibraryItemsRequest() {
Tag = Tag.Edition, Tag = Tag.Edition,
IncludeGuids = IncludeGuids.Enable,
Type = GetLibraryItemsQueryParamType.TvShow, Type = GetLibraryItemsQueryParamType.TvShow,
SectionKey = 9518, SectionKey = 9518,
IncludeMeta = GetLibraryItemsQueryParamIncludeMeta.Enable,
XPlexContainerStart = 0,
XPlexContainerSize = 50,
}; };
var res = await sdk.Library.GetLibraryItemsAsync(req); var res = await sdk.Library.GetLibraryItemsAsync(req);

View File

@@ -0,0 +1,11 @@
# GetCountriesLibraryBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Fields
| Field | Type | Required | Description |
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `Errors` | List<[GetCountriesLibraryErrors](../../Models/Errors/GetCountriesLibraryErrors.md)> | :heavy_minus_sign: | N/A |
| `RawResponse` | [HttpResponseMessage](https://learn.microsoft.com/en-us/dotnet/api/system.net.http.httpresponsemessage?view=net-5.0) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,10 @@
# GetCountriesLibraryErrors
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
| `Code` | *int* | :heavy_minus_sign: | N/A | 1000 |
| `Message` | *string* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
| `Status` | *int* | :heavy_minus_sign: | N/A | 400 |

View File

@@ -0,0 +1,10 @@
# GetCountriesLibraryLibraryErrors
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
| `Code` | *int* | :heavy_minus_sign: | N/A | 1001 |
| `Message` | *string* | :heavy_minus_sign: | N/A | User could not be authenticated |
| `Status` | *int* | :heavy_minus_sign: | N/A | 401 |

View File

@@ -0,0 +1,11 @@
# GetCountriesLibraryUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Fields
| Field | Type | Required | Description |
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `Errors` | List<[GetCountriesLibraryLibraryErrors](../../Models/Errors/GetCountriesLibraryLibraryErrors.md)> | :heavy_minus_sign: | N/A |
| `RawResponse` | [HttpResponseMessage](https://learn.microsoft.com/en-us/dotnet/api/system.net.http.httpresponsemessage?view=net-5.0) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,11 @@
# GetGenresLibraryBadRequest
Bad Request - A parameter was not specified, or was specified incorrectly.
## Fields
| Field | Type | Required | Description |
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `Errors` | List<[GetGenresLibraryErrors](../../Models/Errors/GetGenresLibraryErrors.md)> | :heavy_minus_sign: | N/A |
| `RawResponse` | [HttpResponseMessage](https://learn.microsoft.com/en-us/dotnet/api/system.net.http.httpresponsemessage?view=net-5.0) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,10 @@
# GetGenresLibraryErrors
## Fields
| Field | Type | Required | Description | Example |
| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- |
| `Code` | *int* | :heavy_minus_sign: | N/A | 1000 |
| `Message` | *string* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing |
| `Status` | *int* | :heavy_minus_sign: | N/A | 400 |

View File

@@ -0,0 +1,10 @@
# GetGenresLibraryLibraryErrors
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- |
| `Code` | *int* | :heavy_minus_sign: | N/A | 1001 |
| `Message` | *string* | :heavy_minus_sign: | N/A | User could not be authenticated |
| `Status` | *int* | :heavy_minus_sign: | N/A | 401 |

View File

@@ -0,0 +1,11 @@
# GetGenresLibraryUnauthorized
Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
## Fields
| Field | Type | Required | Description |
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `Errors` | List<[GetGenresLibraryLibraryErrors](../../Models/Errors/GetGenresLibraryLibraryErrors.md)> | :heavy_minus_sign: | N/A |
| `RawResponse` | [HttpResponseMessage](https://learn.microsoft.com/en-us/dotnet/api/system.net.http.httpresponsemessage?view=net-5.0) | :heavy_minus_sign: | Raw HTTP response; suitable for custom response parsing |

View File

@@ -0,0 +1,10 @@
# GetCountriesLibraryDirectory
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- |
| `FastKey` | *string* | :heavy_check_mark: | N/A | /library/sections/2/all?country=15491 |
| `Key` | *string* | :heavy_check_mark: | N/A | 15491 |
| `Title` | *string* | :heavy_check_mark: | N/A | Japan |

View File

@@ -0,0 +1,22 @@
# GetCountriesLibraryMediaContainer
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
| `Size` | *double* | :heavy_check_mark: | N/A | 50 |
| `Offset` | *int* | :heavy_minus_sign: | N/A | |
| `TotalSize` | *int* | :heavy_minus_sign: | N/A | |
| `Identifier` | *string* | :heavy_check_mark: | N/A | com.plexapp.plugins.library |
| `AllowSync` | *bool* | :heavy_check_mark: | N/A | false |
| `Art` | *string* | :heavy_check_mark: | N/A | /:/resources/show-fanart.jpg |
| `Content` | *string* | :heavy_check_mark: | N/A | secondary |
| `MediaTagPrefix` | *string* | :heavy_check_mark: | N/A | /system/bundle/media/flags/ |
| `MediaTagVersion` | *long* | :heavy_check_mark: | N/A | 1734362201 |
| `Nocache` | *bool* | :heavy_check_mark: | N/A | true |
| `Thumb` | *string* | :heavy_check_mark: | N/A | /:/resources/show.png |
| `Title1` | *string* | :heavy_check_mark: | N/A | TV Series |
| `Title2` | *string* | :heavy_check_mark: | N/A | By Country |
| `ViewGroup` | *string* | :heavy_check_mark: | N/A | secondary |
| `Directory` | List<[GetCountriesLibraryDirectory](../../Models/Requests/GetCountriesLibraryDirectory.md)> | :heavy_minus_sign: | N/A | |

View File

@@ -0,0 +1,8 @@
# GetCountriesLibraryRequest
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `SectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |

View File

@@ -0,0 +1,11 @@
# GetCountriesLibraryResponse
## Fields
| Field | Type | Required | Description |
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `ContentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
| `StatusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation |
| `RawResponse` | [HttpResponseMessage](https://learn.microsoft.com/en-us/dotnet/api/system.net.http.httpresponsemessage?view=net-5.0) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `Object` | [GetCountriesLibraryResponseBody](../../Models/Requests/GetCountriesLibraryResponseBody.md) | :heavy_minus_sign: | Successful response containing media container data. |

View File

@@ -0,0 +1,10 @@
# GetCountriesLibraryResponseBody
Successful response containing media container data.
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `MediaContainer` | [GetCountriesLibraryMediaContainer](../../Models/Requests/GetCountriesLibraryMediaContainer.md) | :heavy_minus_sign: | N/A |

View File

@@ -0,0 +1,11 @@
# GetGenresLibraryDirectory
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- |
| `FastKey` | *string* | :heavy_check_mark: | N/A | /library/sections/10/all?genre=89 |
| `Key` | *string* | :heavy_check_mark: | N/A | 89 |
| `Title` | *string* | :heavy_check_mark: | N/A | Action |
| `Type` | *string* | :heavy_check_mark: | N/A | genre |

View File

@@ -0,0 +1,22 @@
# GetGenresLibraryMediaContainer
## Fields
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
| `Size` | *double* | :heavy_check_mark: | N/A | 50 |
| `Offset` | *int* | :heavy_minus_sign: | N/A | |
| `TotalSize` | *int* | :heavy_minus_sign: | N/A | |
| `Identifier` | *string* | :heavy_check_mark: | N/A | com.plexapp.plugins.library |
| `AllowSync` | *bool* | :heavy_check_mark: | N/A | false |
| `Art` | *string* | :heavy_check_mark: | N/A | /:/resources/show-fanart.jpg |
| `Content` | *string* | :heavy_check_mark: | N/A | secondary |
| `MediaTagPrefix` | *string* | :heavy_check_mark: | N/A | /system/bundle/media/flags/ |
| `MediaTagVersion` | *long* | :heavy_check_mark: | N/A | 1734362201 |
| `Nocache` | *bool* | :heavy_check_mark: | N/A | true |
| `Thumb` | *string* | :heavy_check_mark: | N/A | /:/resources/show.png |
| `Title1` | *string* | :heavy_check_mark: | N/A | TV Shows (Reality) |
| `Title2` | *string* | :heavy_check_mark: | N/A | By Genre |
| `ViewGroup` | *string* | :heavy_check_mark: | N/A | secondary |
| `Directory` | List<[GetGenresLibraryDirectory](../../Models/Requests/GetGenresLibraryDirectory.md)> | :heavy_minus_sign: | N/A | |

View File

@@ -0,0 +1,8 @@
# GetGenresLibraryRequest
## Fields
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `SectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |

View File

@@ -0,0 +1,11 @@
# GetGenresLibraryResponse
## Fields
| Field | Type | Required | Description |
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `ContentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
| `StatusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation |
| `RawResponse` | [HttpResponseMessage](https://learn.microsoft.com/en-us/dotnet/api/system.net.http.httpresponsemessage?view=net-5.0) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
| `Object` | [GetGenresLibraryResponseBody](../../Models/Requests/GetGenresLibraryResponseBody.md) | :heavy_minus_sign: | Successful response containing media container data. |

View File

@@ -0,0 +1,10 @@
# GetGenresLibraryResponseBody
Successful response containing media container data.
## Fields
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- |
| `MediaContainer` | [GetGenresLibraryMediaContainer](../../Models/Requests/GetGenresLibraryMediaContainer.md) | :heavy_minus_sign: | N/A |

View File

@@ -26,7 +26,7 @@
| `FlattenSeasons` | [GetLibraryItemsFlattenSeasons](../../Models/Requests/GetLibraryItemsFlattenSeasons.md) | :heavy_minus_sign: | Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show). | 1 | | `FlattenSeasons` | [GetLibraryItemsFlattenSeasons](../../Models/Requests/GetLibraryItemsFlattenSeasons.md) | :heavy_minus_sign: | Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show). | 1 |
| `EpisodeSort` | [GetLibraryItemsEpisodeSort](../../Models/Requests/GetLibraryItemsEpisodeSort.md) | :heavy_minus_sign: | Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first). | 0 | | `EpisodeSort` | [GetLibraryItemsEpisodeSort](../../Models/Requests/GetLibraryItemsEpisodeSort.md) | :heavy_minus_sign: | Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first). | 0 |
| `EnableCreditsMarkerGeneration` | [GetLibraryItemsEnableCreditsMarkerGeneration](../../Models/Requests/GetLibraryItemsEnableCreditsMarkerGeneration.md) | :heavy_minus_sign: | Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled). | -1 | | `EnableCreditsMarkerGeneration` | [GetLibraryItemsEnableCreditsMarkerGeneration](../../Models/Requests/GetLibraryItemsEnableCreditsMarkerGeneration.md) | :heavy_minus_sign: | Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled). | -1 |
| `ShowOrdering` | [GetLibraryItemsShowOrdering](../../Models/Requests/GetLibraryItemsShowOrdering.md) | :heavy_minus_sign: | Setting that indicates the episode ordering for the show<br/>None = Library default,<br/>tmdbAiring = The Movie Database (Aired),<br/>tvdbAiring = TheTVDB (Aired),<br/>tvdbDvd = TheTVDB (DVD),<br/>tvdbAbsolute = TheTVDB (Absolute)).<br/> | tvdbDvd | | `ShowOrdering` | [GetLibraryItemsShowOrdering](../../Models/Requests/GetLibraryItemsShowOrdering.md) | :heavy_minus_sign: | Setting that indicates the episode ordering for the show.<br/>None = Library default,<br/>tmdbAiring = The Movie Database (Aired),<br/>aired = TheTVDB (Aired),<br/>dvd = TheTVDB (DVD),<br/>absolute = TheTVDB (Absolute)).<br/> | absolute |
| `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/thumb/1703239236 | | `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/thumb/1703239236 |
| `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/art/1703239236 | | `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/art/1703239236 |
| `Banner` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/banner/1703239236 | | `Banner` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/banner/1703239236 |

View File

@@ -1,11 +1,11 @@
# GetLibraryItemsShowOrdering # GetLibraryItemsShowOrdering
Setting that indicates the episode ordering for the show Setting that indicates the episode ordering for the show.
None = Library default, None = Library default,
tmdbAiring = The Movie Database (Aired), tmdbAiring = The Movie Database (Aired),
tvdbAiring = TheTVDB (Aired), aired = TheTVDB (Aired),
tvdbDvd = TheTVDB (DVD), dvd = TheTVDB (DVD),
tvdbAbsolute = TheTVDB (Absolute)). absolute = TheTVDB (Absolute)).
@@ -15,6 +15,6 @@ tvdbAbsolute = TheTVDB (Absolute)).
| -------------- | -------------- | | -------------- | -------------- |
| `None` | None | | `None` | None |
| `TmdbAiring` | tmdbAiring | | `TmdbAiring` | tmdbAiring |
| `TvdbAiring` | tvdbAiring | | `TvdbAired` | aired |
| `TvdbDvd` | tvdbDvd | | `TvdbDvd` | dvd |
| `TvdbAbsolute` | tvdbAbsolute | | `TvdbAbsolute` | absolute |

View File

@@ -9,6 +9,6 @@
| `Offset` | *int* | :heavy_minus_sign: | N/A | | | `Offset` | *int* | :heavy_minus_sign: | N/A | |
| `TotalSize` | *int* | :heavy_minus_sign: | N/A | | | `TotalSize` | *int* | :heavy_minus_sign: | N/A | |
| `Identifier` | *string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library | | `Identifier` | *string* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library |
| `AllowSync` | *bool* | :heavy_minus_sign: | N/A | | | `AllowSync` | *bool* | :heavy_minus_sign: | N/A | false |
| `Meta` | [Meta](../../Models/Requests/Meta.md) | :heavy_minus_sign: | The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.<br/> | | | `Meta` | [Meta](../../Models/Requests/Meta.md) | :heavy_minus_sign: | The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.<br/> | |
| `Metadata` | List<[GetRecentlyAddedMetadata](../../Models/Requests/GetRecentlyAddedMetadata.md)> | :heavy_minus_sign: | N/A | | | `Metadata` | List<[GetRecentlyAddedMetadata](../../Models/Requests/GetRecentlyAddedMetadata.md)> | :heavy_minus_sign: | N/A | |

View File

@@ -26,7 +26,7 @@
| `FlattenSeasons` | [FlattenSeasons](../../Models/Requests/FlattenSeasons.md) | :heavy_minus_sign: | Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show). | 1 | | `FlattenSeasons` | [FlattenSeasons](../../Models/Requests/FlattenSeasons.md) | :heavy_minus_sign: | Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show). | 1 |
| `EpisodeSort` | [EpisodeSort](../../Models/Requests/EpisodeSort.md) | :heavy_minus_sign: | Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first). | 0 | | `EpisodeSort` | [EpisodeSort](../../Models/Requests/EpisodeSort.md) | :heavy_minus_sign: | Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first). | 0 |
| `EnableCreditsMarkerGeneration` | [EnableCreditsMarkerGeneration](../../Models/Requests/EnableCreditsMarkerGeneration.md) | :heavy_minus_sign: | Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled). | -1 | | `EnableCreditsMarkerGeneration` | [EnableCreditsMarkerGeneration](../../Models/Requests/EnableCreditsMarkerGeneration.md) | :heavy_minus_sign: | Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled). | -1 |
| `ShowOrdering` | [ShowOrdering](../../Models/Requests/ShowOrdering.md) | :heavy_minus_sign: | Setting that indicates the episode ordering for the show<br/>None = Library default,<br/>tmdbAiring = The Movie Database (Aired),<br/>tvdbAiring = TheTVDB (Aired),<br/>tvdbDvd = TheTVDB (DVD),<br/>tvdbAbsolute = TheTVDB (Absolute)).<br/> | tvdbDvd | | `ShowOrdering` | [ShowOrdering](../../Models/Requests/ShowOrdering.md) | :heavy_minus_sign: | Setting that indicates the episode ordering for the show.<br/>None = Library default,<br/>tmdbAiring = The Movie Database (Aired),<br/>aired = TheTVDB (Aired),<br/>dvd = TheTVDB (DVD),<br/>absolute = TheTVDB (Absolute)).<br/> | absolute |
| `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/thumb/1703239236 | | `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/thumb/1703239236 |
| `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/art/1703239236 | | `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/art/1703239236 |
| `Banner` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/banner/1703239236 | | `Banner` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/banner/1703239236 |

View File

@@ -26,7 +26,7 @@
| `FlattenSeasons` | [GetSearchAllLibrariesFlattenSeasons](../../Models/Requests/GetSearchAllLibrariesFlattenSeasons.md) | :heavy_minus_sign: | Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show). | 1 | | `FlattenSeasons` | [GetSearchAllLibrariesFlattenSeasons](../../Models/Requests/GetSearchAllLibrariesFlattenSeasons.md) | :heavy_minus_sign: | Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show). | 1 |
| `EpisodeSort` | [GetSearchAllLibrariesEpisodeSort](../../Models/Requests/GetSearchAllLibrariesEpisodeSort.md) | :heavy_minus_sign: | Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first). | 0 | | `EpisodeSort` | [GetSearchAllLibrariesEpisodeSort](../../Models/Requests/GetSearchAllLibrariesEpisodeSort.md) | :heavy_minus_sign: | Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first). | 0 |
| `EnableCreditsMarkerGeneration` | [GetSearchAllLibrariesEnableCreditsMarkerGeneration](../../Models/Requests/GetSearchAllLibrariesEnableCreditsMarkerGeneration.md) | :heavy_minus_sign: | Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled). | -1 | | `EnableCreditsMarkerGeneration` | [GetSearchAllLibrariesEnableCreditsMarkerGeneration](../../Models/Requests/GetSearchAllLibrariesEnableCreditsMarkerGeneration.md) | :heavy_minus_sign: | Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled). | -1 |
| `ShowOrdering` | [GetSearchAllLibrariesShowOrdering](../../Models/Requests/GetSearchAllLibrariesShowOrdering.md) | :heavy_minus_sign: | Setting that indicates the episode ordering for the show<br/>None = Library default,<br/>tmdbAiring = The Movie Database (Aired),<br/>tvdbAiring = TheTVDB (Aired),<br/>tvdbDvd = TheTVDB (DVD),<br/>tvdbAbsolute = TheTVDB (Absolute)).<br/> | tvdbDvd | | `ShowOrdering` | [GetSearchAllLibrariesShowOrdering](../../Models/Requests/GetSearchAllLibrariesShowOrdering.md) | :heavy_minus_sign: | Setting that indicates the episode ordering for the show.<br/>None = Library default,<br/>tmdbAiring = The Movie Database (Aired),<br/>aired = TheTVDB (Aired),<br/>dvd = TheTVDB (DVD),<br/>absolute = TheTVDB (Absolute)).<br/> | absolute |
| `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/thumb/1703239236 | | `Thumb` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/thumb/1703239236 |
| `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/art/1703239236 | | `Art` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/art/1703239236 |
| `Banner` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/banner/1703239236 | | `Banner` | *string* | :heavy_minus_sign: | N/A | /library/metadata/58683/banner/1703239236 |

View File

@@ -1,11 +1,11 @@
# GetSearchAllLibrariesShowOrdering # GetSearchAllLibrariesShowOrdering
Setting that indicates the episode ordering for the show Setting that indicates the episode ordering for the show.
None = Library default, None = Library default,
tmdbAiring = The Movie Database (Aired), tmdbAiring = The Movie Database (Aired),
tvdbAiring = TheTVDB (Aired), aired = TheTVDB (Aired),
tvdbDvd = TheTVDB (DVD), dvd = TheTVDB (DVD),
tvdbAbsolute = TheTVDB (Absolute)). absolute = TheTVDB (Absolute)).
@@ -15,6 +15,6 @@ tvdbAbsolute = TheTVDB (Absolute)).
| -------------- | -------------- | | -------------- | -------------- |
| `None` | None | | `None` | None |
| `TmdbAiring` | tmdbAiring | | `TmdbAiring` | tmdbAiring |
| `TvdbAiring` | tvdbAiring | | `TvdbAired` | aired |
| `TvdbDvd` | tvdbDvd | | `TvdbDvd` | dvd |
| `TvdbAbsolute` | tvdbAbsolute | | `TvdbAbsolute` | absolute |

View File

@@ -1,11 +1,11 @@
# ShowOrdering # ShowOrdering
Setting that indicates the episode ordering for the show Setting that indicates the episode ordering for the show.
None = Library default, None = Library default,
tmdbAiring = The Movie Database (Aired), tmdbAiring = The Movie Database (Aired),
tvdbAiring = TheTVDB (Aired), aired = TheTVDB (Aired),
tvdbDvd = TheTVDB (DVD), dvd = TheTVDB (DVD),
tvdbAbsolute = TheTVDB (Absolute)). absolute = TheTVDB (Absolute)).
@@ -15,6 +15,6 @@ tvdbAbsolute = TheTVDB (Absolute)).
| -------------- | -------------- | | -------------- | -------------- |
| `None` | None | | `None` | None |
| `TmdbAiring` | tmdbAiring | | `TmdbAiring` | tmdbAiring |
| `TvdbAiring` | tvdbAiring | | `TvdbAired` | aired |
| `TvdbDvd` | tvdbDvd | | `TvdbDvd` | dvd |
| `TvdbAbsolute` | tvdbAbsolute | | `TvdbAbsolute` | absolute |

View File

@@ -70,9 +70,6 @@ GetRecentlyAddedRequest req = new GetRecentlyAddedRequest() {
ContentDirectoryID = 470161, ContentDirectoryID = 470161,
SectionID = 2, SectionID = 2,
Type = LukeHagar.PlexAPI.SDK.Models.Requests.Type.TvShow, Type = LukeHagar.PlexAPI.SDK.Models.Requests.Type.TvShow,
IncludeMeta = IncludeMeta.Enable,
XPlexContainerStart = 0,
XPlexContainerSize = 50,
}; };
var res = await sdk.Hubs.GetRecentlyAddedAsync(req); var res = await sdk.Hubs.GetRecentlyAddedAsync(req);

View File

@@ -16,6 +16,8 @@ API Calls interacting with Plex Media Server Libraries
* [GetLibraryItems](#getlibraryitems) - Get Library Items * [GetLibraryItems](#getlibraryitems) - Get Library Items
* [GetRefreshLibraryMetadata](#getrefreshlibrarymetadata) - Refresh Metadata Of The Library * [GetRefreshLibraryMetadata](#getrefreshlibrarymetadata) - Refresh Metadata Of The Library
* [GetSearchLibrary](#getsearchlibrary) - Search Library * [GetSearchLibrary](#getsearchlibrary) - Search Library
* [GetGenresLibrary](#getgenreslibrary) - Get Genres of library media
* [GetCountriesLibrary](#getcountrieslibrary) - Get Countries of library media
* [GetSearchAllLibraries](#getsearchalllibraries) - Search All Libraries * [GetSearchAllLibraries](#getsearchalllibraries) - Search All Libraries
* [GetMetaDataByRatingKey](#getmetadatabyratingkey) - Get Metadata by RatingKey * [GetMetaDataByRatingKey](#getmetadatabyratingkey) - Get Metadata by RatingKey
* [GetMetadataChildren](#getmetadatachildren) - Get Items Children * [GetMetadataChildren](#getmetadatachildren) - Get Items Children
@@ -94,9 +96,6 @@ GetRecentlyAddedLibraryRequest req = new GetRecentlyAddedLibraryRequest() {
}, },
SectionID = 2, SectionID = 2,
Type = QueryParamType.TvShow, Type = QueryParamType.TvShow,
IncludeMeta = QueryParamIncludeMeta.Enable,
XPlexContainerStart = 0,
XPlexContainerSize = 50,
}; };
var res = await sdk.Library.GetRecentlyAddedLibraryAsync(req); var res = await sdk.Library.GetRecentlyAddedLibraryAsync(req);
@@ -307,12 +306,8 @@ var sdk = new PlexAPI(accessToken: "<YOUR_API_KEY_HERE>");
GetLibraryItemsRequest req = new GetLibraryItemsRequest() { GetLibraryItemsRequest req = new GetLibraryItemsRequest() {
Tag = Tag.Edition, Tag = Tag.Edition,
IncludeGuids = IncludeGuids.Enable,
Type = GetLibraryItemsQueryParamType.TvShow, Type = GetLibraryItemsQueryParamType.TvShow,
SectionKey = 9518, SectionKey = 9518,
IncludeMeta = GetLibraryItemsQueryParamIncludeMeta.Enable,
XPlexContainerStart = 0,
XPlexContainerSize = 50,
}; };
var res = await sdk.Library.GetLibraryItemsAsync(req); var res = await sdk.Library.GetLibraryItemsAsync(req);
@@ -437,6 +432,78 @@ var res = await sdk.Library.GetSearchLibraryAsync(
| LukeHagar.PlexAPI.SDK.Models.Errors.GetSearchLibraryUnauthorized | 401 | application/json | | LukeHagar.PlexAPI.SDK.Models.Errors.GetSearchLibraryUnauthorized | 401 | application/json |
| LukeHagar.PlexAPI.SDK.Models.Errors.SDKException | 4XX, 5XX | \*/\* | | LukeHagar.PlexAPI.SDK.Models.Errors.SDKException | 4XX, 5XX | \*/\* |
## GetGenresLibrary
Retrieves a list of all the genres that are found for the media in this library.
### Example Usage
```csharp
using LukeHagar.PlexAPI.SDK;
using LukeHagar.PlexAPI.SDK.Models.Components;
var sdk = new PlexAPI(accessToken: "<YOUR_API_KEY_HERE>");
var res = await sdk.Library.GetGenresLibraryAsync(sectionKey: 9518);
// handle response
```
### Parameters
| Parameter | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `SectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
### Response
**[GetGenresLibraryResponse](../../Models/Requests/GetGenresLibraryResponse.md)**
### Errors
| Error Type | Status Code | Content Type |
| ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- |
| LukeHagar.PlexAPI.SDK.Models.Errors.GetGenresLibraryBadRequest | 400 | application/json |
| LukeHagar.PlexAPI.SDK.Models.Errors.GetGenresLibraryUnauthorized | 401 | application/json |
| LukeHagar.PlexAPI.SDK.Models.Errors.SDKException | 4XX, 5XX | \*/\* |
## GetCountriesLibrary
Retrieves a list of all the countries that are found for the media in this library.
### Example Usage
```csharp
using LukeHagar.PlexAPI.SDK;
using LukeHagar.PlexAPI.SDK.Models.Components;
var sdk = new PlexAPI(accessToken: "<YOUR_API_KEY_HERE>");
var res = await sdk.Library.GetCountriesLibraryAsync(sectionKey: 9518);
// handle response
```
### Parameters
| Parameter | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `SectionKey` | *int* | :heavy_check_mark: | The unique key of the Plex library. <br/>Note: This is unique in the context of the Plex server.<br/> | 9518 |
### Response
**[GetCountriesLibraryResponse](../../Models/Requests/GetCountriesLibraryResponse.md)**
### Errors
| Error Type | Status Code | Content Type |
| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
| LukeHagar.PlexAPI.SDK.Models.Errors.GetCountriesLibraryBadRequest | 400 | application/json |
| LukeHagar.PlexAPI.SDK.Models.Errors.GetCountriesLibraryUnauthorized | 401 | application/json |
| LukeHagar.PlexAPI.SDK.Models.Errors.SDKException | 4XX, 5XX | \*/\* |
## GetSearchAllLibraries ## GetSearchAllLibraries
Search the provided query across all library sections, or a single section, and return matches as hubs, split up by type. Search the provided query across all library sections, or a single section, and return matches as hubs, split up by type.
@@ -458,8 +525,6 @@ GetSearchAllLibrariesRequest req = new GetSearchAllLibrariesRequest() {
SearchTypes = new List<SearchTypes>() { SearchTypes = new List<SearchTypes>() {
SearchTypes.People, SearchTypes.People,
}, },
IncludeCollections = QueryParamIncludeCollections.Enable,
IncludeExternalMedia = QueryParamIncludeExternalMedia.Enable,
}; };
var res = await sdk.Library.GetSearchAllLibrariesAsync(req); var res = await sdk.Library.GetSearchAllLibrariesAsync(req);

View File

@@ -25,8 +25,6 @@ var sdk = new PlexAPI(accessToken: "<YOUR_API_KEY_HERE>");
GetWatchListRequest req = new GetWatchListRequest() { GetWatchListRequest req = new GetWatchListRequest() {
Filter = Filter.Available, Filter = Filter.Available,
XPlexContainerStart = 0,
XPlexContainerSize = 50,
XPlexToken = "CV5xoxjTpFKUzBTShsaf", XPlexToken = "CV5xoxjTpFKUzBTShsaf",
}; };