Compare commits

..

9 Commits

Author SHA1 Message Date
speakeasybot
8563e8fef2 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.615.2 2025-09-15 00:26:45 +00:00
speakeasybot
1f5d4ff03a ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.598.3 2025-08-07 00:28:41 +00:00
speakeasybot
d970db3b6f ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.598.0 2025-08-06 00:28:40 +00:00
speakeasybot
4197184f92 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.557.0 2025-06-09 00:28:07 +00:00
speakeasybot
bc02ecef34 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.555.2 2025-06-04 00:26:20 +00:00
speakeasybot
55b5c2b3dd ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.542.1 2025-05-05 00:26:49 +00:00
speakeasybot
67a53e72d5 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.541.2 2025-05-01 00:28:06 +00:00
speakeasybot
9ccab7b22d ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.529.1 2025-04-19 00:24:30 +00:00
speakeasybot
eb2f6e54a2 ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.529.1 2025-04-14 00:26:56 +00:00
602 changed files with 18001 additions and 8176 deletions

5
.gitignore vendored
View File

@@ -1,3 +1,8 @@
.env
.env.local
.DS_Store
**/.speakeasy/temp/
**/.speakeasy/logs/
obj/
bin/
debug/

File diff suppressed because one or more lines are too long

View File

@@ -4,6 +4,7 @@ generation:
maintainOpenAPIOrder: true
usageSnippets:
optionalPropertyRendering: withExample
sdkInitStyle: constructor
useClassNamesForArrayFields: true
fixes:
nameResolutionDec2023: true
@@ -11,13 +12,20 @@ generation:
parameterOrderingFeb2024: true
requestResponseComponentNamesFeb2024: true
securityFeb2025: false
sharedErrorComponentsApr2025: false
auth:
oAuth2ClientCredentialsEnabled: true
oAuth2PasswordEnabled: false
hoistGlobalSecurity: true
tests:
generateTests: true
generateNewTests: false
skipResponseBodyAssertions: false
csharp:
version: 0.14.5
version: 0.17.0
additionalDependencies: []
author: LukeHagar
baseErrorName: PlexAPIError
clientServerStatusCodesAsErrors: true
defaultErrorName: SDKException
disableNamespacePascalCasingApr2024: true
@@ -25,6 +33,7 @@ csharp:
enableSourceLink: true
flattenGlobalSecurity: true
flatteningOrder: ""
httpClientPrefix: Speakeasy
imports:
option: openapi
paths:

View File

@@ -1,4 +1,4 @@
speakeasyVersion: 1.529.1
speakeasyVersion: 1.615.2
sources:
my-source:
sourceNamespace: my-source
@@ -16,19 +16,19 @@ sources:
- main
plexapi:
sourceNamespace: plexapi
sourceRevisionDigest: sha256:ea508e3da23b283f47aeb4384d6b3ab374a27bdffb8d8d8376cedbad3ad77a06
sourceBlobDigest: sha256:c210adbd02b0213b9e6f95ffc27f60ec38f8f9040137d55ccf2b650d92ab0ff5
sourceRevisionDigest: sha256:5125adfea1b0daea399c6ecf755e32795de6b4131465ae6a1f32ad73b3bc7787
sourceBlobDigest: sha256:95cea18b6e5f7d76d35db0aba5bcb59e72cf204451a2b09a99be0e3e9ec1f4c0
tags:
- latest
- speakeasy-sdk-regen-1743899088
- speakeasy-sdk-regen-1757895932
targets:
plexcsharp:
source: plexapi
sourceNamespace: plexapi
sourceRevisionDigest: sha256:ea508e3da23b283f47aeb4384d6b3ab374a27bdffb8d8d8376cedbad3ad77a06
sourceBlobDigest: sha256:c210adbd02b0213b9e6f95ffc27f60ec38f8f9040137d55ccf2b650d92ab0ff5
sourceRevisionDigest: sha256:5125adfea1b0daea399c6ecf755e32795de6b4131465ae6a1f32ad73b3bc7787
sourceBlobDigest: sha256:95cea18b6e5f7d76d35db0aba5bcb59e72cf204451a2b09a99be0e3e9ec1f4c0
codeSamplesNamespace: code-samples-csharp-plexcsharp
codeSamplesRevisionDigest: sha256:6e5180b8d4bad642901a272cb9ecb38cadf5c427bfefc6c4feaff9659756bb40
codeSamplesRevisionDigest: sha256:41c049f80e89195d5537bfbc2aa652942aeb669534f6c7d22e2172361fd708aa
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest

View File

@@ -74,19 +74,12 @@ namespace LukeHagar.PlexAPI.SDK
{
public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp";
private const string _sdkVersion = "0.14.5";
private const string _sdkGenVersion = "2.566.5";
private const string _sdkVersion = "0.17.0";
private const string _sdkGenVersion = "2.698.4";
private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.14.5 2.566.5 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = "";
private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;
public Activities(ISpeakeasyHttpClient client, Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? securitySource, string serverUrl, SDKConfig config)
public Activities(SDKConfig config)
{
_client = client;
_securitySource = securitySource;
_serverUrl = serverUrl;
SDKConfiguration = config;
}
@@ -97,21 +90,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = baseUrl + "/activities";
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "getServerActivities", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "getServerActivities", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -144,7 +137,17 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetServerActivitiesResponseBody>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetServerActivitiesResponseBody obj;
try
{
obj = ResponseBodyDeserializer.DeserializeNotNull<GetServerActivitiesResponseBody>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetServerActivitiesResponseBody.", httpResponse, httpResponseBody, ex);
}
var response = new GetServerActivitiesResponse()
{
StatusCode = responseStatusCode,
@@ -155,40 +158,60 @@ namespace LukeHagar.PlexAPI.SDK
return response;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 400)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetServerActivitiesBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetServerActivitiesBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetServerActivitiesBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetServerActivitiesBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetServerActivitiesBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetServerActivitiesUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetServerActivitiesUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetServerActivitiesUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetServerActivitiesUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetServerActivitiesUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<CancelServerActivitiesResponse> CancelServerActivitiesAsync(string activityUUID)
@@ -201,21 +224,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/activities/{activityUUID}", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Delete, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "cancelServerActivities", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "cancelServerActivities", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -257,34 +280,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<CancelServerActivitiesBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
CancelServerActivitiesBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<CancelServerActivitiesBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into CancelServerActivitiesBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new CancelServerActivitiesBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<CancelServerActivitiesUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
CancelServerActivitiesUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<CancelServerActivitiesUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into CancelServerActivitiesUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new CancelServerActivitiesUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
}
}

View File

@@ -95,19 +95,12 @@ namespace LukeHagar.PlexAPI.SDK
};
public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp";
private const string _sdkVersion = "0.14.5";
private const string _sdkGenVersion = "2.566.5";
private const string _sdkVersion = "0.17.0";
private const string _sdkGenVersion = "2.698.4";
private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.14.5 2.566.5 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = "";
private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;
public Authentication(ISpeakeasyHttpClient client, Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? securitySource, string serverUrl, SDKConfig config)
public Authentication(SDKConfig config)
{
_client = client;
_securitySource = securitySource;
_serverUrl = serverUrl;
SDKConfiguration = config;
}
@@ -122,21 +115,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/security/token", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "getTransientToken", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "getTransientToken", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -178,34 +171,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetTransientTokenBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetTransientTokenBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetTransientTokenBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetTransientTokenBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetTransientTokenBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetTransientTokenUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetTransientTokenUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetTransientTokenUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetTransientTokenUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetTransientTokenUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<GetSourceConnectionInformationResponse> GetSourceConnectionInformationAsync(string source)
@@ -218,21 +231,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/security/resources", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "getSourceConnectionInformation", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "getSourceConnectionInformation", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -274,34 +287,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetSourceConnectionInformationBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetSourceConnectionInformationBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetSourceConnectionInformationBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetSourceConnectionInformationBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetSourceConnectionInformationBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetSourceConnectionInformationUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetSourceConnectionInformationUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetSourceConnectionInformationUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetSourceConnectionInformationUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetSourceConnectionInformationUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<GetTokenDetailsResponse> GetTokenDetailsAsync(string? serverUrl = null)
@@ -316,21 +349,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = baseUrl + "/user";
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "getTokenDetails", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "getTokenDetails", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -363,7 +396,17 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetTokenDetailsUserPlexAccount>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetTokenDetailsUserPlexAccount obj;
try
{
obj = ResponseBodyDeserializer.DeserializeNotNull<GetTokenDetailsUserPlexAccount>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetTokenDetailsUserPlexAccount.", httpResponse, httpResponseBody, ex);
}
var response = new GetTokenDetailsResponse()
{
StatusCode = responseStatusCode,
@@ -374,40 +417,60 @@ namespace LukeHagar.PlexAPI.SDK
return response;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 400)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetTokenDetailsBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetTokenDetailsBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetTokenDetailsBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetTokenDetailsBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetTokenDetailsBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetTokenDetailsUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetTokenDetailsUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetTokenDetailsUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetTokenDetailsUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetTokenDetailsUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<PostUsersSignInDataResponse> PostUsersSignInDataAsync(PostUsersSignInDataRequest request, string? serverUrl = null)
@@ -422,7 +485,7 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = baseUrl + "/users/signin";
var httpRequest = new HttpRequestMessage(HttpMethod.Post, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
HeaderSerializer.PopulateHeaders(ref httpRequest, request);
var serializedBody = RequestBodySerializer.Serialize(request, "RequestBody", "form", false, true);
@@ -431,14 +494,14 @@ namespace LukeHagar.PlexAPI.SDK
httpRequest.Content = serializedBody;
}
var hookCtx = new HookContext(baseUrl, "post-users-sign-in-data", new List<string> { }, null);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "post-users-sign-in-data", new List<string> { }, null);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -471,7 +534,17 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<PostUsersSignInDataUserPlexAccount>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
PostUsersSignInDataUserPlexAccount obj;
try
{
obj = ResponseBodyDeserializer.DeserializeNotNull<PostUsersSignInDataUserPlexAccount>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into PostUsersSignInDataUserPlexAccount.", httpResponse, httpResponseBody, ex);
}
var response = new PostUsersSignInDataResponse()
{
StatusCode = responseStatusCode,
@@ -482,40 +555,60 @@ namespace LukeHagar.PlexAPI.SDK
return response;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 400)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<PostUsersSignInDataBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
PostUsersSignInDataBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<PostUsersSignInDataBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into PostUsersSignInDataBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new PostUsersSignInDataBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<PostUsersSignInDataUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
PostUsersSignInDataUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<PostUsersSignInDataUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into PostUsersSignInDataUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new PostUsersSignInDataUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
}
}

View File

@@ -17,7 +17,9 @@ namespace LukeHagar.PlexAPI.SDK
using LukeHagar.PlexAPI.SDK.Utils.Retries;
using Newtonsoft.Json;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
@@ -101,19 +103,12 @@ namespace LukeHagar.PlexAPI.SDK
{
public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp";
private const string _sdkVersion = "0.14.5";
private const string _sdkGenVersion = "2.566.5";
private const string _sdkVersion = "0.17.0";
private const string _sdkGenVersion = "2.698.4";
private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.14.5 2.566.5 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = "";
private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;
public Butler(ISpeakeasyHttpClient client, Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? securitySource, string serverUrl, SDKConfig config)
public Butler(SDKConfig config)
{
_client = client;
_securitySource = securitySource;
_serverUrl = serverUrl;
SDKConfiguration = config;
}
@@ -124,21 +119,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = baseUrl + "/butler";
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "getButlerTasks", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "getButlerTasks", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -171,7 +166,17 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetButlerTasksResponseBody>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetButlerTasksResponseBody obj;
try
{
obj = ResponseBodyDeserializer.DeserializeNotNull<GetButlerTasksResponseBody>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetButlerTasksResponseBody.", httpResponse, httpResponseBody, ex);
}
var response = new GetButlerTasksResponse()
{
StatusCode = responseStatusCode,
@@ -182,40 +187,60 @@ namespace LukeHagar.PlexAPI.SDK
return response;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 400)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetButlerTasksBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetButlerTasksBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetButlerTasksBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetButlerTasksBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetButlerTasksBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetButlerTasksUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetButlerTasksUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetButlerTasksUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetButlerTasksUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetButlerTasksUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<StartAllTasksResponse> StartAllTasksAsync()
@@ -225,21 +250,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = baseUrl + "/butler";
var httpRequest = new HttpRequestMessage(HttpMethod.Post, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "startAllTasks", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "startAllTasks", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -281,34 +306,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<StartAllTasksBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
StartAllTasksBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<StartAllTasksBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into StartAllTasksBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new StartAllTasksBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<StartAllTasksUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
StartAllTasksUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<StartAllTasksUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into StartAllTasksUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new StartAllTasksUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<StopAllTasksResponse> StopAllTasksAsync()
@@ -318,21 +363,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = baseUrl + "/butler";
var httpRequest = new HttpRequestMessage(HttpMethod.Delete, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "stopAllTasks", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "stopAllTasks", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -374,34 +419,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<StopAllTasksBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
StopAllTasksBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<StopAllTasksBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into StopAllTasksBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new StopAllTasksBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<StopAllTasksUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
StopAllTasksUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<StopAllTasksUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into StopAllTasksUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new StopAllTasksUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<StartTaskResponse> StartTaskAsync(TaskName taskName)
@@ -414,21 +479,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/butler/{taskName}", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Post, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "startTask", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "startTask", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -470,34 +535,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<StartTaskBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
StartTaskBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<StartTaskBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into StartTaskBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new StartTaskBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<StartTaskUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
StartTaskUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<StartTaskUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into StartTaskUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new StartTaskUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<StopTaskResponse> StopTaskAsync(PathParamTaskName taskName)
@@ -510,21 +595,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/butler/{taskName}", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Delete, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "stopTask", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "stopTask", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode == 404 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -566,34 +651,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<StopTaskBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
StopTaskBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<StopTaskBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into StopTaskBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new StopTaskBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<StopTaskUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
StopTaskUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<StopTaskUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into StopTaskUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new StopTaskUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 404 || 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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
}
}

View File

@@ -17,36 +17,47 @@ namespace LukeHagar.PlexAPI.SDK.Hooks
public class HookContext
{
public SDKConfig SDKConfiguration { get; set; }
public string BaseURL { get; set; } = "";
public string OperationID { get; set; }
public List<string>? Oauth2Scopes { get; set; }
public Func<object>? SecuritySource { get; set; }
public HookContext(string baseURL, string operationID, List<string>? oauth2Scopes, Func<object>? securitySource)
public HookContext(SDKConfig config, string baseURL, string operationID, List<string>? oauth2Scopes, Func<object>? securitySource)
{
SDKConfiguration = config;
BaseURL = baseURL;
OperationID = operationID;
Oauth2Scopes = oauth2Scopes;
SecuritySource = securitySource;
}
public HookContext(HookContext hookCtx)
{
SDKConfiguration = hookCtx.SDKConfiguration;
BaseURL = hookCtx.BaseURL;
OperationID = hookCtx.OperationID;
Oauth2Scopes = hookCtx.Oauth2Scopes;
SecuritySource = hookCtx.SecuritySource;
}
}
public class BeforeRequestContext : HookContext
{
public BeforeRequestContext(HookContext hookCtx)
: base(hookCtx.BaseURL, hookCtx.OperationID, hookCtx.Oauth2Scopes, hookCtx.SecuritySource) { }
: base(hookCtx) { }
}
public class AfterSuccessContext : HookContext
{
public AfterSuccessContext(HookContext hookCtx)
: base(hookCtx.BaseURL, hookCtx.OperationID, hookCtx.Oauth2Scopes, hookCtx.SecuritySource) { }
: base(hookCtx) { }
}
public class AfterErrorContext : HookContext
{
public AfterErrorContext(HookContext hookCtx)
: base(hookCtx.BaseURL, hookCtx.OperationID, hookCtx.Oauth2Scopes, hookCtx.SecuritySource) { }
: base(hookCtx) { }
}
/// <summary>

View File

@@ -73,19 +73,12 @@ namespace LukeHagar.PlexAPI.SDK
{
public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp";
private const string _sdkVersion = "0.14.5";
private const string _sdkGenVersion = "2.566.5";
private const string _sdkVersion = "0.17.0";
private const string _sdkGenVersion = "2.698.4";
private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.14.5 2.566.5 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = "";
private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;
public Hubs(ISpeakeasyHttpClient client, Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? securitySource, string serverUrl, SDKConfig config)
public Hubs(SDKConfig config)
{
_client = client;
_securitySource = securitySource;
_serverUrl = serverUrl;
SDKConfiguration = config;
}
@@ -100,21 +93,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/hubs", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "getGlobalHubs", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "getGlobalHubs", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -147,7 +140,17 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetGlobalHubsResponseBody>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Include);
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetGlobalHubsResponseBody obj;
try
{
obj = ResponseBodyDeserializer.DeserializeNotNull<GetGlobalHubsResponseBody>(httpResponseBody, NullValueHandling.Include);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetGlobalHubsResponseBody.", httpResponse, httpResponseBody, ex);
}
var response = new GetGlobalHubsResponse()
{
StatusCode = responseStatusCode,
@@ -158,40 +161,60 @@ namespace LukeHagar.PlexAPI.SDK
return response;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 400)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetGlobalHubsBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Include);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetGlobalHubsBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetGlobalHubsBadRequestPayload>(httpResponseBody, NullValueHandling.Include);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetGlobalHubsBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetGlobalHubsBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetGlobalHubsUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Include);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetGlobalHubsUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetGlobalHubsUnauthorizedPayload>(httpResponseBody, NullValueHandling.Include);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetGlobalHubsUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetGlobalHubsUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<GetRecentlyAddedResponse> GetRecentlyAddedAsync(GetRecentlyAddedRequest request)
@@ -200,21 +223,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/hubs/home/recentlyAdded", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "get-recently-added", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "get-recently-added", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -247,7 +270,17 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetRecentlyAddedResponseBody>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetRecentlyAddedResponseBody obj;
try
{
obj = ResponseBodyDeserializer.DeserializeNotNull<GetRecentlyAddedResponseBody>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetRecentlyAddedResponseBody.", httpResponse, httpResponseBody, ex);
}
var response = new GetRecentlyAddedResponse()
{
StatusCode = responseStatusCode,
@@ -258,18 +291,18 @@ namespace LukeHagar.PlexAPI.SDK
return response;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 400 || responseStatusCode == 401 || 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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<GetLibraryHubsResponse> GetLibraryHubsAsync(double sectionId, double? count = null, QueryParamOnlyTransient? onlyTransient = null)
@@ -284,21 +317,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/hubs/sections/{sectionId}", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "getLibraryHubs", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "getLibraryHubs", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -331,7 +364,17 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetLibraryHubsResponseBody>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetLibraryHubsResponseBody obj;
try
{
obj = ResponseBodyDeserializer.DeserializeNotNull<GetLibraryHubsResponseBody>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetLibraryHubsResponseBody.", httpResponse, httpResponseBody, ex);
}
var response = new GetLibraryHubsResponse()
{
StatusCode = responseStatusCode,
@@ -342,40 +385,60 @@ namespace LukeHagar.PlexAPI.SDK
return response;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 400)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetLibraryHubsBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetLibraryHubsBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetLibraryHubsBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetLibraryHubsBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetLibraryHubsBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetLibraryHubsUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetLibraryHubsUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetLibraryHubsUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetLibraryHubsUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetLibraryHubsUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -17,7 +17,9 @@ namespace LukeHagar.PlexAPI.SDK
using LukeHagar.PlexAPI.SDK.Utils.Retries;
using Newtonsoft.Json;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
@@ -46,13 +48,13 @@ namespace LukeHagar.PlexAPI.SDK
/// Logging a multi-line message
///
/// <remarks>
/// This endpoint allows for the batch addition of log entries to the main Plex Media Server log. <br/>
/// It accepts a text/plain request body, where each line represents a distinct log entry. <br/>
/// Each log entry consists of URL-encoded key-value pairs, specifying log attributes such as &apos;level&apos;, &apos;message&apos;, and &apos;source&apos;. <br/>
/// This endpoint allows for the batch addition of log entries to the main Plex Media Server log.<br/>
/// It accepts a text/plain request body, where each line represents a distinct log entry.<br/>
/// Each log entry consists of URL-encoded key-value pairs, specifying log attributes such as &apos;level&apos;, &apos;message&apos;, and &apos;source&apos;.<br/>
/// <br/>
/// Log entries are separated by a newline character (`\n`). <br/>
/// Each entry&apos;s parameters should be URL-encoded to ensure accurate parsing and handling of special characters. <br/>
/// This method is efficient for logging multiple entries in a single API call, reducing the overhead of multiple individual requests. <br/>
/// Log entries are separated by a newline character (`\n`).<br/>
/// Each entry&apos;s parameters should be URL-encoded to ensure accurate parsing and handling of special characters.<br/>
/// This method is efficient for logging multiple entries in a single API call, reducing the overhead of multiple individual requests.<br/>
/// <br/>
/// The &apos;level&apos; parameter specifies the log entry&apos;s severity or importance, with the following integer values:<br/>
/// - `0`: Error - Critical issues that require immediate attention.<br/>
@@ -94,19 +96,12 @@ namespace LukeHagar.PlexAPI.SDK
{
public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp";
private const string _sdkVersion = "0.14.5";
private const string _sdkGenVersion = "2.566.5";
private const string _sdkVersion = "0.17.0";
private const string _sdkGenVersion = "2.698.4";
private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.14.5 2.566.5 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = "";
private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;
public Log(ISpeakeasyHttpClient client, Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? securitySource, string serverUrl, SDKConfig config)
public Log(SDKConfig config)
{
_client = client;
_securitySource = securitySource;
_serverUrl = serverUrl;
SDKConfiguration = config;
}
@@ -122,21 +117,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/log", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "logLine", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "logLine", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -178,34 +173,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<LogLineBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
LogLineBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<LogLineBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into LogLineBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new LogLineBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<LogLineUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
LogLineUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<LogLineUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into LogLineUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new LogLineUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<LogMultiLineResponse> LogMultiLineAsync(string request)
@@ -215,7 +230,7 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = baseUrl + "/log";
var httpRequest = new HttpRequestMessage(HttpMethod.Post, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
var serializedBody = RequestBodySerializer.Serialize(request, "Request", "string", false, false);
if (serializedBody != null)
@@ -223,19 +238,19 @@ namespace LukeHagar.PlexAPI.SDK
httpRequest.Content = serializedBody;
}
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "logMultiLine", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "logMultiLine", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -277,34 +292,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<LogMultiLineBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
LogMultiLineBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<LogMultiLineBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into LogMultiLineBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new LogMultiLineBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<LogMultiLineUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
LogMultiLineUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<LogMultiLineUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into LogMultiLineUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new LogMultiLineUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<EnablePaperTrailResponse> EnablePaperTrailAsync()
@@ -314,21 +349,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = baseUrl + "/log/networked";
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "enablePaperTrail", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "enablePaperTrail", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode == 403 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -370,34 +405,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<EnablePaperTrailBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
EnablePaperTrailBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<EnablePaperTrailBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into EnablePaperTrailBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new EnablePaperTrailBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<EnablePaperTrailUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
EnablePaperTrailUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<EnablePaperTrailUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into EnablePaperTrailUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new EnablePaperTrailUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 403 || 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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
}
}

View File

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

View File

@@ -90,19 +90,12 @@ namespace LukeHagar.PlexAPI.SDK
{
public SDKConfig SDKConfiguration { get; private set; }
private const string _language = "csharp";
private const string _sdkVersion = "0.14.5";
private const string _sdkGenVersion = "2.566.5";
private const string _sdkVersion = "0.17.0";
private const string _sdkGenVersion = "2.698.4";
private const string _openapiDocVersion = "0.0.3";
private const string _userAgent = "speakeasy-sdk/csharp 0.14.5 2.566.5 0.0.3 LukeHagar.PlexAPI.SDK";
private string _serverUrl = "";
private ISpeakeasyHttpClient _client;
private Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? _securitySource;
public Media(ISpeakeasyHttpClient client, Func<LukeHagar.PlexAPI.SDK.Models.Components.Security>? securitySource, string serverUrl, SDKConfig config)
public Media(SDKConfig config)
{
_client = client;
_securitySource = securitySource;
_serverUrl = serverUrl;
SDKConfiguration = config;
}
@@ -116,21 +109,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/:/scrobble", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "markPlayed", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "markPlayed", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -172,34 +165,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<MarkPlayedBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
MarkPlayedBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<MarkPlayedBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into MarkPlayedBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new MarkPlayedBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<MarkPlayedUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
MarkPlayedUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<MarkPlayedUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into MarkPlayedUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new MarkPlayedUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<MarkUnplayedResponse> MarkUnplayedAsync(double key)
@@ -212,21 +225,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/:/unscrobble", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "markUnplayed", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "markUnplayed", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -268,34 +281,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<MarkUnplayedBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
MarkUnplayedBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<MarkUnplayedBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into MarkUnplayedBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new MarkUnplayedBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<MarkUnplayedUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
MarkUnplayedUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<MarkUnplayedUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into MarkUnplayedUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new MarkUnplayedUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<UpdatePlayProgressResponse> UpdatePlayProgressAsync(string key, double time, string state)
@@ -310,21 +343,21 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/:/progress", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Post, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "updatePlayProgress", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "updatePlayProgress", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -366,34 +399,54 @@ namespace LukeHagar.PlexAPI.SDK
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<UpdatePlayProgressBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
UpdatePlayProgressBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<UpdatePlayProgressBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into UpdatePlayProgressBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new UpdatePlayProgressBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<UpdatePlayProgressUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
UpdatePlayProgressUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<UpdatePlayProgressUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into UpdatePlayProgressUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new UpdatePlayProgressUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<GetBannerImageResponse> GetBannerImageAsync(GetBannerImageRequest request)
@@ -402,22 +455,22 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/library/metadata/{ratingKey}/banner", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
HeaderSerializer.PopulateHeaders(ref httpRequest, request);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "get-banner-image", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "get-banner-image", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -460,40 +513,60 @@ namespace LukeHagar.PlexAPI.SDK
return response;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 400)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetBannerImageBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetBannerImageBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetBannerImageBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetBannerImageBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetBannerImageBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetBannerImageUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetBannerImageUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetBannerImageUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetBannerImageUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetBannerImageUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
public async Task<GetThumbImageResponse> GetThumbImageAsync(GetThumbImageRequest request)
@@ -502,22 +575,22 @@ namespace LukeHagar.PlexAPI.SDK
var urlString = URLBuilder.Build(baseUrl, "/library/metadata/{ratingKey}/thumb", request);
var httpRequest = new HttpRequestMessage(HttpMethod.Get, urlString);
httpRequest.Headers.Add("user-agent", _userAgent);
httpRequest.Headers.Add("user-agent", SDKConfiguration.UserAgent);
HeaderSerializer.PopulateHeaders(ref httpRequest, request);
if (_securitySource != null)
if (SDKConfiguration.SecuritySource != null)
{
httpRequest = new SecurityMetadata(_securitySource).Apply(httpRequest);
httpRequest = new SecurityMetadata(SDKConfiguration.SecuritySource).Apply(httpRequest);
}
var hookCtx = new HookContext(baseUrl, "get-thumb-image", new List<string> { }, _securitySource);
var hookCtx = new HookContext(SDKConfiguration, baseUrl, "get-thumb-image", new List<string> { }, SDKConfiguration.SecuritySource);
httpRequest = await this.SDKConfiguration.Hooks.BeforeRequestAsync(new BeforeRequestContext(hookCtx), httpRequest);
HttpResponseMessage httpResponse;
try
{
httpResponse = await _client.SendAsync(httpRequest);
httpResponse = await SDKConfiguration.Client.SendAsync(httpRequest);
int _statusCode = (int)httpResponse.StatusCode;
if (_statusCode == 400 || _statusCode == 401 || _statusCode >= 400 && _statusCode < 500 || _statusCode >= 500 && _statusCode < 600)
@@ -560,40 +633,60 @@ namespace LukeHagar.PlexAPI.SDK
return response;
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 400)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetThumbImageBadRequest>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetThumbImageBadRequestPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetThumbImageBadRequestPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetThumbImageBadRequestPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetThumbImageBadRequest(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
else if(responseStatusCode == 401)
{
if(Utilities.IsContentTypeMatch("application/json", contentType))
{
var obj = ResponseBodyDeserializer.Deserialize<GetThumbImageUnauthorized>(await httpResponse.Content.ReadAsStringAsync(), NullValueHandling.Ignore);
obj!.RawResponse = httpResponse;
throw obj!;
var httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
GetThumbImageUnauthorizedPayload payload;
try
{
payload = ResponseBodyDeserializer.DeserializeNotNull<GetThumbImageUnauthorizedPayload>(httpResponseBody, NullValueHandling.Ignore);
}
catch (Exception ex)
{
throw new ResponseValidationException("Failed to deserialize response body into GetThumbImageUnauthorizedPayload.", httpResponse, httpResponseBody, ex);
}
throw new Models.Errors.SDKException("Unknown content type received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
payload.RawResponse = httpResponse;
throw new GetThumbImageUnauthorized(payload, httpResponse, httpResponseBody);
}
throw new Models.Errors.SDKException("Unknown content type received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
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("API error occurred", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
throw new Models.Errors.SDKException("Unknown status code received", responseStatusCode, await httpResponse.Content.ReadAsStringAsync(), httpResponse);
throw new Models.Errors.SDKException("Unknown status code received", httpResponse, await httpResponse.Content.ReadAsStringAsync());
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class AddPlaylistContentsBadRequest : Exception
public class AddPlaylistContentsBadRequestPayload
{
[JsonProperty("errors")]
public List<AddPlaylistContentsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class AddPlaylistContentsBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public AddPlaylistContentsBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use AddPlaylistContentsBadRequest.Payload.Errors instead.")]
public List<AddPlaylistContentsErrors>? Errors { get; set; }
public AddPlaylistContentsBadRequest(
AddPlaylistContentsBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 AddPlaylistContentsUnauthorized : Exception
public class AddPlaylistContentsUnauthorizedPayload
{
[JsonProperty("errors")]
public List<AddPlaylistContentsPlaylistsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class AddPlaylistContentsUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public AddPlaylistContentsUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use AddPlaylistContentsUnauthorized.Payload.Errors instead.")]
public List<AddPlaylistContentsPlaylistsErrors>? Errors { get; set; }
public AddPlaylistContentsUnauthorized(
AddPlaylistContentsUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class ApplyUpdatesBadRequest : Exception
public class ApplyUpdatesBadRequestPayload
{
[JsonProperty("errors")]
public List<ApplyUpdatesErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class ApplyUpdatesBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public ApplyUpdatesBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use ApplyUpdatesBadRequest.Payload.Errors instead.")]
public List<ApplyUpdatesErrors>? Errors { get; set; }
public ApplyUpdatesBadRequest(
ApplyUpdatesBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 ApplyUpdatesUnauthorized : Exception
public class ApplyUpdatesUnauthorizedPayload
{
[JsonProperty("errors")]
public List<ApplyUpdatesUpdaterErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class ApplyUpdatesUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public ApplyUpdatesUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use ApplyUpdatesUnauthorized.Payload.Errors instead.")]
public List<ApplyUpdatesUpdaterErrors>? Errors { get; set; }
public ApplyUpdatesUnauthorized(
ApplyUpdatesUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class CancelServerActivitiesBadRequest : Exception
public class CancelServerActivitiesBadRequestPayload
{
[JsonProperty("errors")]
public List<CancelServerActivitiesErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class CancelServerActivitiesBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public CancelServerActivitiesBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use CancelServerActivitiesBadRequest.Payload.Errors instead.")]
public List<CancelServerActivitiesErrors>? Errors { get; set; }
public CancelServerActivitiesBadRequest(
CancelServerActivitiesBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 CancelServerActivitiesUnauthorized : Exception
public class CancelServerActivitiesUnauthorizedPayload
{
[JsonProperty("errors")]
public List<CancelServerActivitiesActivitiesErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class CancelServerActivitiesUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public CancelServerActivitiesUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use CancelServerActivitiesUnauthorized.Payload.Errors instead.")]
public List<CancelServerActivitiesActivitiesErrors>? Errors { get; set; }
public CancelServerActivitiesUnauthorized(
CancelServerActivitiesUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class CheckForUpdatesBadRequest : Exception
public class CheckForUpdatesBadRequestPayload
{
[JsonProperty("errors")]
public List<CheckForUpdatesErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class CheckForUpdatesBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public CheckForUpdatesBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use CheckForUpdatesBadRequest.Payload.Errors instead.")]
public List<CheckForUpdatesErrors>? Errors { get; set; }
public CheckForUpdatesBadRequest(
CheckForUpdatesBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 CheckForUpdatesUnauthorized : Exception
public class CheckForUpdatesUnauthorizedPayload
{
[JsonProperty("errors")]
public List<CheckForUpdatesUpdaterErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class CheckForUpdatesUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public CheckForUpdatesUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use CheckForUpdatesUnauthorized.Payload.Errors instead.")]
public List<CheckForUpdatesUpdaterErrors>? Errors { get; set; }
public CheckForUpdatesUnauthorized(
CheckForUpdatesUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class ClearPlaylistContentsBadRequest : Exception
public class ClearPlaylistContentsBadRequestPayload
{
[JsonProperty("errors")]
public List<ClearPlaylistContentsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class ClearPlaylistContentsBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public ClearPlaylistContentsBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use ClearPlaylistContentsBadRequest.Payload.Errors instead.")]
public List<ClearPlaylistContentsErrors>? Errors { get; set; }
public ClearPlaylistContentsBadRequest(
ClearPlaylistContentsBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 ClearPlaylistContentsUnauthorized : Exception
public class ClearPlaylistContentsUnauthorizedPayload
{
[JsonProperty("errors")]
public List<ClearPlaylistContentsPlaylistsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class ClearPlaylistContentsUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public ClearPlaylistContentsUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use ClearPlaylistContentsUnauthorized.Payload.Errors instead.")]
public List<ClearPlaylistContentsPlaylistsErrors>? Errors { get; set; }
public ClearPlaylistContentsUnauthorized(
ClearPlaylistContentsUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class CreatePlaylistBadRequest : Exception
public class CreatePlaylistBadRequestPayload
{
[JsonProperty("errors")]
public List<CreatePlaylistErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class CreatePlaylistBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public CreatePlaylistBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use CreatePlaylistBadRequest.Payload.Errors instead.")]
public List<CreatePlaylistErrors>? Errors { get; set; }
public CreatePlaylistBadRequest(
CreatePlaylistBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 CreatePlaylistUnauthorized : Exception
public class CreatePlaylistUnauthorizedPayload
{
[JsonProperty("errors")]
public List<CreatePlaylistPlaylistsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class CreatePlaylistUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public CreatePlaylistUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use CreatePlaylistUnauthorized.Payload.Errors instead.")]
public List<CreatePlaylistPlaylistsErrors>? Errors { get; set; }
public CreatePlaylistUnauthorized(
CreatePlaylistUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class DeleteLibraryBadRequest : Exception
public class DeleteLibraryBadRequestPayload
{
[JsonProperty("errors")]
public List<DeleteLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class DeleteLibraryBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public DeleteLibraryBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use DeleteLibraryBadRequest.Payload.Errors instead.")]
public List<DeleteLibraryErrors>? Errors { get; set; }
public DeleteLibraryBadRequest(
DeleteLibraryBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 DeleteLibraryUnauthorized : Exception
public class DeleteLibraryUnauthorizedPayload
{
[JsonProperty("errors")]
public List<DeleteLibraryLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class DeleteLibraryUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public DeleteLibraryUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use DeleteLibraryUnauthorized.Payload.Errors instead.")]
public List<DeleteLibraryLibraryErrors>? Errors { get; set; }
public DeleteLibraryUnauthorized(
DeleteLibraryUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class DeletePlaylistBadRequest : Exception
public class DeletePlaylistBadRequestPayload
{
[JsonProperty("errors")]
public List<DeletePlaylistErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class DeletePlaylistBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public DeletePlaylistBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use DeletePlaylistBadRequest.Payload.Errors instead.")]
public List<DeletePlaylistErrors>? Errors { get; set; }
public DeletePlaylistBadRequest(
DeletePlaylistBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 DeletePlaylistUnauthorized : Exception
public class DeletePlaylistUnauthorizedPayload
{
[JsonProperty("errors")]
public List<DeletePlaylistPlaylistsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class DeletePlaylistUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public DeletePlaylistUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use DeletePlaylistUnauthorized.Payload.Errors instead.")]
public List<DeletePlaylistPlaylistsErrors>? Errors { get; set; }
public DeletePlaylistUnauthorized(
DeletePlaylistUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class EnablePaperTrailBadRequest : Exception
public class EnablePaperTrailBadRequestPayload
{
[JsonProperty("errors")]
public List<EnablePaperTrailErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class EnablePaperTrailBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public EnablePaperTrailBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use EnablePaperTrailBadRequest.Payload.Errors instead.")]
public List<EnablePaperTrailErrors>? Errors { get; set; }
public EnablePaperTrailBadRequest(
EnablePaperTrailBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 EnablePaperTrailUnauthorized : Exception
public class EnablePaperTrailUnauthorizedPayload
{
[JsonProperty("errors")]
public List<EnablePaperTrailLogErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class EnablePaperTrailUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public EnablePaperTrailUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use EnablePaperTrailUnauthorized.Payload.Errors instead.")]
public List<EnablePaperTrailLogErrors>? Errors { get; set; }
public EnablePaperTrailUnauthorized(
EnablePaperTrailUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetActorsLibraryBadRequest : Exception
public class GetActorsLibraryBadRequestPayload
{
[JsonProperty("errors")]
public List<GetActorsLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetActorsLibraryBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetActorsLibraryBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetActorsLibraryBadRequest.Payload.Errors instead.")]
public List<GetActorsLibraryErrors>? Errors { get; set; }
public GetActorsLibraryBadRequest(
GetActorsLibraryBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetActorsLibraryUnauthorized : Exception
public class GetActorsLibraryUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetActorsLibraryLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetActorsLibraryUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetActorsLibraryUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetActorsLibraryUnauthorized.Payload.Errors instead.")]
public List<GetActorsLibraryLibraryErrors>? Errors { get; set; }
public GetActorsLibraryUnauthorized(
GetActorsLibraryUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetAllLibrariesBadRequest : Exception
public class GetAllLibrariesBadRequestPayload
{
[JsonProperty("errors")]
public List<GetAllLibrariesErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetAllLibrariesBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetAllLibrariesBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetAllLibrariesBadRequest.Payload.Errors instead.")]
public List<GetAllLibrariesErrors>? Errors { get; set; }
public GetAllLibrariesBadRequest(
GetAllLibrariesBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetAllLibrariesUnauthorized : Exception
public class GetAllLibrariesUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetAllLibrariesLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetAllLibrariesUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetAllLibrariesUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetAllLibrariesUnauthorized.Payload.Errors instead.")]
public List<GetAllLibrariesLibraryErrors>? Errors { get; set; }
public GetAllLibrariesUnauthorized(
GetAllLibrariesUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -1,34 +0,0 @@
//------------------------------------------------------------------------------
// <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 GetAllMediaLibraryBadRequest : Exception
{
[JsonProperty("errors")]
public List<GetAllMediaLibraryErrors>? Errors { get; set; }
/// <summary>
/// Raw HTTP response; suitable for custom response parsing
/// </summary>
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
}

View File

@@ -1,34 +0,0 @@
//------------------------------------------------------------------------------
// <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 GetAllMediaLibraryUnauthorized : Exception
{
[JsonProperty("errors")]
public List<GetAllMediaLibraryLibraryErrors>? Errors { get; set; }
/// <summary>
/// Raw HTTP response; suitable for custom response parsing
/// </summary>
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetAvailableClientsBadRequest : Exception
public class GetAvailableClientsBadRequestPayload
{
[JsonProperty("errors")]
public List<GetAvailableClientsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetAvailableClientsBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetAvailableClientsBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetAvailableClientsBadRequest.Payload.Errors instead.")]
public List<GetAvailableClientsErrors>? Errors { get; set; }
public GetAvailableClientsBadRequest(
GetAvailableClientsBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetAvailableClientsUnauthorized : Exception
public class GetAvailableClientsUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetAvailableClientsServerErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetAvailableClientsUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetAvailableClientsUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetAvailableClientsUnauthorized.Payload.Errors instead.")]
public List<GetAvailableClientsServerErrors>? Errors { get; set; }
public GetAvailableClientsUnauthorized(
GetAvailableClientsUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetBandwidthStatisticsBadRequest : Exception
public class GetBandwidthStatisticsBadRequestPayload
{
[JsonProperty("errors")]
public List<GetBandwidthStatisticsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetBandwidthStatisticsBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetBandwidthStatisticsBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetBandwidthStatisticsBadRequest.Payload.Errors instead.")]
public List<GetBandwidthStatisticsErrors>? Errors { get; set; }
public GetBandwidthStatisticsBadRequest(
GetBandwidthStatisticsBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetBandwidthStatisticsUnauthorized : Exception
public class GetBandwidthStatisticsUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetBandwidthStatisticsStatisticsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetBandwidthStatisticsUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetBandwidthStatisticsUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetBandwidthStatisticsUnauthorized.Payload.Errors instead.")]
public List<GetBandwidthStatisticsStatisticsErrors>? Errors { get; set; }
public GetBandwidthStatisticsUnauthorized(
GetBandwidthStatisticsUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetBannerImageBadRequest : Exception
public class GetBannerImageBadRequestPayload
{
[JsonProperty("errors")]
public List<GetBannerImageErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetBannerImageBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetBannerImageBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetBannerImageBadRequest.Payload.Errors instead.")]
public List<GetBannerImageErrors>? Errors { get; set; }
public GetBannerImageBadRequest(
GetBannerImageBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetBannerImageUnauthorized : Exception
public class GetBannerImageUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetBannerImageMediaErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetBannerImageUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetBannerImageUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetBannerImageUnauthorized.Payload.Errors instead.")]
public List<GetBannerImageMediaErrors>? Errors { get; set; }
public GetBannerImageUnauthorized(
GetBannerImageUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetButlerTasksBadRequest : Exception
public class GetButlerTasksBadRequestPayload
{
[JsonProperty("errors")]
public List<GetButlerTasksErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetButlerTasksBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetButlerTasksBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetButlerTasksBadRequest.Payload.Errors instead.")]
public List<GetButlerTasksErrors>? Errors { get; set; }
public GetButlerTasksBadRequest(
GetButlerTasksBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetButlerTasksUnauthorized : Exception
public class GetButlerTasksUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetButlerTasksButlerErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetButlerTasksUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetButlerTasksUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetButlerTasksUnauthorized.Payload.Errors instead.")]
public List<GetButlerTasksButlerErrors>? Errors { get; set; }
public GetButlerTasksUnauthorized(
GetButlerTasksUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetCompanionsDataBadRequest : Exception
public class GetCompanionsDataBadRequestPayload
{
[JsonProperty("errors")]
public List<GetCompanionsDataErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetCompanionsDataBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetCompanionsDataBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetCompanionsDataBadRequest.Payload.Errors instead.")]
public List<GetCompanionsDataErrors>? Errors { get; set; }
public GetCompanionsDataBadRequest(
GetCompanionsDataBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetCompanionsDataUnauthorized : Exception
public class GetCompanionsDataUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetCompanionsDataPlexErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetCompanionsDataUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetCompanionsDataUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetCompanionsDataUnauthorized.Payload.Errors instead.")]
public List<GetCompanionsDataPlexErrors>? Errors { get; set; }
public GetCompanionsDataUnauthorized(
GetCompanionsDataUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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
public class GetCountriesLibraryBadRequestPayload
{
[JsonProperty("errors")]
public List<GetCountriesLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetCountriesLibraryBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetCountriesLibraryBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetCountriesLibraryBadRequest.Payload.Errors instead.")]
public List<GetCountriesLibraryErrors>? Errors { get; set; }
public GetCountriesLibraryBadRequest(
GetCountriesLibraryBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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
public class GetCountriesLibraryUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetCountriesLibraryLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetCountriesLibraryUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetCountriesLibraryUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetCountriesLibraryUnauthorized.Payload.Errors instead.")]
public List<GetCountriesLibraryLibraryErrors>? Errors { get; set; }
public GetCountriesLibraryUnauthorized(
GetCountriesLibraryUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetDevicesBadRequest : Exception
public class GetDevicesBadRequestPayload
{
[JsonProperty("errors")]
public List<GetDevicesErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetDevicesBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetDevicesBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetDevicesBadRequest.Payload.Errors instead.")]
public List<GetDevicesErrors>? Errors { get; set; }
public GetDevicesBadRequest(
GetDevicesBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetDevicesUnauthorized : Exception
public class GetDevicesUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetDevicesServerErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetDevicesUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetDevicesUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetDevicesUnauthorized.Payload.Errors instead.")]
public List<GetDevicesServerErrors>? Errors { get; set; }
public GetDevicesUnauthorized(
GetDevicesUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetFileHashBadRequest : Exception
public class GetFileHashBadRequestPayload
{
[JsonProperty("errors")]
public List<GetFileHashErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetFileHashBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetFileHashBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetFileHashBadRequest.Payload.Errors instead.")]
public List<GetFileHashErrors>? Errors { get; set; }
public GetFileHashBadRequest(
GetFileHashBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetFileHashUnauthorized : Exception
public class GetFileHashUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetFileHashLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetFileHashUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetFileHashUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetFileHashUnauthorized.Payload.Errors instead.")]
public List<GetFileHashLibraryErrors>? Errors { get; set; }
public GetFileHashUnauthorized(
GetFileHashUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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
public class GetGenresLibraryBadRequestPayload
{
[JsonProperty("errors")]
public List<GetGenresLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetGenresLibraryBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetGenresLibraryBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetGenresLibraryBadRequest.Payload.Errors instead.")]
public List<GetGenresLibraryErrors>? Errors { get; set; }
public GetGenresLibraryBadRequest(
GetGenresLibraryBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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
public class GetGenresLibraryUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetGenresLibraryLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetGenresLibraryUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetGenresLibraryUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetGenresLibraryUnauthorized.Payload.Errors instead.")]
public List<GetGenresLibraryLibraryErrors>? Errors { get; set; }
public GetGenresLibraryUnauthorized(
GetGenresLibraryUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetGeoDataBadRequest : Exception
public class GetGeoDataBadRequestPayload
{
[JsonProperty("errors")]
public List<GetGeoDataErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetGeoDataBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetGeoDataBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetGeoDataBadRequest.Payload.Errors instead.")]
public List<GetGeoDataErrors>? Errors { get; set; }
public GetGeoDataBadRequest(
GetGeoDataBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetGeoDataUnauthorized : Exception
public class GetGeoDataUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetGeoDataPlexErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetGeoDataUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetGeoDataUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetGeoDataUnauthorized.Payload.Errors instead.")]
public List<GetGeoDataPlexErrors>? Errors { get; set; }
public GetGeoDataUnauthorized(
GetGeoDataUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetGlobalHubsBadRequest : Exception
public class GetGlobalHubsBadRequestPayload
{
[JsonProperty("errors")]
public List<GetGlobalHubsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetGlobalHubsBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetGlobalHubsBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetGlobalHubsBadRequest.Payload.Errors instead.")]
public List<GetGlobalHubsErrors>? Errors { get; set; }
public GetGlobalHubsBadRequest(
GetGlobalHubsBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetGlobalHubsUnauthorized : Exception
public class GetGlobalHubsUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetGlobalHubsHubsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetGlobalHubsUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetGlobalHubsUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetGlobalHubsUnauthorized.Payload.Errors instead.")]
public List<GetGlobalHubsHubsErrors>? Errors { get; set; }
public GetGlobalHubsUnauthorized(
GetGlobalHubsUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetHomeDataBadRequest : Exception
public class GetHomeDataBadRequestPayload
{
[JsonProperty("errors")]
public List<GetHomeDataErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetHomeDataBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetHomeDataBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetHomeDataBadRequest.Payload.Errors instead.")]
public List<GetHomeDataErrors>? Errors { get; set; }
public GetHomeDataBadRequest(
GetHomeDataBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetHomeDataUnauthorized : Exception
public class GetHomeDataUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetHomeDataPlexErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetHomeDataUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetHomeDataUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetHomeDataUnauthorized.Payload.Errors instead.")]
public List<GetHomeDataPlexErrors>? Errors { get; set; }
public GetHomeDataUnauthorized(
GetHomeDataUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetLibraryDetailsBadRequest : Exception
public class GetLibraryDetailsBadRequestPayload
{
[JsonProperty("errors")]
public List<GetLibraryDetailsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetLibraryDetailsBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetLibraryDetailsBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetLibraryDetailsBadRequest.Payload.Errors instead.")]
public List<GetLibraryDetailsErrors>? Errors { get; set; }
public GetLibraryDetailsBadRequest(
GetLibraryDetailsBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetLibraryDetailsUnauthorized : Exception
public class GetLibraryDetailsUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetLibraryDetailsLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetLibraryDetailsUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetLibraryDetailsUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetLibraryDetailsUnauthorized.Payload.Errors instead.")]
public List<GetLibraryDetailsLibraryErrors>? Errors { get; set; }
public GetLibraryDetailsUnauthorized(
GetLibraryDetailsUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetLibraryHubsBadRequest : Exception
public class GetLibraryHubsBadRequestPayload
{
[JsonProperty("errors")]
public List<GetLibraryHubsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetLibraryHubsBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetLibraryHubsBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetLibraryHubsBadRequest.Payload.Errors instead.")]
public List<GetLibraryHubsErrors>? Errors { get; set; }
public GetLibraryHubsBadRequest(
GetLibraryHubsBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetLibraryHubsUnauthorized : Exception
public class GetLibraryHubsUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetLibraryHubsHubsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetLibraryHubsUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetLibraryHubsUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetLibraryHubsUnauthorized.Payload.Errors instead.")]
public List<GetLibraryHubsHubsErrors>? Errors { get; set; }
public GetLibraryHubsUnauthorized(
GetLibraryHubsUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetLibraryItemsBadRequest : Exception
public class GetLibraryItemsBadRequestPayload
{
[JsonProperty("errors")]
public List<GetLibraryItemsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetLibraryItemsBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetLibraryItemsBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetLibraryItemsBadRequest.Payload.Errors instead.")]
public List<GetLibraryItemsErrors>? Errors { get; set; }
public GetLibraryItemsBadRequest(
GetLibraryItemsBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetLibraryItemsUnauthorized : Exception
public class GetLibraryItemsUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetLibraryItemsLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetLibraryItemsUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetLibraryItemsUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetLibraryItemsUnauthorized.Payload.Errors instead.")]
public List<GetLibraryItemsLibraryErrors>? Errors { get; set; }
public GetLibraryItemsUnauthorized(
GetLibraryItemsUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -0,0 +1,58 @@
//------------------------------------------------------------------------------
// <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;
public class GetLibrarySectionsAllBadRequestPayload
{
[JsonProperty("errors")]
public List<GetLibrarySectionsAllErrors>? Errors { get; set; }
/// <summary>
/// Raw HTTP response; suitable for custom response parsing
/// </summary>
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetLibrarySectionsAllBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetLibrarySectionsAllBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetLibrarySectionsAllBadRequest.Payload.Errors instead.")]
public List<GetLibrarySectionsAllErrors>? Errors { get; set; }
public GetLibrarySectionsAllBadRequest(
GetLibrarySectionsAllBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -12,7 +12,7 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
public class GetAllMediaLibraryErrors
public class GetLibrarySectionsAllErrors
{
[JsonProperty("code")]

View File

@@ -12,7 +12,7 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using LukeHagar.PlexAPI.SDK.Utils;
using Newtonsoft.Json;
public class GetAllMediaLibraryLibraryErrors
public class GetLibrarySectionsAllLibraryErrors
{
[JsonProperty("code")]

View File

@@ -0,0 +1,58 @@
//------------------------------------------------------------------------------
// <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;
public class GetLibrarySectionsAllUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetLibrarySectionsAllLibraryErrors>? Errors { get; set; }
/// <summary>
/// Raw HTTP response; suitable for custom response parsing
/// </summary>
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetLibrarySectionsAllUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetLibrarySectionsAllUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetLibrarySectionsAllUnauthorized.Payload.Errors instead.")]
public List<GetLibrarySectionsAllLibraryErrors>? Errors { get; set; }
public GetLibrarySectionsAllUnauthorized(
GetLibrarySectionsAllUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetMediaMetaDataBadRequest : Exception
public class GetMediaMetaDataBadRequestPayload
{
[JsonProperty("errors")]
public List<GetMediaMetaDataErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetMediaMetaDataBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetMediaMetaDataBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetMediaMetaDataBadRequest.Payload.Errors instead.")]
public List<GetMediaMetaDataErrors>? Errors { get; set; }
public GetMediaMetaDataBadRequest(
GetMediaMetaDataBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetMediaMetaDataUnauthorized : Exception
public class GetMediaMetaDataUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetMediaMetaDataLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetMediaMetaDataUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetMediaMetaDataUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetMediaMetaDataUnauthorized.Payload.Errors instead.")]
public List<GetMediaMetaDataLibraryErrors>? Errors { get; set; }
public GetMediaMetaDataUnauthorized(
GetMediaMetaDataUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetMediaProvidersBadRequest : Exception
public class GetMediaProvidersBadRequestPayload
{
[JsonProperty("errors")]
public List<GetMediaProvidersErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetMediaProvidersBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetMediaProvidersBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetMediaProvidersBadRequest.Payload.Errors instead.")]
public List<GetMediaProvidersErrors>? Errors { get; set; }
public GetMediaProvidersBadRequest(
GetMediaProvidersBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetMediaProvidersUnauthorized : Exception
public class GetMediaProvidersUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetMediaProvidersServerErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetMediaProvidersUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetMediaProvidersUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetMediaProvidersUnauthorized.Payload.Errors instead.")]
public List<GetMediaProvidersServerErrors>? Errors { get; set; }
public GetMediaProvidersUnauthorized(
GetMediaProvidersUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetMetadataChildrenBadRequest : Exception
public class GetMetadataChildrenBadRequestPayload
{
[JsonProperty("errors")]
public List<GetMetadataChildrenErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetMetadataChildrenBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetMetadataChildrenBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetMetadataChildrenBadRequest.Payload.Errors instead.")]
public List<GetMetadataChildrenErrors>? Errors { get; set; }
public GetMetadataChildrenBadRequest(
GetMetadataChildrenBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetMetadataChildrenUnauthorized : Exception
public class GetMetadataChildrenUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetMetadataChildrenLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetMetadataChildrenUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetMetadataChildrenUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetMetadataChildrenUnauthorized.Payload.Errors instead.")]
public List<GetMetadataChildrenLibraryErrors>? Errors { get; set; }
public GetMetadataChildrenUnauthorized(
GetMetadataChildrenUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetMyPlexAccountBadRequest : Exception
public class GetMyPlexAccountBadRequestPayload
{
[JsonProperty("errors")]
public List<GetMyPlexAccountErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetMyPlexAccountBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetMyPlexAccountBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetMyPlexAccountBadRequest.Payload.Errors instead.")]
public List<GetMyPlexAccountErrors>? Errors { get; set; }
public GetMyPlexAccountBadRequest(
GetMyPlexAccountBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetMyPlexAccountUnauthorized : Exception
public class GetMyPlexAccountUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetMyPlexAccountServerErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetMyPlexAccountUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetMyPlexAccountUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetMyPlexAccountUnauthorized.Payload.Errors instead.")]
public List<GetMyPlexAccountServerErrors>? Errors { get; set; }
public GetMyPlexAccountUnauthorized(
GetMyPlexAccountUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetPinBadRequest : Exception
public class GetPinBadRequestPayload
{
[JsonProperty("errors")]
public List<GetPinErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetPinBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetPinBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetPinBadRequest.Payload.Errors instead.")]
public List<GetPinErrors>? Errors { get; set; }
public GetPinBadRequest(
GetPinBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetPlaylistBadRequest : Exception
public class GetPlaylistBadRequestPayload
{
[JsonProperty("errors")]
public List<GetPlaylistErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetPlaylistBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetPlaylistBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetPlaylistBadRequest.Payload.Errors instead.")]
public List<GetPlaylistErrors>? Errors { get; set; }
public GetPlaylistBadRequest(
GetPlaylistBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetPlaylistContentsBadRequest : Exception
public class GetPlaylistContentsBadRequestPayload
{
[JsonProperty("errors")]
public List<GetPlaylistContentsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetPlaylistContentsBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetPlaylistContentsBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetPlaylistContentsBadRequest.Payload.Errors instead.")]
public List<GetPlaylistContentsErrors>? Errors { get; set; }
public GetPlaylistContentsBadRequest(
GetPlaylistContentsBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetPlaylistContentsUnauthorized : Exception
public class GetPlaylistContentsUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetPlaylistContentsPlaylistsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetPlaylistContentsUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetPlaylistContentsUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetPlaylistContentsUnauthorized.Payload.Errors instead.")]
public List<GetPlaylistContentsPlaylistsErrors>? Errors { get; set; }
public GetPlaylistContentsUnauthorized(
GetPlaylistContentsUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetPlaylistUnauthorized : Exception
public class GetPlaylistUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetPlaylistPlaylistsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetPlaylistUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetPlaylistUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetPlaylistUnauthorized.Payload.Errors instead.")]
public List<GetPlaylistPlaylistsErrors>? Errors { get; set; }
public GetPlaylistUnauthorized(
GetPlaylistUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetPlaylistsBadRequest : Exception
public class GetPlaylistsBadRequestPayload
{
[JsonProperty("errors")]
public List<GetPlaylistsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetPlaylistsBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetPlaylistsBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetPlaylistsBadRequest.Payload.Errors instead.")]
public List<GetPlaylistsErrors>? Errors { get; set; }
public GetPlaylistsBadRequest(
GetPlaylistsBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetPlaylistsUnauthorized : Exception
public class GetPlaylistsUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetPlaylistsPlaylistsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetPlaylistsUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetPlaylistsUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetPlaylistsUnauthorized.Payload.Errors instead.")]
public List<GetPlaylistsPlaylistsErrors>? Errors { get; set; }
public GetPlaylistsUnauthorized(
GetPlaylistsUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetRecentlyAddedLibraryBadRequest : Exception
public class GetRecentlyAddedLibraryBadRequestPayload
{
[JsonProperty("errors")]
public List<GetRecentlyAddedLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetRecentlyAddedLibraryBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetRecentlyAddedLibraryBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetRecentlyAddedLibraryBadRequest.Payload.Errors instead.")]
public List<GetRecentlyAddedLibraryErrors>? Errors { get; set; }
public GetRecentlyAddedLibraryBadRequest(
GetRecentlyAddedLibraryBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetRecentlyAddedLibraryUnauthorized : Exception
public class GetRecentlyAddedLibraryUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetRecentlyAddedLibraryLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetRecentlyAddedLibraryUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetRecentlyAddedLibraryUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetRecentlyAddedLibraryUnauthorized.Payload.Errors instead.")]
public List<GetRecentlyAddedLibraryLibraryErrors>? Errors { get; set; }
public GetRecentlyAddedLibraryUnauthorized(
GetRecentlyAddedLibraryUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetRefreshLibraryMetadataBadRequest : Exception
public class GetRefreshLibraryMetadataBadRequestPayload
{
[JsonProperty("errors")]
public List<GetRefreshLibraryMetadataErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetRefreshLibraryMetadataBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetRefreshLibraryMetadataBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetRefreshLibraryMetadataBadRequest.Payload.Errors instead.")]
public List<GetRefreshLibraryMetadataErrors>? Errors { get; set; }
public GetRefreshLibraryMetadataBadRequest(
GetRefreshLibraryMetadataBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetRefreshLibraryMetadataUnauthorized : Exception
public class GetRefreshLibraryMetadataUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetRefreshLibraryMetadataLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetRefreshLibraryMetadataUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetRefreshLibraryMetadataUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetRefreshLibraryMetadataUnauthorized.Payload.Errors instead.")]
public List<GetRefreshLibraryMetadataLibraryErrors>? Errors { get; set; }
public GetRefreshLibraryMetadataUnauthorized(
GetRefreshLibraryMetadataUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetResizedPhotoBadRequest : Exception
public class GetResizedPhotoBadRequestPayload
{
[JsonProperty("errors")]
public List<GetResizedPhotoErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetResizedPhotoBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetResizedPhotoBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetResizedPhotoBadRequest.Payload.Errors instead.")]
public List<GetResizedPhotoErrors>? Errors { get; set; }
public GetResizedPhotoBadRequest(
GetResizedPhotoBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetResizedPhotoUnauthorized : Exception
public class GetResizedPhotoUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetResizedPhotoServerErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetResizedPhotoUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetResizedPhotoUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetResizedPhotoUnauthorized.Payload.Errors instead.")]
public List<GetResizedPhotoServerErrors>? Errors { get; set; }
public GetResizedPhotoUnauthorized(
GetResizedPhotoUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetResourcesStatisticsBadRequest : Exception
public class GetResourcesStatisticsBadRequestPayload
{
[JsonProperty("errors")]
public List<GetResourcesStatisticsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetResourcesStatisticsBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetResourcesStatisticsBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetResourcesStatisticsBadRequest.Payload.Errors instead.")]
public List<GetResourcesStatisticsErrors>? Errors { get; set; }
public GetResourcesStatisticsBadRequest(
GetResourcesStatisticsBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetResourcesStatisticsUnauthorized : Exception
public class GetResourcesStatisticsUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetResourcesStatisticsStatisticsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetResourcesStatisticsUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetResourcesStatisticsUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetResourcesStatisticsUnauthorized.Payload.Errors instead.")]
public List<GetResourcesStatisticsStatisticsErrors>? Errors { get; set; }
public GetResourcesStatisticsUnauthorized(
GetResourcesStatisticsUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetSearchAllLibrariesBadRequest : Exception
public class GetSearchAllLibrariesBadRequestPayload
{
[JsonProperty("errors")]
public List<GetSearchAllLibrariesErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetSearchAllLibrariesBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetSearchAllLibrariesBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetSearchAllLibrariesBadRequest.Payload.Errors instead.")]
public List<GetSearchAllLibrariesErrors>? Errors { get; set; }
public GetSearchAllLibrariesBadRequest(
GetSearchAllLibrariesBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetSearchAllLibrariesUnauthorized : Exception
public class GetSearchAllLibrariesUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetSearchAllLibrariesLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetSearchAllLibrariesUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetSearchAllLibrariesUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetSearchAllLibrariesUnauthorized.Payload.Errors instead.")]
public List<GetSearchAllLibrariesLibraryErrors>? Errors { get; set; }
public GetSearchAllLibrariesUnauthorized(
GetSearchAllLibrariesUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetSearchLibraryBadRequest : Exception
public class GetSearchLibraryBadRequestPayload
{
[JsonProperty("errors")]
public List<GetSearchLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetSearchLibraryBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetSearchLibraryBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetSearchLibraryBadRequest.Payload.Errors instead.")]
public List<GetSearchLibraryErrors>? Errors { get; set; }
public GetSearchLibraryBadRequest(
GetSearchLibraryBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetSearchLibraryUnauthorized : Exception
public class GetSearchLibraryUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetSearchLibraryLibraryErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetSearchLibraryUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetSearchLibraryUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetSearchLibraryUnauthorized.Payload.Errors instead.")]
public List<GetSearchLibraryLibraryErrors>? Errors { get; set; }
public GetSearchLibraryUnauthorized(
GetSearchLibraryUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
using System.Collections.Generic;
using System.Net.Http;
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetSearchResultsBadRequest : Exception
public class GetSearchResultsBadRequestPayload
{
[JsonProperty("errors")]
public List<GetSearchResultsErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Bad Request - A parameter was not specified, or was specified incorrectly.
/// </summary>
public class GetSearchResultsBadRequest : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetSearchResultsBadRequestPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetSearchResultsBadRequest.Payload.Errors instead.")]
public List<GetSearchResultsErrors>? Errors { get; set; }
public GetSearchResultsBadRequest(
GetSearchResultsBadRequestPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

View File

@@ -16,12 +16,8 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
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 GetSearchResultsUnauthorized : Exception
public class GetSearchResultsUnauthorizedPayload
{
[JsonProperty("errors")]
public List<GetSearchResultsSearchErrors>? Errors { get; set; }
@@ -31,4 +27,32 @@ namespace LukeHagar.PlexAPI.SDK.Models.Errors
[JsonProperty("-")]
public HttpResponseMessage? RawResponse { get; set; }
}
/// <summary>
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
/// </summary>
public class GetSearchResultsUnauthorized : PlexAPIError
{
/// <summary>
/// The original data that was passed to this exception.
/// </summary>
public GetSearchResultsUnauthorizedPayload Payload { get; }
[Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible. Use GetSearchResultsUnauthorized.Payload.Errors instead.")]
public List<GetSearchResultsSearchErrors>? Errors { get; set; }
public GetSearchResultsUnauthorized(
GetSearchResultsUnauthorizedPayload payload,
HttpResponseMessage rawResponse,
string body
): base("API error occurred", rawResponse, body)
{
Payload = payload;
#pragma warning disable CS0618
Errors = payload.Errors;
#pragma warning restore CS0618
}
}
}

Some files were not shown because too many files have changed in this diff Show More