Skip to content

Instantly share code, notes, and snippets.

@Clancey
Last active March 22, 2018 03:14
Show Gist options
  • Save Clancey/1f6edb3c4eaf3f797ca3cba59213b5db to your computer and use it in GitHub Desktop.
Save Clancey/1f6edb3c4eaf3f797ca3cba59213b5db to your computer and use it in GitHub Desktop.
This file has been truncated, but you can view the full file.
// Code generated by SimpleSwaggerGenerator 1.0.6654.31180
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
namespace MobileCenterApi
{
using SimpleAuth;
using System.Net.Http;
using System.Threading.Tasks;
using System.Linq;
using System.Collections.Generic;
using Models;
/// <summary>
/// Microsoft Visual Studio App Center API
/// </summary>
public partial class AppCenterClientApiKeyApi : BasicAuthApi
{
// public AppCenterClientApiKeyApi (string apiKey, HttpMessageHandler handler = null ) : base (apiKey, "X-API-Token", AuthLocation.Header, handler )
// {
// Initialize();
// }
/// <summary>
/// An optional partial-method to perform custom initialization.
///</summary>
partial void CustomInitialize();
/// <summary>
/// Gets the Distribute.
/// </summary>
public virtual DistributeClass Distribute { get; private set; }
/// <summary>
/// Gets the Account.
/// </summary>
public virtual AccountClass Account { get; private set; }
/// <summary>
/// Gets the Codepush.
/// </summary>
public virtual CodepushClass Codepush { get; private set; }
/// <summary>
/// Gets the BuildOperations.
/// </summary>
public virtual BuildOperationsClass Build { get; private set; }
/// <summary>
/// Gets the CrashOperations.
/// </summary>
public virtual CrashOperationsClass Crash { get; private set; }
/// <summary>
/// Gets the Test.
/// </summary>
public virtual TestClass Test { get; private set; }
/// <summary>
/// Gets the Push.
/// </summary>
public virtual PushClass Push { get; private set; }
/// <summary>
/// Gets the Export.
/// </summary>
public virtual ExportClass Export { get; private set; }
/// <summary>
/// Gets the Analytics.
/// </summary>
public virtual AnalyticsClass Analytics { get; private set; }
/// <summary>
/// Initializes client properties.
/// </summary>
private void Initialize()
{
this.Distribute = new DistributeClass(this);
this.Account = new AccountClass(this);
this.Codepush = new CodepushClass(this);
this.Build = new BuildOperationsClass(this);
this.Crash = new CrashOperationsClass(this);
this.Test = new TestClass(this);
this.Push = new PushClass(this);
this.Export = new ExportClass(this);
this.Analytics = new AnalyticsClass(this);
this.BaseAddress = new System.Uri("https://api.appcenter.ms/");
CustomInitialize();
}
public class DistributeClass
{
AppCenterClientApiKeyApi api;
public DistributeClass(AppCenterClientApiKeyApi api)
{
this.api = api;
}
/// <summary>
/// Registers a user for an existing device
/// </summary>
/// <param name='userId'>
/// The ID of the user
/// </param>
/// <param name='body'>
/// The device info.
/// </param>
public Task<DeviceInfoResponse> RegisterUserForDevice(string userId, DeviceInfoRequest body)
{
if (userId == null)
{
throw new System.Exception("Parameter 'userId' cannot be null");
}
if (body == null)
{
throw new System.Exception("Parameter 'body' cannot be null");
}
if (body != null)
{
body.Validate();
}
var path = "/v0.1/users/{user_id}/devices/register";
var queryParameters = new Dictionary<string, string>();
if (userId != null)
{
queryParameters.Add("user_id", string.Format("{0}", userId));
}
return api.Post<DeviceInfoResponse>(body, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the device details.
/// </summary>
/// <param name='deviceUdid'>
/// The UDID of the device
/// </param>
public Task<DeviceInfoResponse> DeviceDetails(string deviceUdid)
{
if (deviceUdid == null)
{
throw new System.Exception("Parameter 'deviceUdid' cannot be null");
}
var path = "/v0.1/user/devices/{device_udid}";
var queryParameters = new Dictionary<string, string>();
if (deviceUdid != null)
{
queryParameters.Add("device_udid", string.Format("{0}", deviceUdid));
}
return api.Get<DeviceInfoResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Removes an existing device from a user
/// </summary>
/// <param name='deviceUdid'>
/// The UDID of the device
/// </param>
public Task RemoveUserDevice(string deviceUdid)
{
if (deviceUdid == null)
{
throw new System.Exception("Parameter 'deviceUdid' cannot be null");
}
var path = "/v0.1/user/devices/{device_udid}";
var queryParameters = new Dictionary<string, string>();
if (deviceUdid != null)
{
queryParameters.Add("device_udid", string.Format("{0}", deviceUdid));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns all devices associated with the given user.
/// </summary>
public Task<DeviceInfoResponse[]> UserDevicesList()
{
var path = "/v0.1/user/devices";
return api.Get<DeviceInfoResponse[]>(path: path, authenticated: true);
}
/// <summary>
/// Return a list of releases for a app a tester has access to.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TesterAppRelease[]> ListTester(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/tester/apps/{owner_name}/{app_name}/releases";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<TesterAppRelease[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Return a list of applications that the user has tester permission to with
/// the latest release for each.
/// </summary>
public Task<TesterAppWithReleaseResponse[]> ListLatest()
{
var path = "/v0.1/tester/apps";
return api.Get<TesterAppWithReleaseResponse[]>(path: path, authenticated: true);
}
/// <summary>
/// Get a release with hash 'release_hash' or the 'latest' from all the
/// distribution groups assigned to the current user.
/// </summary>
/// <param name='appSecret'>
/// The secret of the target application
/// </param>
/// <param name='releaseHash'>
/// The hash of the release or 'latest' to get the latest release from all the
/// distribution groups assigned to the current user.
/// </param>
/// <param name='udid'>
/// When passing `udid` in the query string, a provisioning check for the given
/// device ID will be done. Will be ignored for non-iOS platforms.
/// </param>
public Task<ReleaseDetailsResponse> GetLatestByHash(string appSecret, string releaseHash, string udid = default(string))
{
if (appSecret == null)
{
throw new System.Exception("Parameter 'appSecret' cannot be null");
}
if (releaseHash == null)
{
throw new System.Exception("Parameter 'releaseHash' cannot be null");
}
var path = "/v0.1/sdk/apps/{app_secret}/releases/{release_hash}";
var queryParameters = new Dictionary<string, string>();
if (appSecret != null)
{
queryParameters.Add("app_secret", string.Format("{0}", appSecret));
}
if (releaseHash != null)
{
queryParameters.Add("release_hash", string.Format("{0}", releaseHash));
}
if (udid != null)
{
queryParameters.Add("udid", string.Format("{0}", udid));
}
return api.Get<ReleaseDetailsResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get a release with 'latest' for the given public group.
/// </summary>
/// <param name='appSecret'>
/// The secret of the target application
/// </param>
/// <param name='distributionGroupId'>
/// the id for destination
/// </param>
public Task<ReleaseDetailsResponse> GetLatestByPublicDistributionGroup(string appSecret, string distributionGroupId)
{
if (appSecret == null)
{
throw new System.Exception("Parameter 'appSecret' cannot be null");
}
if (distributionGroupId == null)
{
throw new System.Exception("Parameter 'distributionGroupId' cannot be null");
}
var path = "/v0.1/public/sdk/apps/{app_secret}/distribution_groups/{distribution_group_id}/releases/latest";
var queryParameters = new Dictionary<string, string>();
if (appSecret != null)
{
queryParameters.Add("app_secret", string.Format("{0}", appSecret));
}
if (distributionGroupId != null)
{
queryParameters.Add("distribution_group_id", string.Format("{0}", distributionGroupId));
}
return api.Get<ReleaseDetailsResponse>(path: path, queryParameters: queryParameters, authenticated: false);
}
/// <summary>
/// Notify download(s) for the provided distribution release(s).
/// </summary>
/// <param name='ownerName'>
/// The name of the app owner
/// </param>
/// <param name='appName'>
/// The name of the app
/// </param>
/// <param name='body'>
/// The install analytics request payload
/// </param>
public Task InstallAnalytics(string ownerName, string appName, AnalyticsReleasesResponse body)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (body == null)
{
throw new System.Exception("Parameter 'body' cannot be null");
}
var path = "/v0.1/public/apps/{owner_name}/{app_name}/install_analytics";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post(body, path: path, queryParameters: queryParameters, authenticated: false);
}
/// <summary>
/// Returns the manifest.plist in XML format for installing the release on a
/// device. Only available for iOS.
/// </summary>
/// <param name='appId'>
/// The ID of the application
/// </param>
/// <param name='releaseId'>
/// The release_id
/// </param>
/// <param name='token'>
/// A hash that authorizes the download if it matches the release info.
/// </param>
public Task GetIosManifest(string appId, int releaseId, string token)
{
if (appId == null)
{
throw new System.Exception("Parameter 'appId' cannot be null");
}
if (token == null)
{
throw new System.Exception("Parameter 'token' cannot be null");
}
var path = "/v0.1/public/apps/{app_id}/releases/{release_id}/ios_manifest";
var queryParameters = new Dictionary<string, string>();
if (appId != null)
{
queryParameters.Add("app_id", string.Format("{0}", appId));
}
queryParameters.Add("release_id", string.Format("{0}", releaseId.ToString()));
if (token != null)
{
queryParameters.Add("token", string.Format("{0}", token));
}
return api.Get(path: path, queryParameters: queryParameters, authenticated: false);
}
/// <summary>
/// Returns the resign status to the caller
/// </summary>
/// <param name='releaseId'>
/// The ID of the release.
/// </param>
/// <param name='resignId'>
/// The ID of the resign operation.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ResignStatus> GetReleaseUpdateDevicesStatus(string releaseId, string resignId, string ownerName, string appName)
{
if (releaseId == null)
{
throw new System.Exception("Parameter 'releaseId' cannot be null");
}
if (resignId == null)
{
throw new System.Exception("Parameter 'resignId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/releases/{release_id}/update_devices/{resign_id}";
var queryParameters = new Dictionary<string, string>();
if (releaseId != null)
{
queryParameters.Add("release_id", string.Format("{0}", releaseId));
}
if (resignId != null)
{
queryParameters.Add("resign_id", string.Format("{0}", resignId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<ResignStatus>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Return information about the provisioning profile. Only available for iOS.
/// </summary>
/// <param name='releaseId'>
/// The release_id
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ProvisioningProfileResponse> Profile(int releaseId, string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/releases/{release_id}/provisioning_profile";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("release_id", string.Format("{0}", releaseId.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<ProvisioningProfileResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get a release with id `release_id`. If `release_id` is `latest`, return the
/// latest release that was distributed to the current user (from all the
/// distribution groups).
/// </summary>
/// <param name='releaseId'>
/// The ID of the release, or `latest` to get the latest release from all the
/// distribution groups assigned to the current user.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='udid'>
/// when supplied, this call will also check if the given UDID is provisioned.
/// Will be ignored for non-iOS platforms. The value will be returned in the
/// property is_udid_provisioned.
/// </param>
public Task<ReleaseDetailsResponse> GetLatestByUser(string releaseId, string ownerName, string appName, string udid = default(string))
{
if (releaseId == null)
{
throw new System.Exception("Parameter 'releaseId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/releases/{release_id}";
var queryParameters = new Dictionary<string, string>();
if (releaseId != null)
{
queryParameters.Add("release_id", string.Format("{0}", releaseId));
}
if (udid != null)
{
queryParameters.Add("udid", string.Format("{0}", udid));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<ReleaseDetailsResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Updates a release.
/// </summary>
/// <param name='releaseId'>
/// The ID of the release
/// </param>
/// <param name='body'>
/// The release information.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ReleaseUpdateResponse> Update(int releaseId, ReleaseUpdateRequest body, string ownerName, string appName)
{
if (body == null)
{
throw new System.Exception("Parameter 'body' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/releases/{release_id}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("release_id", string.Format("{0}", releaseId.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Patch<ReleaseUpdateResponse>(body, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Deletes a release.
/// </summary>
/// <param name='releaseId'>
/// The ID of the release
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task Delete(int releaseId, string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/releases/{release_id}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("release_id", string.Format("{0}", releaseId.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Return detailed information about releases avaiable to a tester.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='publishedOnly'>
/// when *true*, filters out releases that were uploaded but were never
/// distributed. Releases that under deleted distribution groups will not be
/// filtered out.
/// </param>
[System.Obsolete()]
public Task<BasicReleaseDetailsResponse[]> AvailableToTester(string ownerName, string appName, bool? publishedOnly = default(bool?))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/releases/filter_by_tester";
var queryParameters = new Dictionary<string, string>();
if (publishedOnly != null)
{
queryParameters.Add("published_only", string.Format("{0}", publishedOnly?.ToString().ToLower()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<BasicReleaseDetailsResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Return basic information about releases.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='publishedOnly'>
/// when *true*, filters out releases that were uploaded but were never
/// distributed. Releases that under deleted distribution groups will not be
/// filtered out.
/// </param>
public Task<BasicReleaseDetailsResponse[]> List(string ownerName, string appName, bool? publishedOnly = default(bool?))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/releases";
var queryParameters = new Dictionary<string, string>();
if (publishedOnly != null)
{
queryParameters.Add("published_only", string.Format("{0}", publishedOnly?.ToString().ToLower()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<BasicReleaseDetailsResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Commits or aborts the upload process for a release for the specified
/// application
/// </summary>
/// <param name='uploadId'>
/// The ID of the upload
/// </param>
/// <param name='body'>
/// The release information
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ReleaseUploadEndResponse> Complete(string uploadId, ReleaseUploadEndRequest body, string ownerName, string appName)
{
if (uploadId == null)
{
throw new System.Exception("Parameter 'uploadId' cannot be null");
}
if (body == null)
{
throw new System.Exception("Parameter 'body' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/release_uploads/{upload_id}";
var queryParameters = new Dictionary<string, string>();
if (uploadId != null)
{
queryParameters.Add("upload_id", string.Format("{0}", uploadId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Patch<ReleaseUploadEndResponse>(body, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Begins the upload process for a new release for the specified application.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ReleaseUploadBeginResponse> Create(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/release_uploads";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<ReleaseUploadBeginResponse>(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get the latest release from every distribution group associated with an
/// application.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<BasicReleaseDetailsResponse[]> ListLatest1(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/recent_releases";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<BasicReleaseDetailsResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Return the Real time Status publishing of release from store.
/// </summary>
/// <param name='storeName'>
/// The name of the store
/// </param>
/// <param name='releaseId'>
/// The id of the release
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ReleaseRealTimeStatusResponse> GetRealTimeStatusByReleaseId(string storeName, double releaseId, string ownerName, string appName)
{
if (storeName == null)
{
throw new System.Exception("Parameter 'storeName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_stores/{store_name}/releases/{release_id}/realtimestatus";
var queryParameters = new Dictionary<string, string>();
if (storeName != null)
{
queryParameters.Add("store_name", string.Format("{0}", storeName));
}
queryParameters.Add("release_id", string.Format("{0}", releaseId.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<ReleaseRealTimeStatusResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Return the Error Details of release which failed in publishing.
/// </summary>
/// <param name='storeName'>
/// The name of the store
/// </param>
/// <param name='releaseId'>
/// The id of the release
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ReleasePublishErrorResponse> GetPublishError(string storeName, double releaseId, string ownerName, string appName)
{
if (storeName == null)
{
throw new System.Exception("Parameter 'storeName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_stores/{store_name}/releases/{release_id}/publish_error_details";
var queryParameters = new Dictionary<string, string>();
if (storeName != null)
{
queryParameters.Add("store_name", string.Format("{0}", storeName));
}
queryParameters.Add("release_id", string.Format("{0}", releaseId.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<ReleasePublishErrorResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Return releases published in a store for releaseId and storeId
/// </summary>
/// <param name='storeName'>
/// The name of the store
/// </param>
/// <param name='releaseId'>
/// The name of the store
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<object> Get(string storeName, string releaseId, string ownerName, string appName)
{
if (storeName == null)
{
throw new System.Exception("Parameter 'storeName' cannot be null");
}
if (releaseId == null)
{
throw new System.Exception("Parameter 'releaseId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_stores/{store_name}/releases/{release_id}";
var queryParameters = new Dictionary<string, string>();
if (storeName != null)
{
queryParameters.Add("store_name", string.Format("{0}", storeName));
}
if (releaseId != null)
{
queryParameters.Add("release_id", string.Format("{0}", releaseId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<object>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// delete the release with release Id
/// </summary>
/// <param name='storeName'>
/// The name of the store
/// </param>
/// <param name='releaseId'>
/// The id of the release
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task Delete1(string storeName, string releaseId, string ownerName, string appName)
{
if (storeName == null)
{
throw new System.Exception("Parameter 'storeName' cannot be null");
}
if (releaseId == null)
{
throw new System.Exception("Parameter 'releaseId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_stores/{store_name}/releases/{release_id}";
var queryParameters = new Dictionary<string, string>();
if (storeName != null)
{
queryParameters.Add("store_name", string.Format("{0}", storeName));
}
if (releaseId != null)
{
queryParameters.Add("release_id", string.Format("{0}", releaseId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Return all releases published in a store
/// </summary>
/// <param name='storeName'>
/// The name of the store
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<StoresBasicReleaseDetails[]> List1(string storeName, string ownerName, string appName)
{
if (storeName == null)
{
throw new System.Exception("Parameter 'storeName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_stores/{store_name}/releases";
var queryParameters = new Dictionary<string, string>();
if (storeName != null)
{
queryParameters.Add("store_name", string.Format("{0}", storeName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<StoresBasicReleaseDetails[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the latest release published in a store.
/// </summary>
/// <param name='storeName'>
/// The name of the store
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<object> GetLatest(string storeName, string ownerName, string appName)
{
if (storeName == null)
{
throw new System.Exception("Parameter 'storeName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_stores/{store_name}/latest_release";
var queryParameters = new Dictionary<string, string>();
if (storeName != null)
{
queryParameters.Add("store_name", string.Format("{0}", storeName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<object>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Return the store details for specified store name.
/// </summary>
/// <param name='storeName'>
/// The id of the store
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ExternalStoreResponse> Get1(string storeName, string ownerName, string appName)
{
if (storeName == null)
{
throw new System.Exception("Parameter 'storeName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_stores/{store_name}";
var queryParameters = new Dictionary<string, string>();
if (storeName != null)
{
queryParameters.Add("store_name", string.Format("{0}", storeName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<ExternalStoreResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// delete the store based on specific store name.
/// </summary>
/// <param name='storeName'>
/// The name of the store
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task Delete2(string storeName, string ownerName, string appName)
{
if (storeName == null)
{
throw new System.Exception("Parameter 'storeName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_stores/{store_name}";
var queryParameters = new Dictionary<string, string>();
if (storeName != null)
{
queryParameters.Add("store_name", string.Format("{0}", storeName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Create a new external store for the specified application.
/// </summary>
/// <param name='body'>
/// The store request
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ExternalStoreResponse> Create1(ExternalStoreRequest body, string ownerName, string appName)
{
if (body == null)
{
throw new System.Exception("Parameter 'body' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_stores";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<ExternalStoreResponse>(body, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get all the store details from Storage store table for a particular
/// application.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ExternalStoreResponse[]> List2(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_stores";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<ExternalStoreResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the resign status to the caller
/// </summary>
/// <param name='distributionGroupName'>
/// The name of the distribution group.
/// </param>
/// <param name='resignId'>
/// The ID of the resign operation
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ResignStatus> GetUpdateDevicesStatus(string distributionGroupName, string resignId, string ownerName, string appName)
{
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
if (resignId == null)
{
throw new System.Exception("Parameter 'resignId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}/update_devices/{resign_id}";
var queryParameters = new Dictionary<string, string>();
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
if (resignId != null)
{
queryParameters.Add("resign_id", string.Format("{0}", resignId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<ResignStatus>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Return detailed information about a distributed release in a given
/// distribution group.
/// </summary>
/// <param name='ownerName'>
/// The name of the app owner
/// </param>
/// <param name='appName'>
/// The name of the app
/// </param>
/// <param name='distributionGroupName'>
/// The name of the distribution group.
/// </param>
/// <param name='releaseId'>
/// Only supports the constant `latest`, specific IDs are not supported.
/// `latest` will return the latest release in the distribution group.
/// </param>
public Task<ReleaseDetailsResponse> GetLatestByDistributionGroup(string ownerName, string appName, string distributionGroupName, string releaseId)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
if (releaseId == null)
{
throw new System.Exception("Parameter 'releaseId' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}/releases/{release_id}";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
if (releaseId != null)
{
queryParameters.Add("release_id", string.Format("{0}", releaseId));
}
return api.Get<ReleaseDetailsResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Deletes a release with id 'release_id' in a given distribution group.
/// </summary>
/// <param name='ownerName'>
/// The name of the app owner
/// </param>
/// <param name='appName'>
/// The name of the app
/// </param>
/// <param name='distributionGroupName'>
/// The name of the distribution group.
/// </param>
/// <param name='releaseId'>
/// The ID identifying the unique release.
/// </param>
public Task<ErrorDetails> DeleteWithDistributionGroupId(string ownerName, string appName, string distributionGroupName, int releaseId)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}/releases/{release_id}";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
queryParameters.Add("release_id", string.Format("{0}", releaseId.ToString()));
return api.Delete<ErrorDetails>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Return basic information about distributed releases in a given distribution
/// group.
/// </summary>
/// <param name='distributionGroupName'>
/// The name of the distribution group.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DistributionGroupRelease[]> ListByDistributionGroup(string distributionGroupName, string ownerName, string appName)
{
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}/releases";
var queryParameters = new Dictionary<string, string>();
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<DistributionGroupRelease[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns all devices associated with the given distribution group.
/// </summary>
/// <param name='distributionGroupName'>
/// The name of the distribution group.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='unprovisionedOnly'>
/// when true, filters out provisioned devices
/// </param>
/// <param name='udids'>
/// multiple UDIDs which should be part of the resulting CSV.
/// </param>
public Task ListCsvFormat(string distributionGroupName, string ownerName, string appName, bool? unprovisionedOnly = false, string[] udids = default(string[]))
{
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}/devices/download_devices_list";
var queryParameters = new Dictionary<string, string>();
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
if (unprovisionedOnly != null)
{
queryParameters.Add("unprovisioned_only", string.Format("{0}", unprovisionedOnly?.ToString().ToLower()));
}
if (udids != null)
{
queryParameters.Add("udids", string.Format("{0}", string.Join(",", udids)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns all devices associated with the given distribution group
/// </summary>
/// <param name='distributionGroupName'>
/// The name of the distribution group.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='releaseId'>
/// when provided, gets the provisioning state of the devices owned by users of
/// this distribution group when compared to the provided release.
/// </param>
public Task<DeviceInfoResponse[]> List3(string distributionGroupName, string ownerName, string appName, double? releaseId = default(double?))
{
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}/devices";
var queryParameters = new Dictionary<string, string>();
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
if (releaseId != null)
{
queryParameters.Add("release_id", string.Format("{0}", releaseId?.ToString()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<DeviceInfoResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Fetch all apple test flight groups
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<AppleTestFlightGroupsResponse[]> TestFlightGroups(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/apple_test_flight_groups";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<AppleTestFlightGroupsResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get mapping of apple app to an existing app in apple store.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<AppleMappingResponse> Get2(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/apple_mapping";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<AppleMappingResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Delete mapping of apple app to an existing app in apple store.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task Delete3(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/apple_mapping";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Create a mapping for an existing app in apple store for the specified
/// application.
/// </summary>
/// <param name='body'>
/// The apple app mapping object
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<AppleMappingResponse> Create2(AppleMappingRequest body, string ownerName, string appName)
{
if (body == null)
{
throw new System.Exception("Parameter 'body' cannot be null");
}
if (body != null)
{
body.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/apple_mapping";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<AppleMappingResponse>(body, path: path, queryParameters: queryParameters, authenticated: true);
}
}
public class AccountClass
{
AppCenterClientApiKeyApi api;
public AccountClass(AppCenterClientApiKeyApi api)
{
this.api = api;
}
/// <summary>
/// Rejects a pending organization invitation
/// </summary>
/// <param name='invitationToken'>
/// The app invitation token that was sent to the user
/// </param>
public Task Reject(string invitationToken)
{
if (invitationToken == null)
{
throw new System.Exception("Parameter 'invitationToken' cannot be null");
}
var path = "/v0.1/user/invitations/orgs/{invitation_token}/reject";
var queryParameters = new Dictionary<string, string>();
if (invitationToken != null)
{
queryParameters.Add("invitation_token", string.Format("{0}", invitationToken));
}
return api.Post(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Accepts a pending organization invitation for the specified user
/// </summary>
/// <param name='invitationToken'>
/// The app invitation token that was sent to the user
/// </param>
public Task Accept(string invitationToken)
{
if (invitationToken == null)
{
throw new System.Exception("Parameter 'invitationToken' cannot be null");
}
var path = "/v0.1/user/invitations/orgs/{invitation_token}/accept";
var queryParameters = new Dictionary<string, string>();
if (invitationToken != null)
{
queryParameters.Add("invitation_token", string.Format("{0}", invitationToken));
}
return api.Post(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Accepts all pending invitations to distribution groups for the specified
/// user
/// </summary>
public Task AcceptAll()
{
var path = "/v0.1/user/invitations/distribution_groups/accept";
return api.Post(body: null, path: path, authenticated: true);
}
/// <summary>
/// Rejects a pending invitation for the specified user
/// </summary>
/// <param name='invitationToken'>
/// The app invitation token that was sent to the user
/// </param>
public Task Reject1(string invitationToken)
{
if (invitationToken == null)
{
throw new System.Exception("Parameter 'invitationToken' cannot be null");
}
var path = "/v0.1/user/invitations/apps/{invitation_token}/reject";
var queryParameters = new Dictionary<string, string>();
if (invitationToken != null)
{
queryParameters.Add("invitation_token", string.Format("{0}", invitationToken));
}
return api.Post(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Accepts a pending invitation for the specified user
/// </summary>
/// <param name='invitationToken'>
/// The app invitation token that was sent to the user
/// </param>
public Task Accept1(string invitationToken)
{
if (invitationToken == null)
{
throw new System.Exception("Parameter 'invitationToken' cannot be null");
}
var path = "/v0.1/user/invitations/apps/{invitation_token}/accept";
var queryParameters = new Dictionary<string, string>();
if (invitationToken != null)
{
queryParameters.Add("invitation_token", string.Format("{0}", invitationToken));
}
return api.Post(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the user profile data
/// </summary>
public Task<UserProfileResponse> Get()
{
var path = "/v0.1/user";
return api.Get<UserProfileResponse>(path: path, authenticated: true);
}
/// <summary>
/// Updates the user profile and returns the updated user data
/// </summary>
/// <param name='user'>
/// The data for the created user
/// </param>
public Task<UserProfileResponse> Update(UserUpdateRequest user)
{
if (user == null)
{
throw new System.Exception("Parameter 'user' cannot be null");
}
var path = "/v0.1/user";
return api.Patch<UserProfileResponse>(user, path: path, authenticated: true);
}
/// <summary>
/// Updates the given organization user
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='userName'>
/// The slug name of the user
/// </param>
/// <param name='organizationUser'>
/// </param>
public Task<OrganizationUserResponse> UpdateOrgRole(string orgName, string userName, OrganizationUserPatchRequest organizationUser)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (userName == null)
{
throw new System.Exception("Parameter 'userName' cannot be null");
}
if (organizationUser == null)
{
throw new System.Exception("Parameter 'organizationUser' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/users/{user_name}";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (userName != null)
{
queryParameters.Add("user_name", string.Format("{0}", userName));
}
return api.Patch<OrganizationUserResponse>(organizationUser, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Removes a user from an organization.
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='userName'>
/// The slug name of the user
/// </param>
public Task RemoveFromOrg(string orgName, string userName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (userName == null)
{
throw new System.Exception("Parameter 'userName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/users/{user_name}";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (userName != null)
{
queryParameters.Add("user_name", string.Format("{0}", userName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a list of users that belong to an organization
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
public Task<OrganizationUserResponse[]> ListForOrg(string orgName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/users";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Get<OrganizationUserResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Removes a user from a team that is owned by an organization
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='teamName'>
/// The team's name
/// </param>
/// <param name='userName'>
/// The slug name of the user
/// </param>
public Task RemoveUser(string orgName, string teamName, string userName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (teamName == null)
{
throw new System.Exception("Parameter 'teamName' cannot be null");
}
if (userName == null)
{
throw new System.Exception("Parameter 'userName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/teams/{team_name}/users/{user_name}";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (teamName != null)
{
queryParameters.Add("team_name", string.Format("{0}", teamName));
}
if (userName != null)
{
queryParameters.Add("user_name", string.Format("{0}", userName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the users of a team which is owned by an organization
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='teamName'>
/// The team's name
/// </param>
public Task<TeamUserResponse> GetUsers(string orgName, string teamName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (teamName == null)
{
throw new System.Exception("Parameter 'teamName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/teams/{team_name}/users";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (teamName != null)
{
queryParameters.Add("team_name", string.Format("{0}", teamName));
}
return api.Get<TeamUserResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Adds a new user to a team that is owned by an organization
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='teamName'>
/// The team's name
/// </param>
/// <param name='userEmail'>
/// The email of the user to add to the team
/// </param>
public Task<TeamUserResponse> AddUser(string orgName, string teamName, UserEmailRequest userEmail = default(UserEmailRequest))
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (teamName == null)
{
throw new System.Exception("Parameter 'teamName' cannot be null");
}
if (userEmail != null)
{
userEmail.Validate();
}
var path = "/v0.1/orgs/{org_name}/teams/{team_name}/users";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (teamName != null)
{
queryParameters.Add("team_name", string.Format("{0}", teamName));
}
return api.Post<TeamUserResponse>(userEmail, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Updates the permissions the team has to the app
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='teamName'>
/// The team's name
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='team'>
/// </param>
public Task<AppWithTeamPermissionsResponse> UpdatePermissions(string orgName, string teamName, string appName, TeamAppUpdateRequest team = default(TeamAppUpdateRequest))
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (teamName == null)
{
throw new System.Exception("Parameter 'teamName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/teams/{team_name}/apps/{app_name}";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (teamName != null)
{
queryParameters.Add("team_name", string.Format("{0}", teamName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Patch<AppWithTeamPermissionsResponse>(team, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Removes an app from a team
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='teamName'>
/// The team's name
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task RemoveApp(string orgName, string teamName, string appName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (teamName == null)
{
throw new System.Exception("Parameter 'teamName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/teams/{team_name}/apps/{app_name}";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (teamName != null)
{
queryParameters.Add("team_name", string.Format("{0}", teamName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Adds an app to a team
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='teamName'>
/// The team's name
/// </param>
/// <param name='app'>
/// The name of the app to be added to the app. The app has to be owned by the
/// organization.
/// </param>
public Task<AppWithTeamPermissionsResponse> AddApp(string orgName, string teamName, AppTeamAddRequest app)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (teamName == null)
{
throw new System.Exception("Parameter 'teamName' cannot be null");
}
if (app == null)
{
throw new System.Exception("Parameter 'app' cannot be null");
}
if (app != null)
{
app.Validate();
}
var path = "/v0.1/orgs/{org_name}/teams/{team_name}/apps";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (teamName != null)
{
queryParameters.Add("team_name", string.Format("{0}", teamName));
}
return api.Post<AppWithTeamPermissionsResponse>(app, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the apps a team has access to
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='teamName'>
/// The team's name
/// </param>
public Task<AppWithTeamPermissionsResponse[]> ListApps(string orgName, string teamName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (teamName == null)
{
throw new System.Exception("Parameter 'teamName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/teams/{team_name}/apps";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (teamName != null)
{
queryParameters.Add("team_name", string.Format("{0}", teamName));
}
return api.Get<AppWithTeamPermissionsResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the details of a single team
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='teamName'>
/// The team's name
/// </param>
public Task<TeamResponse> GetTeam(string orgName, string teamName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (teamName == null)
{
throw new System.Exception("Parameter 'teamName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/teams/{team_name}";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (teamName != null)
{
queryParameters.Add("team_name", string.Format("{0}", teamName));
}
return api.Get<TeamResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Deletes a single team
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='teamName'>
/// The team's name
/// </param>
public Task Delete(string orgName, string teamName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (teamName == null)
{
throw new System.Exception("Parameter 'teamName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/teams/{team_name}";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (teamName != null)
{
queryParameters.Add("team_name", string.Format("{0}", teamName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Updates a single team
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='teamName'>
/// The team's name
/// </param>
/// <param name='team'>
/// The information used to create the team
/// </param>
public Task<TeamResponse> Update1(string orgName, string teamName, TeamRequest team = default(TeamRequest))
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (teamName == null)
{
throw new System.Exception("Parameter 'teamName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/teams/{team_name}";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (teamName != null)
{
queryParameters.Add("team_name", string.Format("{0}", teamName));
}
return api.Patch<TeamResponse>(team, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the list of all teams in this org
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
public Task<TeamResponse[]> ListAll(string orgName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/teams";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Get<TeamResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Creates a team and returns it
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='team'>
/// The information used to create the team
/// </param>
public Task<object> CreateTeam(string orgName, TeamRequest team = default(TeamRequest))
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (team != null)
{
team.Validate();
}
var path = "/v0.1/orgs/{org_name}/teams";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Post<object>(team, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Allows the role of an invited user to be changed
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='userEmail'>
/// The user email of the user to update
/// </param>
/// <param name='userRole'>
/// The new role of the user
/// </param>
public Task Update2(string orgName, string userEmail, OrganizationUserPatchRequest userRole)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (userEmail == null)
{
throw new System.Exception("Parameter 'userEmail' cannot be null");
}
if (userRole == null)
{
throw new System.Exception("Parameter 'userRole' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/invitations/{user_email}";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (userEmail != null)
{
queryParameters.Add("user_email", string.Format("{0}", userEmail));
}
return api.Patch(userRole, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Removes a user's invitation to an organization
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='email'>
/// The email address of the user to send the password reset mail to.
/// </param>
public Task UnnamedMethod(string orgName, string email)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (email == null)
{
throw new System.Exception("Parameter 'email' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/invitations/{email}/revoke";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
if (email != null)
{
queryParameters.Add("email", string.Format("{0}", email));
}
return api.Post(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Cancels an existing organization for the user and sends a new one
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='userEmail'>
/// The email of the user for which to resend the invitation
/// </param>
public Task SendNewInvitation(string orgName, UserEmailRequest userEmail = default(UserEmailRequest))
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (userEmail != null)
{
userEmail.Validate();
}
var path = "/v0.1/orgs/{org_name}/invitations/resend";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Post(userEmail, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Invites a new or existing user to an organization
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='userEmail'>
/// The email of the user to invite
/// </param>
public Task Create(string orgName, UserEmailRequest userEmail = default(UserEmailRequest))
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (userEmail != null)
{
userEmail.Validate();
}
var path = "/v0.1/orgs/{org_name}/invitations";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Post(userEmail, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Removes a user's invitation to an organization
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='userEmail'>
/// The email of the user whose invitation should be removed
/// </param>
public Task Delete1(string orgName, UserEmailRequest userEmail = default(UserEmailRequest))
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (userEmail != null)
{
userEmail.Validate();
}
var path = "/v0.1/orgs/{org_name}/invitations";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Delete(userEmail, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the pending invitations for the organization
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
public Task<OrganizationInvitationSimpleDetailResponse[]> ListPending(string orgName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/invitations";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Get<OrganizationInvitationSimpleDetailResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a list of azure subscriptions for the organization
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
public Task<AzureSubscriptionResponse[]> ListForOrg1(string orgName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/azure_subscriptions";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Get<AzureSubscriptionResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Creates a new app for the organization and returns it to the caller
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='app'>
/// The data for the app
/// </param>
public Task<AppResponse> CreateForOrg(string orgName, AppRequest app)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (app == null)
{
throw new System.Exception("Parameter 'app' cannot be null");
}
if (app != null)
{
app.Validate();
}
var path = "/v0.1/orgs/{org_name}/apps";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Post<AppResponse>(app, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a list of apps for the organization
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
public Task<AppResponse[]> ListForOrg2(string orgName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}/apps";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Get<AppResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the details of a single organization
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
public Task<OrganizationResponse> Get1(string orgName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Get<OrganizationResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a list of organizations the requesting user has access to
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
/// <param name='org'>
/// The data for the org
/// </param>
public Task<OrganizationResponse> Update3(string orgName, OrganizationPatchRequest org)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
if (org == null)
{
throw new System.Exception("Parameter 'org' cannot be null");
}
var path = "/v0.1/orgs/{org_name}";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Patch<OrganizationResponse>(org, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Deletes a single organization
/// </summary>
/// <param name='orgName'>
/// The organization's name
/// </param>
public Task Delete2(string orgName)
{
if (orgName == null)
{
throw new System.Exception("Parameter 'orgName' cannot be null");
}
var path = "/v0.1/orgs/{org_name}";
var queryParameters = new Dictionary<string, string>();
if (orgName != null)
{
queryParameters.Add("org_name", string.Format("{0}", orgName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Creates a new organization and returns it to the caller
/// </summary>
/// <param name='organization'>
/// The organization data
/// </param>
public Task<OrganizationResponse> CreateOrUpdate(OrganizationRequest organization)
{
if (organization == null)
{
throw new System.Exception("Parameter 'organization' cannot be null");
}
var path = "/v0.1/orgs";
return api.Post<OrganizationResponse>(organization, path: path, authenticated: true);
}
/// <summary>
/// Returns a list of organizations the requesting user has access to
/// </summary>
public Task<ListOKResponseItem[]> List()
{
var path = "/v0.1/orgs";
return api.Get<ListOKResponseItem[]>(path: path, authenticated: true);
}
/// <summary>
/// Returns a list of azure subscriptions for the user
/// </summary>
public Task<AzureSubscriptionResponse[]> ListForUser()
{
var path = "/v0.1/azure_subscriptions";
return api.Get<AzureSubscriptionResponse[]>(path: path, authenticated: true);
}
/// <summary>
/// Removes the user from the app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='userEmail'>
/// The user email of the user to delete
/// </param>
public Task RemoveUser1(string ownerName, string appName, string userEmail)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (userEmail == null)
{
throw new System.Exception("Parameter 'userEmail' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/users/{user_email}";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (userEmail != null)
{
queryParameters.Add("user_email", string.Format("{0}", userEmail));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Update user permission for the app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='userEmail'>
/// The user email of the user to patch
/// </param>
/// <param name='userAppPermissionsData'>
/// The value to update the user permission for the app.
/// </param>
public Task UpdateUserPermissions(string ownerName, string appName, string userEmail, UserAppPermissionsUpdateRequest userAppPermissionsData = default(UserAppPermissionsUpdateRequest))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (userEmail == null)
{
throw new System.Exception("Parameter 'userEmail' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/users/{user_email}";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (userEmail != null)
{
queryParameters.Add("user_email", string.Format("{0}", userEmail));
}
return api.Patch(userAppPermissionsData, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the users associated with the app specified with the given app name
/// which belongs to the given owner.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<UserProfileResponse[]> List1(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/users";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<UserProfileResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Transfers ownership of an app to a different user or organization
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='destinationOwnerName'>
/// The name of the owner (user or organization) to which the app is being
/// transferred
/// </param>
public Task<AppResponse> TransferOwnership(string ownerName, string appName, string destinationOwnerName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (destinationOwnerName == null)
{
throw new System.Exception("Parameter 'destinationOwnerName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/transfer/{destination_owner_name}";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (destinationOwnerName != null)
{
queryParameters.Add("destination_owner_name", string.Format("{0}", destinationOwnerName));
}
return api.Post<AppResponse>(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the testers associated with the app specified with the given app
/// name which belongs to the given owner.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<UserProfileResponse[]> ListTesters(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/testers";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<UserProfileResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the details of all teams that have access to the app.
/// </summary>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
public Task<TeamAppResponse[]> GetTeams(string appName, string ownerName)
{
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/teams";
var queryParameters = new Dictionary<string, string>();
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
return api.Get<TeamAppResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Invites a new or existing user to an app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='userEmail'>
/// The email of the user to invite
/// </param>
[System.Obsolete()]
public Task CreateByEmail(string ownerName, string appName, string userEmail)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (userEmail == null)
{
throw new System.Exception("Parameter 'userEmail' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/invitations/{user_email}";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (userEmail != null)
{
queryParameters.Add("user_email", string.Format("{0}", userEmail));
}
return api.Post(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Update pending invitation permission
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='userEmail'>
/// The email of the user to invite
/// </param>
/// <param name='userInvitationPermissionsData'>
/// The value to update the user permission in the invite.
/// </param>
public Task UpdatePermissions1(string ownerName, string appName, string userEmail, UserInvitationPermissionsUpdateRequest userInvitationPermissionsData = default(UserInvitationPermissionsUpdateRequest))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (userEmail == null)
{
throw new System.Exception("Parameter 'userEmail' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/invitations/{user_email}";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (userEmail != null)
{
queryParameters.Add("user_email", string.Format("{0}", userEmail));
}
return api.Patch(userInvitationPermissionsData, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Removes a user's invitation to an app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='userEmail'>
/// The email of the user to invite
/// </param>
public Task Delete3(string ownerName, string appName, string userEmail)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (userEmail == null)
{
throw new System.Exception("Parameter 'userEmail' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/invitations/{user_email}";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (userEmail != null)
{
queryParameters.Add("user_email", string.Format("{0}", userEmail));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Invites a new or existing user to an app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='userEmail'>
/// The email of the user to invite
/// </param>
public Task Create1(string ownerName, string appName, UserEmailRequest userEmail = default(UserEmailRequest))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (userEmail != null)
{
userEmail.Validate();
}
var path = "/v0.1/apps/{owner_name}/{app_name}/invitations";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post(userEmail, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the pending invitations for the app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<AppInvitationDetailResponse> List2(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/invitations";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<AppInvitationDetailResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Resend distribution group app invite notification to previously invited
/// testers
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='distributionGroupName'>
/// The name of the distribution group
/// </param>
/// <param name='members'>
/// The list of members to resend the invitation
/// </param>
public Task ResendInvite(string ownerName, string appName, string distributionGroupName, DistributionGroupUserRequest members)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
if (members == null)
{
throw new System.Exception("Parameter 'members' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}/resend_invite";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
return api.Post(members, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Remove the users from the distribution group
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='distributionGroupName'>
/// The name of the distribution group
/// </param>
/// <param name='members'>
/// The list of members to delete
/// </param>
public Task<DistributionGroupUserDeleteResponse[]> RemoveUser2(string ownerName, string appName, string distributionGroupName, DistributionGroupUserRequest members)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
if (members == null)
{
throw new System.Exception("Parameter 'members' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}/members/bulk_delete";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
return api.Post<DistributionGroupUserDeleteResponse[]>(members, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a list of member details in the distribution group specified
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='distributionGroupName'>
/// The name of the distribution group
/// </param>
/// <param name='excludePendingInvitations'>
/// Whether to exclude pending invitations in the response
/// </param>
public Task<DistributionGroupUserGetResponse[]> ListUsers(string ownerName, string appName, string distributionGroupName, bool? excludePendingInvitations = default(bool?))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}/members";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
if (excludePendingInvitations != null)
{
queryParameters.Add("exclude_pending_invitations", string.Format("{0}", excludePendingInvitations?.ToString().ToLower()));
}
return api.Get<DistributionGroupUserGetResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Adds the members to the specified distribution group
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='distributionGroupName'>
/// The name of the distribution group
/// </param>
/// <param name='members'>
/// The list of members to add
/// </param>
public Task<DistributionGroupUserPostResponse[]> AddUser1(string ownerName, string appName, string distributionGroupName, DistributionGroupUserRequest members)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
if (members == null)
{
throw new System.Exception("Parameter 'members' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}/members";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
return api.Post<DistributionGroupUserPostResponse[]>(members, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a single distribution group for a given distribution group name
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='distributionGroupName'>
/// The name of the distribution group
/// </param>
public Task<DistributionGroupResponse> Get2(string ownerName, string appName, string distributionGroupName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
return api.Get<DistributionGroupResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Updates the attributes of distribution group
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='distributionGroupName'>
/// The name of the distribution group
/// </param>
/// <param name='distributionGroup'>
/// The attributes to update for the distribution group
/// </param>
public Task<DistributionGroupResponse> Update4(string ownerName, string appName, string distributionGroupName, DistributionGroupPatchRequest distributionGroup)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
if (distributionGroup == null)
{
throw new System.Exception("Parameter 'distributionGroup' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
return api.Patch<DistributionGroupResponse>(distributionGroup, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Deletes a distribution group
/// </summary>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='distributionGroupName'>
/// The name of the distribution group
/// </param>
public Task Delete4(string appName, string ownerName, string distributionGroupName)
{
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (distributionGroupName == null)
{
throw new System.Exception("Parameter 'distributionGroupName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups/{distribution_group_name}";
var queryParameters = new Dictionary<string, string>();
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (distributionGroupName != null)
{
queryParameters.Add("distribution_group_name", string.Format("{0}", distributionGroupName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a list of distribution groups in the app specified
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DistributionGroupResponse[]> List3(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<DistributionGroupResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Creates a new distribution group and returns it to the caller
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='distributionGroup'>
/// The data for the distribution group
/// </param>
public Task<DistributionGroupResponse> Create2(string ownerName, string appName, DistributionGroupRequest distributionGroup)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (distributionGroup == null)
{
throw new System.Exception("Parameter 'distributionGroup' cannot be null");
}
if (distributionGroup != null)
{
distributionGroup.Validate();
}
var path = "/v0.1/apps/{owner_name}/{app_name}/distribution_groups";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<DistributionGroupResponse>(distributionGroup, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Delete the azure subscriptions for the app
/// </summary>
/// <param name='azureSubscriptionId'>
/// The unique ID (UUID) of the azure subscription
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task DeleteForApp(string azureSubscriptionId, string ownerName, string appName)
{
if (azureSubscriptionId == null)
{
throw new System.Exception("Parameter 'azureSubscriptionId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/azure_subscriptions/{azure_subscription_id}";
var queryParameters = new Dictionary<string, string>();
if (azureSubscriptionId != null)
{
queryParameters.Add("azure_subscription_id", string.Format("{0}", azureSubscriptionId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a list of azure subscriptions for the app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<AzureSubscriptionResponse[]> ListForApp(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/azure_subscriptions";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<AzureSubscriptionResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Link azure subscription to an app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='azureSubscriptionToAppData'>
/// The azure subscription data needed to be link to the app.
/// </param>
public Task LinkForApp(string ownerName, string appName, AzureSubscriptionAddToAppRequest azureSubscriptionToAppData)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (azureSubscriptionToAppData == null)
{
throw new System.Exception("Parameter 'azureSubscriptionToAppData' cannot be null");
}
if (azureSubscriptionToAppData != null)
{
azureSubscriptionToAppData.Validate();
}
var path = "/v0.1/apps/{owner_name}/{app_name}/azure_subscriptions";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post(azureSubscriptionToAppData, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Return a specific app with the given app name which belongs to the given
/// owner.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<AppResponse> Get3(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<AppResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Partially updates a single app
/// </summary>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='app'>
/// The partial data for the app
/// </param>
public Task<AppResponse> Update5(string appName, string ownerName, AppPatchRequest app = default(AppPatchRequest))
{
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}";
var queryParameters = new Dictionary<string, string>();
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
return api.Patch<AppResponse>(app, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Delete an app
/// </summary>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
public Task Delete5(string appName, string ownerName)
{
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}";
var queryParameters = new Dictionary<string, string>();
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Creates a new app and returns it to the caller
/// </summary>
/// <param name='app'>
/// The data for the app
/// </param>
public Task<AppResponse> Create3(AppRequest app)
{
if (app == null)
{
throw new System.Exception("Parameter 'app' cannot be null");
}
if (app != null)
{
app.Validate();
}
var path = "/v0.1/apps";
return api.Post<AppResponse>(app, path: path, authenticated: true);
}
/// <summary>
/// Returns a list of apps
/// </summary>
/// <param name='orderBy'>
/// The name of the attribute by which to order the response by. By default,
/// apps are in order of creation. All results are ordered in ascending order.
/// Possible values include: 'display_name', 'name'
/// </param>
public Task<AppResponse[]> List4(OrderBy? orderBy = default(OrderBy?))
{
var path = "/v0.1/apps";
var queryParameters = new Dictionary<string, string>();
if (orderBy != null)
{
queryParameters.Add("$orderBy", string.Format("{0}", orderBy?.GetEnumMember()));
}
return api.Get<AppResponse[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
}
public class CodepushClass
{
AppCenterClientApiKeyApi api;
public CodepushClass(AppCenterClientApiKeyApi api)
{
this.api = api;
}
/// <summary>
/// Check for updates
/// </summary>
/// <param name='deploymentKey'>
/// </param>
/// <param name='appVersion'>
/// </param>
/// <param name='packageHash'>
/// </param>
/// <param name='label'>
/// </param>
/// <param name='clientUniqueId'>
/// </param>
/// <param name='isCompanion'>
/// </param>
/// <param name='previousLabelOrAppVersion'>
/// </param>
/// <param name='previousDeploymentKey'>
/// </param>
public Task<UpdateCheckResponse> UpdateCheck(string deploymentKey, string appVersion, string packageHash = default(string), string label = default(string), string clientUniqueId = default(string), bool? isCompanion = default(bool?), string previousLabelOrAppVersion = default(string), string previousDeploymentKey = default(string))
{
if (deploymentKey == null)
{
throw new System.Exception("Parameter 'deploymentKey' cannot be null");
}
if (appVersion == null)
{
throw new System.Exception("Parameter 'appVersion' cannot be null");
}
var path = "/v0.1/public/hotfix/update_check";
var queryParameters = new Dictionary<string, string>();
if (deploymentKey != null)
{
queryParameters.Add("deployment_key", string.Format("{0}", deploymentKey));
}
if (appVersion != null)
{
queryParameters.Add("app_version", string.Format("{0}", appVersion));
}
if (packageHash != null)
{
queryParameters.Add("package_hash", string.Format("{0}", packageHash));
}
if (label != null)
{
queryParameters.Add("label", string.Format("{0}", label));
}
if (clientUniqueId != null)
{
queryParameters.Add("client_unique_id", string.Format("{0}", clientUniqueId));
}
if (isCompanion != null)
{
queryParameters.Add("is_companion", string.Format("{0}", isCompanion?.ToString().ToLower()));
}
if (previousLabelOrAppVersion != null)
{
queryParameters.Add("previous_label_or_app_version", string.Format("{0}", previousLabelOrAppVersion));
}
if (previousDeploymentKey != null)
{
queryParameters.Add("previous_deployment_key", string.Format("{0}", previousDeploymentKey));
}
return api.Get<UpdateCheckResponse>(path: path, queryParameters: queryParameters, authenticated: false);
}
/// <summary>
/// Returns the acquisition service status to the caller
/// </summary>
public Task<AcquisitionStatusSuccessResponse> GetAcquisitionStatus()
{
var path = "/v0.1/public/hotfix/status";
return api.Get<AcquisitionStatusSuccessResponse>(path: path, authenticated: false);
}
/// <summary>
/// Report download of specified release
/// </summary>
/// <param name='releaseMetadata'>
/// Deployment status metric properties
/// </param>
public Task UpdateDownloadStatus(CodePushStatusMetricMetadata releaseMetadata)
{
if (releaseMetadata == null)
{
throw new System.Exception("Parameter 'releaseMetadata' cannot be null");
}
if (releaseMetadata != null)
{
releaseMetadata.Validate();
}
var path = "/v0.1/public/hotfix/report_status/download";
return api.Post(releaseMetadata, path: path, authenticated: false);
}
/// <summary>
/// Report Deployment status metric
/// </summary>
/// <param name='releaseMetadata'>
/// Deployment status metric properties
/// </param>
public Task UpdateDeployStatus(CodePushStatusMetricMetadata releaseMetadata)
{
if (releaseMetadata == null)
{
throw new System.Exception("Parameter 'releaseMetadata' cannot be null");
}
if (releaseMetadata != null)
{
releaseMetadata.Validate();
}
var path = "/v0.1/public/hotfix/report_status/deploy";
return api.Post(releaseMetadata, path: path, authenticated: false);
}
/// <summary>
/// Rollback the latest or a specific release for an app deployment
/// </summary>
/// <param name='deploymentName'>
/// deployment name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='releaseLabel'>
/// The specific release label that you want to rollback to
/// </param>
public Task<CodePushRelease> Rollback(string deploymentName, string ownerName, string appName, CodePushReleaseLabel releaseLabel = default(CodePushReleaseLabel))
{
if (deploymentName == null)
{
throw new System.Exception("Parameter 'deploymentName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}/rollback_release";
var queryParameters = new Dictionary<string, string>();
if (deploymentName != null)
{
queryParameters.Add("deployment_name", string.Format("{0}", deploymentName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<CodePushRelease>(releaseLabel, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Modifies a CodePush release metadata under the given Deployment
/// </summary>
/// <param name='deploymentName'>
/// deployment name
/// </param>
/// <param name='releaseLabel'>
/// release label
/// </param>
/// <param name='release'>
/// Release modification. All fields are optional and only provided fields will
/// get updated.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<CodePushRelease> Update(string deploymentName, string releaseLabel, CodePushReleaseModification release, string ownerName, string appName)
{
if (deploymentName == null)
{
throw new System.Exception("Parameter 'deploymentName' cannot be null");
}
if (releaseLabel == null)
{
throw new System.Exception("Parameter 'releaseLabel' cannot be null");
}
if (release == null)
{
throw new System.Exception("Parameter 'release' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}/releases/{release_label}";
var queryParameters = new Dictionary<string, string>();
if (deploymentName != null)
{
queryParameters.Add("deployment_name", string.Format("{0}", deploymentName));
}
if (releaseLabel != null)
{
queryParameters.Add("release_label", string.Format("{0}", releaseLabel));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Patch<CodePushRelease>(release, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Clears a Deployment of releases
/// </summary>
/// <param name='deploymentName'>
/// deployment name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task Delete(string deploymentName, string ownerName, string appName)
{
if (deploymentName == null)
{
throw new System.Exception("Parameter 'deploymentName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}/releases";
var queryParameters = new Dictionary<string, string>();
if (deploymentName != null)
{
queryParameters.Add("deployment_name", string.Format("{0}", deploymentName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the history of releases on a Deployment
/// </summary>
/// <param name='deploymentName'>
/// deployment name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<CodePushRelease[]> Get(string deploymentName, string ownerName, string appName)
{
if (deploymentName == null)
{
throw new System.Exception("Parameter 'deploymentName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}/releases";
var queryParameters = new Dictionary<string, string>();
if (deploymentName != null)
{
queryParameters.Add("deployment_name", string.Format("{0}", deploymentName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CodePushRelease[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Create a new CodePush release for the specified deployment
/// </summary>
/// <param name='deploymentName'>
/// deployment name
/// </param>
/// <param name='targetBinaryVersion'>
/// the binary version of the application
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='package'>
/// The upload zip file
/// </param>
/// <param name='deploymentName1'>
/// This specifies which deployment you want to release the update to. Default
/// is Staging.
/// </param>
/// <param name='description'>
/// This provides an optional "change log" for the deployment.
/// </param>
/// <param name='disabled'>
/// This specifies whether an update should be downloadable by end users or
/// not.
/// </param>
/// <param name='mandatory'>
/// This specifies whether the update should be considered mandatory or not
/// (e.g. it includes a critical security fix).
/// </param>
/// <param name='noDuplicateReleaseError'>
/// This specifies that if the update is identical to the latest release on the
/// deployment, the CLI should generate a warning instead of an error.
/// </param>
/// <param name='rollout'>
/// This specifies the percentage of users (as an integer between 1 and 100)
/// that should be eligible to receive this update.
/// </param>
public Task<CodePushRelease> Create(string deploymentName, string targetBinaryVersion, string ownerName, string appName, System.IO.Stream package = default(System.IO.Stream), string deploymentName1 = default(string), string description = default(string), bool? disabled = default(bool?), bool? mandatory = default(bool?), bool? noDuplicateReleaseError = default(bool?), int? rollout = default(int?))
{
if (deploymentName == null)
{
throw new System.Exception("Parameter 'deploymentName' cannot be null");
}
if (targetBinaryVersion == null)
{
throw new System.Exception("Parameter 'targetBinaryVersion' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}/releases";
var queryParameters = new Dictionary<string, string>();
if (deploymentName != null)
{
queryParameters.Add("deployment_name", string.Format("{0}", deploymentName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
var formsParameters = new Dictionary<string, string>();
if (package != null)
{
formsParameters.Add("package", string.Format("{0}", package?.ToString()));
}
if (targetBinaryVersion != null)
{
formsParameters.Add("targetBinaryVersion", string.Format("{0}", targetBinaryVersion));
}
if (deploymentName1 != null)
{
formsParameters.Add("deploymentName", string.Format("{0}", deploymentName1));
}
if (description != null)
{
formsParameters.Add("description", string.Format("{0}", description));
}
if (disabled != null)
{
formsParameters.Add("disabled", string.Format("{0}", disabled?.ToString().ToLower()));
}
if (mandatory != null)
{
formsParameters.Add("mandatory", string.Format("{0}", mandatory?.ToString().ToLower()));
}
if (noDuplicateReleaseError != null)
{
formsParameters.Add("noDuplicateReleaseError", string.Format("{0}", noDuplicateReleaseError?.ToString().ToLower()));
}
if (rollout != null)
{
formsParameters.Add("rollout", string.Format("{0}", rollout?.ToString()));
}
var formsContent = new FormUrlEncodedContent(formsParameters);
return api.Post<CodePushRelease>(formsContent, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Promote one release (default latest one) from one deployment to another
/// </summary>
/// <param name='deploymentName'>
/// deployment name
/// </param>
/// <param name='promoteDeploymentName'>
/// deployment name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='release'>
/// Release to be promoted, only needs to provide optional fields, description,
/// label, disabled, mandatory, rollout, targetBinaryVersion
/// </param>
public Task<CodePushRelease> Promote(string deploymentName, string promoteDeploymentName, string ownerName, string appName, CodePushReleasePromote release = default(CodePushReleasePromote))
{
if (deploymentName == null)
{
throw new System.Exception("Parameter 'deploymentName' cannot be null");
}
if (promoteDeploymentName == null)
{
throw new System.Exception("Parameter 'promoteDeploymentName' cannot be null");
}
if (release != null)
{
release.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}/promote_release/{promote_deployment_name}";
var queryParameters = new Dictionary<string, string>();
if (deploymentName != null)
{
queryParameters.Add("deployment_name", string.Format("{0}", deploymentName));
}
if (promoteDeploymentName != null)
{
queryParameters.Add("promote_deployment_name", string.Format("{0}", promoteDeploymentName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<CodePushRelease>(release, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets all releases metrics for specified Deployment
/// </summary>
/// <param name='deploymentName'>
/// deployment name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<CodePushReleaseMetric[]> Get1(string deploymentName, string ownerName, string appName)
{
if (deploymentName == null)
{
throw new System.Exception("Parameter 'deploymentName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}/metrics";
var queryParameters = new Dictionary<string, string>();
if (deploymentName != null)
{
queryParameters.Add("deployment_name", string.Format("{0}", deploymentName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CodePushReleaseMetric[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Deletes a CodePush Deployment for the given app
/// </summary>
/// <param name='deploymentName'>
/// deployment name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task Delete1(string deploymentName, string ownerName, string appName)
{
if (deploymentName == null)
{
throw new System.Exception("Parameter 'deploymentName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}";
var queryParameters = new Dictionary<string, string>();
if (deploymentName != null)
{
queryParameters.Add("deployment_name", string.Format("{0}", deploymentName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets a CodePush Deployment for the given app
/// </summary>
/// <param name='deploymentName'>
/// deployment name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Deployment> Get2(string deploymentName, string ownerName, string appName)
{
if (deploymentName == null)
{
throw new System.Exception("Parameter 'deploymentName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}";
var queryParameters = new Dictionary<string, string>();
if (deploymentName != null)
{
queryParameters.Add("deployment_name", string.Format("{0}", deploymentName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Deployment>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Modifies a CodePush Deployment for the given app
/// </summary>
/// <param name='deploymentName'>
/// deployment name
/// </param>
/// <param name='deployment'>
/// Deployment modification. All fields are optional and only provided fields
/// will get updated.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task Update1(string deploymentName, DeploymentModification deployment, string ownerName, string appName)
{
if (deploymentName == null)
{
throw new System.Exception("Parameter 'deploymentName' cannot be null");
}
if (deployment == null)
{
throw new System.Exception("Parameter 'deployment' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}";
var queryParameters = new Dictionary<string, string>();
if (deploymentName != null)
{
queryParameters.Add("deployment_name", string.Format("{0}", deploymentName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Patch(deployment, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets a list of CodePush deployments for the given app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Deployment[]> List(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/deployments";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Deployment[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Creates a CodePush Deployment for the given app
/// </summary>
/// <param name='deployment'>
/// Deployment to be created
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Deployment> Create1(Deployment deployment, string ownerName, string appName)
{
if (deployment == null)
{
throw new System.Exception("Parameter 'deployment' cannot be null");
}
if (deployment != null)
{
deployment.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/deployments";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<Deployment>(deployment, path: path, queryParameters: queryParameters, authenticated: true);
}
}
public class BuildOperationsClass
{
AppCenterClientApiKeyApi api;
public BuildOperationsClass(AppCenterClientApiKeyApi api)
{
this.api = api;
}
/// <summary>
/// Gets the Xcode versions available to this app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<XcodeVersion[]> ListXcodeVersions(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/xcode_versions";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<XcodeVersion[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the Xamarin SDK bundles available to this app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<XamarinSDKBundle[]> ListXamarinSDKBundles(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/xamarin_sdk_bundles";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<XamarinSDKBundle[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the repositories available from the source code host
/// </summary>
/// <param name='sourceHost'>
/// The source host. Possible values include: 'github', 'bitbucket', 'vsts'
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='vstsAccountName'>
/// Filter repositories only for specified account and project, "vstsProjectId"
/// is required
/// </param>
/// <param name='vstsProjectId'>
/// Filter repositories only for specified account and project,
/// "vstsAccountName" is required
/// </param>
/// <param name='form'>
/// The selected form of the object. Possible values include: 'lite', 'full'
/// </param>
public Task<SourceRepository[]> List(SourceHost sourceHost, string ownerName, string appName, string vstsAccountName = default(string), string vstsProjectId = default(string), Form? form = default(Form?))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/source_hosts/{source_host}/repositories";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("source_host", string.Format("{0}", sourceHost.GetEnumMember()));
if (vstsAccountName != null)
{
queryParameters.Add("vstsAccountName", string.Format("{0}", vstsAccountName));
}
if (vstsProjectId != null)
{
queryParameters.Add("vstsProjectId", string.Format("{0}", vstsProjectId));
}
if (form != null)
{
queryParameters.Add("form", string.Format("{0}", form?.GetEnumMember()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<SourceRepository[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the repository build configuration status of the app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='includeInactive'>
/// Include inactive configurations if none are active
/// </param>
public Task<RepoConfig[]> List1(string ownerName, string appName, bool? includeInactive = default(bool?))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/repo_config";
var queryParameters = new Dictionary<string, string>();
if (includeInactive != null)
{
queryParameters.Add("includeInactive", string.Format("{0}", includeInactive?.ToString().ToLower()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<RepoConfig[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Configures the repository for build
/// </summary>
/// <param name='repo'>
/// The repository information
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<SuccessResponse> CreateOrUpdate(RepoInfo repo, string ownerName, string appName)
{
if (repo == null)
{
throw new System.Exception("Parameter 'repo' cannot be null");
}
if (repo != null)
{
repo.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/repo_config";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<SuccessResponse>(repo, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Removes the configuration for the respository
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<SuccessResponse> Delete(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/repo_config";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete<SuccessResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the Mono versions available to this app
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<MonoVersion[]> ListMonoVersions(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/mono_versions";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<MonoVersion[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Create a new asset to upload a file
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<FileAsset> Create(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/file_asset";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<FileAsset>(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns commit information for a batch of shas
/// </summary>
/// <param name='hashes'>
/// A collection of commit SHAs comma-delimited
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<CommitDetails[]> ListByShaList(string[] hashes, string ownerName, string appName)
{
if (hashes == null)
{
throw new System.Exception("Parameter 'hashes' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/commits/batch";
var queryParameters = new Dictionary<string, string>();
if (hashes != null)
{
queryParameters.Add("hashes", string.Format("{0}", string.Join(",", hashes)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CommitDetails[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get the build log
/// </summary>
/// <param name='buildId'>
/// The build ID
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<BuildLog> GetLog(int buildId, string ownerName, string appName)
{
if (buildId <= 0)
{
throw new System.Exception("Validation Failed: ExclusiveMinimum, 'buildId', 0");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/builds/{build_id}/logs";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("build_id", string.Format("{0}", buildId.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<BuildLog>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the download URI
/// </summary>
/// <param name='buildId'>
/// The build ID
/// </param>
/// <param name='downloadType'>
/// The download type. Possible values include: 'build', 'symbols', 'logs'
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DownloadContainer> GetDownloadUri(int buildId, DownloadType downloadType, string ownerName, string appName)
{
if (buildId <= 0)
{
throw new System.Exception("Validation Failed: ExclusiveMinimum, 'buildId', 0");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/builds/{build_id}/downloads/{download_type}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("build_id", string.Format("{0}", buildId.ToString()));
queryParameters.Add("download_type", string.Format("{0}", downloadType.GetEnumMember()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<DownloadContainer>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Distribute a build
/// </summary>
/// <param name='buildId'>
/// The build ID
/// </param>
/// <param name='distributeInfo'>
/// The distribution details
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DistributionResponse> DistributeMethod(int buildId, DistributionRequest distributeInfo, string ownerName, string appName)
{
if (buildId <= 0)
{
throw new System.Exception("Validation Failed: ExclusiveMinimum, 'buildId', 0");
}
if (distributeInfo == null)
{
throw new System.Exception("Parameter 'distributeInfo' cannot be null");
}
if (distributeInfo != null)
{
distributeInfo.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/builds/{build_id}/distribute";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("build_id", string.Format("{0}", buildId.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<DistributionResponse>(distributeInfo, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the build detail for the given build ID
/// </summary>
/// <param name='buildId'>
/// The build ID
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Build> Get(int buildId, string ownerName, string appName)
{
if (buildId <= 0)
{
throw new System.Exception("Validation Failed: ExclusiveMinimum, 'buildId', 0");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/builds/{build_id}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("build_id", string.Format("{0}", buildId.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Build>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Cancels a build
/// </summary>
/// <param name='buildId'>
/// The build ID
/// </param>
/// <param name='properties'>
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Build> Update(int buildId, BuildPatch properties, string ownerName, string appName)
{
if (buildId <= 0)
{
throw new System.Exception("Validation Failed: ExclusiveMinimum, 'buildId', 0");
}
if (properties == null)
{
throw new System.Exception("Parameter 'properties' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/builds/{build_id}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("build_id", string.Format("{0}", buildId.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Patch<Build>(properties, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Application specific build service status
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<BuildServiceStatus> GetStatusByAppId(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/build_service_status";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<BuildServiceStatus>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the projects in the repository for the branch, for all toolsets
/// </summary>
/// <param name='branch'>
/// The branch name
/// </param>
/// <param name='os'>
/// The desired OS for the project scan; normally the same as the app OS.
/// Possible values include: 'iOS', 'Android', 'Windows', 'macOS'
/// </param>
/// <param name='platform'>
/// The desired platform for the project scan. Possible values include:
/// 'Objective-C-Swift', 'React-Native', 'Xamarin', 'Java', 'UWP'
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ToolsetProjects> ListToolsetProjects(string branch, Os1 os, Platform platform, string ownerName, string appName)
{
if (branch == null)
{
throw new System.Exception("Parameter 'branch' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/branches/{branch}/toolset_projects";
var queryParameters = new Dictionary<string, string>();
if (branch != null)
{
queryParameters.Add("branch", string.Format("{0}", branch));
}
queryParameters.Add("os", string.Format("{0}", os.GetEnumMember()));
queryParameters.Add("platform", string.Format("{0}", platform.GetEnumMember()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<ToolsetProjects>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the branch configuration
/// </summary>
/// <param name='branch'>
/// The branch name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<BranchConfiguration> Get1(string branch, string ownerName, string appName)
{
if (branch == null)
{
throw new System.Exception("Parameter 'branch' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/branches/{branch}/config";
var queryParameters = new Dictionary<string, string>();
if (branch != null)
{
queryParameters.Add("branch", string.Format("{0}", branch));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<BranchConfiguration>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Configures the branch for build
/// </summary>
/// <param name='branch'>
/// The branch name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<BranchConfiguration> Create1(string branch, string ownerName, string appName)
{
if (branch == null)
{
throw new System.Exception("Parameter 'branch' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/branches/{branch}/config";
var queryParameters = new Dictionary<string, string>();
if (branch != null)
{
queryParameters.Add("branch", string.Format("{0}", branch));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<BranchConfiguration>(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Reconfigures the branch for build
/// </summary>
/// <param name='branch'>
/// The branch name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<BranchConfiguration> Update1(string branch, string ownerName, string appName)
{
if (branch == null)
{
throw new System.Exception("Parameter 'branch' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/branches/{branch}/config";
var queryParameters = new Dictionary<string, string>();
if (branch != null)
{
queryParameters.Add("branch", string.Format("{0}", branch));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Put<BranchConfiguration>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Deletes the branch build configuration
/// </summary>
/// <param name='branch'>
/// The branch name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<SuccessResponse> Delete1(string branch, string ownerName, string appName)
{
if (branch == null)
{
throw new System.Exception("Parameter 'branch' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/branches/{branch}/config";
var queryParameters = new Dictionary<string, string>();
if (branch != null)
{
queryParameters.Add("branch", string.Format("{0}", branch));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete<SuccessResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the list of builds for the branch
/// </summary>
/// <param name='branch'>
/// The branch name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Build[]> ListByBranch(string branch, string ownerName, string appName)
{
if (branch == null)
{
throw new System.Exception("Parameter 'branch' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/branches/{branch}/builds";
var queryParameters = new Dictionary<string, string>();
if (branch != null)
{
queryParameters.Add("branch", string.Format("{0}", branch));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Build[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Create a build
/// </summary>
/// <param name='branch'>
/// The branch name
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='paramsParameter'>
/// Parameters of the build
/// </param>
public Task<Build> Create2(string branch, string ownerName, string appName, BuildParams paramsParameter = default(BuildParams))
{
if (branch == null)
{
throw new System.Exception("Parameter 'branch' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/branches/{branch}/builds";
var queryParameters = new Dictionary<string, string>();
if (branch != null)
{
queryParameters.Add("branch", string.Format("{0}", branch));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<Build>(paramsParameter, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the list of Git branches for this application
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<BranchStatus[]> ListBranches(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/branches";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<BranchStatus[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
}
public class CrashOperationsClass
{
AppCenterClientApiKeyApi api;
public CrashOperationsClass(AppCenterClientApiKeyApi api)
{
this.api = api;
}
/// <summary>
/// Gets a list of application versions
/// </summary>
/// <remarks>
/// Gets a list of application versions
/// </remarks>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<AppVersion[]> GetAppVersions(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/versions";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<AppVersion[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a particular symbol by id (uuid) for the provided application
/// </summary>
/// <param name='symbolId'>
/// The ID of the symbol (uuid of the symbol)
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<SymbolStatusResponse> GetStatus(string symbolId, string ownerName, string appName)
{
if (symbolId == null)
{
throw new System.Exception("Parameter 'symbolId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbols/{symbol_id}/status";
var queryParameters = new Dictionary<string, string>();
if (symbolId != null)
{
queryParameters.Add("symbol_id", string.Format("{0}", symbolId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<SymbolStatusResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the URL to download the symbol
/// </summary>
/// <param name='symbolId'>
/// The ID of the symbol (uuid of the symbol)
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<SymbolLocation> GetLocation(string symbolId, string ownerName, string appName)
{
if (symbolId == null)
{
throw new System.Exception("Parameter 'symbolId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbols/{symbol_id}/location";
var queryParameters = new Dictionary<string, string>();
if (symbolId != null)
{
queryParameters.Add("symbol_id", string.Format("{0}", symbolId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<SymbolLocation>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Marks a symbol by id (uuid) as ignored
/// </summary>
/// <param name='symbolId'>
/// The ID of the symbol (uuid of the symbol)
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Symbol> Ignore(string symbolId, string ownerName, string appName)
{
if (symbolId == null)
{
throw new System.Exception("Parameter 'symbolId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbols/{symbol_id}/ignore";
var queryParameters = new Dictionary<string, string>();
if (symbolId != null)
{
queryParameters.Add("symbol_id", string.Format("{0}", symbolId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<Symbol>(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a particular symbol by id (uuid) for the provided application
/// </summary>
/// <param name='symbolId'>
/// The ID of the symbol (uuid of the symbol)
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Symbol> Get(string symbolId, string ownerName, string appName)
{
if (symbolId == null)
{
throw new System.Exception("Parameter 'symbolId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbols/{symbol_id}";
var queryParameters = new Dictionary<string, string>();
if (symbolId != null)
{
queryParameters.Add("symbol_id", string.Format("{0}", symbolId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Symbol>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns the list of all symbols for the provided application
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Symbol[]> List(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbols";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Symbol[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the URL to download the symbol upload
/// </summary>
/// <param name='symbolUploadId'>
/// The ID of the symbol upload
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<SymbolUploadLocation> GetLocation1(string symbolUploadId, string ownerName, string appName)
{
if (symbolUploadId == null)
{
throw new System.Exception("Parameter 'symbolUploadId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}/location";
var queryParameters = new Dictionary<string, string>();
if (symbolUploadId != null)
{
queryParameters.Add("symbol_upload_id", string.Format("{0}", symbolUploadId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<SymbolUploadLocation>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets a symbol upload by id for the specified application
/// </summary>
/// <param name='symbolUploadId'>
/// The ID of the symbol upload
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<SymbolUpload> Get1(string symbolUploadId, string ownerName, string appName)
{
if (symbolUploadId == null)
{
throw new System.Exception("Parameter 'symbolUploadId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}";
var queryParameters = new Dictionary<string, string>();
if (symbolUploadId != null)
{
queryParameters.Add("symbol_upload_id", string.Format("{0}", symbolUploadId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<SymbolUpload>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Commits or aborts the symbol upload process for a new set of symbols for
/// the specified application
/// </summary>
/// <param name='symbolUploadId'>
/// The ID of the symbol upload
/// </param>
/// <param name='body'>
/// The symbol information
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<SymbolUpload> Complete(string symbolUploadId, SymbolUploadEndRequest body, string ownerName, string appName)
{
if (symbolUploadId == null)
{
throw new System.Exception("Parameter 'symbolUploadId' cannot be null");
}
if (body == null)
{
throw new System.Exception("Parameter 'body' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}";
var queryParameters = new Dictionary<string, string>();
if (symbolUploadId != null)
{
queryParameters.Add("symbol_upload_id", string.Format("{0}", symbolUploadId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Patch<SymbolUpload>(body, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Deletes a symbol upload by id for the specified application
/// </summary>
/// <param name='symbolUploadId'>
/// The ID of the symbol upload
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<SymbolUpload> Delete(string symbolUploadId, string ownerName, string appName)
{
if (symbolUploadId == null)
{
throw new System.Exception("Parameter 'symbolUploadId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}";
var queryParameters = new Dictionary<string, string>();
if (symbolUploadId != null)
{
queryParameters.Add("symbol_upload_id", string.Format("{0}", symbolUploadId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete<SymbolUpload>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets a list of all uploads for the specified application
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='top'>
/// The maximum number of results to return.
/// </param>
/// <param name='status'>
/// Filter results by the current status of a symbol upload: * all: all states
/// in the symbol upload process. Includes created, aborted, committed,
/// processing, indexed and failed states * uploaded: all states after package
/// is uploaded. Includes committed, processing, indexed and failed states *
/// processed: symbol upload processing is completed. Includes indexed and
/// failed states.
/// . Possible values include: 'all', 'uploaded', 'processed'
/// </param>
public Task<SymbolUpload[]> List1(string ownerName, string appName, long? top = 30, Status? status = default(Status?))
{
if (top > 100)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'top', 100");
}
if (top < 1)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'top', 1");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbol_uploads";
var queryParameters = new Dictionary<string, string>();
if (top != null)
{
queryParameters.Add("top", string.Format("{0}", top?.ToString()));
}
if (status != null)
{
queryParameters.Add("status", string.Format("{0}", status?.GetEnumMember()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<SymbolUpload[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Begins the symbol upload process for a new set of symbols for the specified
/// application
/// </summary>
/// <param name='body'>
/// The symbol information
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<SymbolUploadBeginResponse> Create(SymbolUploadBeginRequest body, string ownerName, string appName)
{
if (body == null)
{
throw new System.Exception("Parameter 'body' cannot be null");
}
if (body != null)
{
body.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbol_uploads";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<SymbolUploadBeginResponse>(body, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets application level statistics for all missing symbol groups
/// </summary>
/// <remarks>
/// Gets application level statistics for all missing symbol groups
/// </remarks>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<MissingSymbolCrashGroupsInfoResponse> Info(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbol_groups_info";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<MissingSymbolCrashGroupsInfoResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets missing symbol crash group by its id
/// </summary>
/// <remarks>
/// Gets missing symbol crash group by its id
/// </remarks>
/// <param name='symbolGroupId'>
/// missing symbol crash group id
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<MissingSymbolCrashGroupsResponse> Get2(string symbolGroupId, string ownerName, string appName)
{
if (symbolGroupId == null)
{
throw new System.Exception("Parameter 'symbolGroupId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbol_groups/{symbol_group_id}";
var queryParameters = new Dictionary<string, string>();
if (symbolGroupId != null)
{
queryParameters.Add("symbol_group_id", string.Format("{0}", symbolGroupId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<MissingSymbolCrashGroupsResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets top N (ordered by crash count) of crash groups by missing symbol
/// </summary>
/// <remarks>
/// Gets top N (ordered by crash count) of crash groups by missing symbol
/// </remarks>
/// <param name='top'>
/// top N elements
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='filter'>
/// query filter
/// </param>
public Task<MissingSymbolCrashGroupsResponse> List2(int top, string ownerName, string appName, string filter = default(string))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/symbol_groups";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("top", string.Format("{0}", top.ToString()));
if (filter != null)
{
queryParameters.Add("filter", string.Format("{0}", filter));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<MissingSymbolCrashGroupsResponse>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the state of HockeyApp Crash forwarding for SxS apps
/// </summary>
/// <remarks>
/// Gets the state of HockeyApp Crash forwarding for SxS apps
/// </remarks>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<HockeyAppCrashForwardingInfo> GetHockeyAppCrashForwardingStatus(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/hockeyapp_crash_forwarding";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<HockeyAppCrashForwardingInfo>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Enable HockeyApp crash forwarding for SxS apps
/// </summary>
/// <remarks>
/// Enable HockeyApp crash forwarding for SxS apps
/// </remarks>
/// <param name='body'>
/// Enable Forwarding
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<HockeyAppCrashForwardingInfo> UpdateHockeyAppCrashForwarding(HockeyAppCrashForwardingChange body, string ownerName, string appName)
{
if (body == null)
{
throw new System.Exception("Parameter 'body' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/hockeyapp_crash_forwarding";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Patch<HockeyAppCrashForwardingInfo>(body, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets whether the application has any crashes
/// </summary>
/// <remarks>
/// Gets whether the application has any crashes
/// </remarks>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<AppCrashesInfo> GetAppCrashesInfo(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crashes_info";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<AppCrashesInfo>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets content of the text attachment
/// </summary>
/// <param name='crashId'>
/// id of a specific crash
/// </param>
/// <param name='attachmentId'>
/// attachment id
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<string> GetCrashTextAttachmentContent(string crashId, string attachmentId, string ownerName, string appName)
{
if (crashId == null)
{
throw new System.Exception("Parameter 'crashId' cannot be null");
}
if (attachmentId == null)
{
throw new System.Exception("Parameter 'attachmentId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crashes/{crash_id}/attachments/{attachment_id}/text";
var queryParameters = new Dictionary<string, string>();
if (crashId != null)
{
queryParameters.Add("crash_id", string.Format("{0}", crashId));
}
if (attachmentId != null)
{
queryParameters.Add("attachment_id", string.Format("{0}", attachmentId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<string>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the URI location to download crash attachment
/// </summary>
/// <param name='crashId'>
/// id of a specific crash
/// </param>
/// <param name='attachmentId'>
/// attachment id
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<CrashAttachmentLocation> GetCrashAttachmentLocation(string crashId, string attachmentId, string ownerName, string appName)
{
if (crashId == null)
{
throw new System.Exception("Parameter 'crashId' cannot be null");
}
if (attachmentId == null)
{
throw new System.Exception("Parameter 'attachmentId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crashes/{crash_id}/attachments/{attachment_id}/location";
var queryParameters = new Dictionary<string, string>();
if (crashId != null)
{
queryParameters.Add("crash_id", string.Format("{0}", crashId));
}
if (attachmentId != null)
{
queryParameters.Add("attachment_id", string.Format("{0}", attachmentId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CrashAttachmentLocation>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets all attachments for a specific crash
/// </summary>
/// <param name='crashId'>
/// id of a specific crash
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<CrashAttachment[]> ListAttachments(string crashId, string ownerName, string appName)
{
if (crashId == null)
{
throw new System.Exception("Parameter 'crashId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crashes/{crash_id}/attachments";
var queryParameters = new Dictionary<string, string>();
if (crashId != null)
{
queryParameters.Add("crash_id", string.Format("{0}", crashId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CrashAttachment[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets a stacktrace for a specific crash
/// </summary>
/// <param name='crashGroupId'>
/// id of a specific group
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='groupingOnly'>
/// true if the stacktrace should be only the relevant thread / exception.
/// Default is false
/// </param>
public Task<Stacktrace> GetStacktrace(string crashGroupId, string ownerName, string appName, bool? groupingOnly = false)
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/stacktrace";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (groupingOnly != null)
{
queryParameters.Add("grouping_only", string.Format("{0}", groupingOnly?.ToString().ToLower()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Stacktrace>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets a stacktrace for a specific crash
/// </summary>
/// <param name='crashGroupId'>
/// id of a specific group
/// </param>
/// <param name='crashId'>
/// id of a specific crash
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='groupingOnly'>
/// true if the stacktrace should be only the relevant thread / exception.
/// Default is false
/// </param>
public Task<Stacktrace> GetStacktrace1(string crashGroupId, string crashId, string ownerName, string appName, bool? groupingOnly = false)
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (crashId == null)
{
throw new System.Exception("Parameter 'crashId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes/{crash_id}/stacktrace";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (crashId != null)
{
queryParameters.Add("crash_id", string.Format("{0}", crashId));
}
if (groupingOnly != null)
{
queryParameters.Add("grouping_only", string.Format("{0}", groupingOnly?.ToString().ToLower()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Stacktrace>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the URI location to download json of a specific crash
/// </summary>
/// <param name='crashGroupId'>
/// id of a specific group
/// </param>
/// <param name='crashId'>
/// id of a specific crash
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<CrashRawLocation> GetRawCrashLocation(string crashGroupId, string crashId, string ownerName, string appName)
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (crashId == null)
{
throw new System.Exception("Parameter 'crashId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes/{crash_id}/raw/location";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (crashId != null)
{
queryParameters.Add("crash_id", string.Format("{0}", crashId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CrashRawLocation>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the native log of a specific crash as a text attachment
/// </summary>
/// <remarks>
/// Gets the native log of a specific crash as a text attachment
/// </remarks>
/// <param name='crashGroupId'>
/// id of a specific group
/// </param>
/// <param name='crashId'>
/// id of a specific crash
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<string> GetNativeCrashDownload(string crashGroupId, string crashId, string ownerName, string appName)
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (crashId == null)
{
throw new System.Exception("Parameter 'crashId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes/{crash_id}/native/download";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (crashId != null)
{
queryParameters.Add("crash_id", string.Format("{0}", crashId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<string>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets the native log of a specific crash
/// </summary>
/// <remarks>
/// Gets the native log of a specific crash
/// </remarks>
/// <param name='crashGroupId'>
/// id of a specific group
/// </param>
/// <param name='crashId'>
/// id of a specific crash
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<string> GetNativeCrash(string crashGroupId, string crashId, string ownerName, string appName)
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (crashId == null)
{
throw new System.Exception("Parameter 'crashId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes/{crash_id}/native";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (crashId != null)
{
queryParameters.Add("crash_id", string.Format("{0}", crashId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<string>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets a specific crash for an app
/// </summary>
/// <param name='crashGroupId'>
/// id of a specific group
/// </param>
/// <param name='crashId'>
/// id of a specific crash
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='includeReport'>
/// true if the crash should include the raw crash report. Default is false
/// </param>
/// <param name='includeLog'>
/// true if the crash should include the custom log report. Default is false
/// </param>
/// <param name='includeDetails'>
/// true if the crash should include in depth crash details
/// </param>
/// <param name='includeStacktrace'>
/// true if the crash should include the stacktrace information
/// </param>
/// <param name='groupingOnly'>
/// true if the stacktrace should be only the relevant thread / exception.
/// Default is false
/// </param>
public Task<Crash> Get3(string crashGroupId, string crashId, string ownerName, string appName, bool? includeReport = false, bool? includeLog = false, bool? includeDetails = false, bool? includeStacktrace = false, bool? groupingOnly = false)
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (crashId == null)
{
throw new System.Exception("Parameter 'crashId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes/{crash_id}";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (crashId != null)
{
queryParameters.Add("crash_id", string.Format("{0}", crashId));
}
if (includeReport != null)
{
queryParameters.Add("include_report", string.Format("{0}", includeReport?.ToString().ToLower()));
}
if (includeLog != null)
{
queryParameters.Add("include_log", string.Format("{0}", includeLog?.ToString().ToLower()));
}
if (includeDetails != null)
{
queryParameters.Add("include_details", string.Format("{0}", includeDetails?.ToString().ToLower()));
}
if (includeStacktrace != null)
{
queryParameters.Add("include_stacktrace", string.Format("{0}", includeStacktrace?.ToString().ToLower()));
}
if (groupingOnly != null)
{
queryParameters.Add("grouping_only", string.Format("{0}", groupingOnly?.ToString().ToLower()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Crash>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets all crashes of a group
/// </summary>
/// <param name='crashGroupId'>
/// id of a specific group
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='includeReport'>
/// true if the crash should include the raw crash report. Default is false
/// </param>
/// <param name='includeLog'>
/// true if the crash should include the custom log report. Default is false
/// </param>
/// <param name='dateFrom'>
/// </param>
/// <param name='dateTo'>
/// </param>
/// <param name='appVersion'>
/// version
/// </param>
/// <param name='errorType'>
/// Possible values include: 'CrashingErrors', 'HandledErrors'
/// </param>
public Task<Crash[]> List3(string crashGroupId, string ownerName, string appName, bool? includeReport = false, bool? includeLog = false, System.DateTime? dateFrom = default(System.DateTime?), System.DateTime? dateTo = default(System.DateTime?), string appVersion = default(string), ErrorType? errorType = default(ErrorType?))
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (includeReport != null)
{
queryParameters.Add("include_report", string.Format("{0}", includeReport?.ToString().ToLower()));
}
if (includeLog != null)
{
queryParameters.Add("include_log", string.Format("{0}", includeLog?.ToString().ToLower()));
}
if (dateFrom != null)
{
queryParameters.Add("date_from", string.Format("{0}", dateFrom?.ToString()));
}
if (dateTo != null)
{
queryParameters.Add("date_to", string.Format("{0}", dateTo?.ToString()));
}
if (appVersion != null)
{
queryParameters.Add("app_version", string.Format("{0}", appVersion));
}
if (errorType != null)
{
queryParameters.Add("error_type", string.Format("{0}", errorType?.GetEnumMember()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Crash[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets a specific group
/// </summary>
/// <param name='crashGroupId'>
/// id of a specific group
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<CrashGroup> Get4(string crashGroupId, string ownerName, string appName)
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CrashGroup>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Updates a group
/// </summary>
/// <param name='crashGroupId'>
/// id of a specific group
/// </param>
/// <param name='group'>
/// Group change object. All fields are optional and only provided fields will
/// get updated.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<CrashGroup> Update(string crashGroupId, CrashGroupChange group, string ownerName, string appName)
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (group == null)
{
throw new System.Exception("Parameter 'group' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Patch<CrashGroup>(group, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets a list of crash groups and whether the list contains all available
/// groups.
/// </summary>
/// <remarks>
/// Gets a list of crash groups and whether the list contains all available
/// groups.
/// </remarks>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='lastOccurrenceFrom'>
/// Earliest date when the last time a crash occured in a crash group
/// </param>
/// <param name='lastOccurrenceTo'>
/// Latest date when the last time a crash occured in a crash group
/// </param>
/// <param name='appVersion'>
/// version
/// </param>
/// <param name='groupType'>
/// Possible values include: 'GroupType1', 'GroupType2'
/// </param>
/// <param name='groupStatus'>
/// Possible values include: 'open', 'closed', 'ignored'
/// </param>
/// <param name='groupTextSearch'>
/// A freetext search that matches in crash, crash types, crash stack_traces
/// and crash user
/// </param>
/// <param name='orderby'>
/// the OData-like $orderby argument. Possible values include: 'last_occurrence
/// asc', 'last_occurrence desc', 'count asc', 'count desc', 'display_id asc',
/// 'display_id desc', 'impacted_users asc', 'impacted_users desc'
/// </param>
/// <param name='continuationToken'>
/// Cassandra request continuation token. The token is used for pagination.
/// </param>
public Task<CrashGroupsContainer> List4(string ownerName, string appName, System.DateTime? lastOccurrenceFrom = default(System.DateTime?), System.DateTime? lastOccurrenceTo = default(System.DateTime?), string appVersion = default(string), GroupType? groupType = default(GroupType?), GroupStatus? groupStatus = default(GroupStatus?), string groupTextSearch = default(string), Orderby3? orderby = default(Orderby3?), string continuationToken = default(string))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crash_groups";
var queryParameters = new Dictionary<string, string>();
if (lastOccurrenceFrom != null)
{
queryParameters.Add("last_occurrence_from", string.Format("{0}", lastOccurrenceFrom?.ToString()));
}
if (lastOccurrenceTo != null)
{
queryParameters.Add("last_occurrence_to", string.Format("{0}", lastOccurrenceTo?.ToString()));
}
if (appVersion != null)
{
queryParameters.Add("app_version", string.Format("{0}", appVersion));
}
if (groupType != null)
{
queryParameters.Add("group_type", string.Format("{0}", groupType?.GetEnumMember()));
}
if (groupStatus != null)
{
queryParameters.Add("group_status", string.Format("{0}", groupStatus?.GetEnumMember()));
}
if (groupTextSearch != null)
{
queryParameters.Add("group_text_search", string.Format("{0}", groupTextSearch));
}
if (orderby != null)
{
queryParameters.Add("$orderby", string.Format("{0}", orderby?.GetEnumMember()));
}
if (continuationToken != null)
{
queryParameters.Add("continuation_token", string.Format("{0}", continuationToken));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CrashGroupsContainer>(path: path, queryParameters: queryParameters, authenticated: true);
}
}
public class TestClass
{
AppCenterClientApiKeyApi api;
public TestClass(AppCenterClientApiKeyApi api)
{
this.api = api;
}
/// <summary>
/// Gets a device set belonging to the user
/// </summary>
/// <param name='id'>
/// The UUID of the device set
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DeviceSet> GetDeviceSetOfUser(System.Guid id, string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/user/device_sets/{id}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("id", string.Format("{0}", id.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<DeviceSet>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Updates a device set belonging to the user
/// </summary>
/// <param name='id'>
/// The UUID of the device set
/// </param>
/// <param name='deviceSet'>
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DeviceSet> UpdateDeviceSetOfUser(System.Guid id, DeviceSetUpdate deviceSet, string ownerName, string appName)
{
if (deviceSet == null)
{
throw new System.Exception("Parameter 'deviceSet' cannot be null");
}
if (deviceSet != null)
{
deviceSet.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/user/device_sets/{id}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("id", string.Format("{0}", id.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Put<DeviceSet>(deviceSet, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Deletes a device set belonging to the user
/// </summary>
/// <param name='id'>
/// The UUID of the device set
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task DeleteDeviceSetOfUser(System.Guid id, string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/user/device_sets/{id}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("id", string.Format("{0}", id.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Lists device sets belonging to the user
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DeviceSet[]> ListDeviceSetsOfUser(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/user/device_sets";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<DeviceSet[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Creates a device set belonging to the user
/// </summary>
/// <param name='deviceSet'>
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DeviceSet> CreateDeviceSetOfUser(DeviceSetUpdate deviceSet, string ownerName, string appName)
{
if (deviceSet == null)
{
throw new System.Exception("Parameter 'deviceSet' cannot be null");
}
if (deviceSet != null)
{
deviceSet.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/user/device_sets";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<DeviceSet>(deviceSet, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns list of all test runs for a given test series
/// </summary>
/// <param name='testSeriesSlug'>
/// The slug of the test series
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestRun[]> GetAllTestRunsForSeries(string testSeriesSlug, string ownerName, string appName)
{
if (testSeriesSlug == null)
{
throw new System.Exception("Parameter 'testSeriesSlug' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_series/{test_series_slug}/test_runs";
var queryParameters = new Dictionary<string, string>();
if (testSeriesSlug != null)
{
queryParameters.Add("test_series_slug", string.Format("{0}", testSeriesSlug));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<TestRun[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Deletes a single test series
/// </summary>
/// <param name='testSeriesSlug'>
/// The slug of the test series
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task DeleteTestSeries(string testSeriesSlug, string ownerName, string appName)
{
if (testSeriesSlug == null)
{
throw new System.Exception("Parameter 'testSeriesSlug' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_series/{test_series_slug}";
var queryParameters = new Dictionary<string, string>();
if (testSeriesSlug != null)
{
queryParameters.Add("test_series_slug", string.Format("{0}", testSeriesSlug));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Updates name and slug of a test series
/// </summary>
/// <param name='testSeriesSlug'>
/// The slug of the test series
/// </param>
/// <param name='name'>
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestSeries> PatchTestSeries(string testSeriesSlug, TestSeriesName name, string ownerName, string appName)
{
if (testSeriesSlug == null)
{
throw new System.Exception("Parameter 'testSeriesSlug' cannot be null");
}
if (name == null)
{
throw new System.Exception("Parameter 'name' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_series/{test_series_slug}";
var queryParameters = new Dictionary<string, string>();
if (testSeriesSlug != null)
{
queryParameters.Add("test_series_slug", string.Format("{0}", testSeriesSlug));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Patch<TestSeries>(name, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns list of all test series for an application
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestSeries[]> GetAllTestSeries(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_series";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<TestSeries[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Creates new test series for an application
/// </summary>
/// <param name='testSeriesName'>
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestSeries> CreateTestSeries(TestSeriesName testSeriesName, string ownerName, string appName)
{
if (testSeriesName == null)
{
throw new System.Exception("Parameter 'testSeriesName' cannot be null");
}
if (testSeriesName != null)
{
testSeriesName.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_series";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<TestSeries>(testSeriesName, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Stop a test run execution
/// </summary>
/// <param name='testRunId'>
/// The ID of the test run to be stopped
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestRun> StopTestRun(string testRunId, string ownerName, string appName)
{
if (testRunId == null)
{
throw new System.Exception("Parameter 'testRunId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_runs/{test_run_id}/stop";
var queryParameters = new Dictionary<string, string>();
if (testRunId != null)
{
queryParameters.Add("test_run_id", string.Format("{0}", testRunId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Put<TestRun>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets state of the test run
/// </summary>
/// <param name='testRunId'>
/// The ID of the test run
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestRunState> GetTestRunState(string testRunId, string ownerName, string appName)
{
if (testRunId == null)
{
throw new System.Exception("Parameter 'testRunId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_runs/{test_run_id}/state";
var queryParameters = new Dictionary<string, string>();
if (testRunId != null)
{
queryParameters.Add("test_run_id", string.Format("{0}", testRunId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<TestRunState>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Starts test run
/// </summary>
/// <param name='testRunId'>
/// The ID of the test run
/// </param>
/// <param name='startOptions'>
/// Option required to start the test run
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestCloudStartTestRunResult> StartTestRun(string testRunId, TestCloudStartTestRunOptions startOptions, string ownerName, string appName)
{
if (testRunId == null)
{
throw new System.Exception("Parameter 'testRunId' cannot be null");
}
if (startOptions == null)
{
throw new System.Exception("Parameter 'startOptions' cannot be null");
}
if (startOptions != null)
{
startOptions.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_runs/{test_run_id}/start";
var queryParameters = new Dictionary<string, string>();
if (testRunId != null)
{
queryParameters.Add("test_run_id", string.Format("{0}", testRunId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<TestCloudStartTestRunResult>(startOptions, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a single test report
/// </summary>
/// <param name='testRunId'>
/// The ID of the test run
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestReport> GetTestReport(System.Guid testRunId, string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_runs/{test_run_id}/report";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("test_run_id", string.Format("{0}", testRunId.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<TestReport>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Adds file with the given hash to a test run
/// </summary>
/// <param name='testRunId'>
/// The ID of the test run
/// </param>
/// <param name='fileInfo'>
/// File hash information
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestCloudFileHashResponse[]> UploadHashesBatch(string testRunId, TestCloudFileHash[] fileInfo, string ownerName, string appName)
{
if (testRunId == null)
{
throw new System.Exception("Parameter 'testRunId' cannot be null");
}
if (fileInfo == null)
{
throw new System.Exception("Parameter 'fileInfo' cannot be null");
}
if (fileInfo != null)
{
foreach (var element in fileInfo)
{
if (element != null)
{
element.Validate();
}
}
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_runs/{test_run_id}/hashes/batch";
var queryParameters = new Dictionary<string, string>();
if (testRunId != null)
{
queryParameters.Add("test_run_id", string.Format("{0}", testRunId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<TestCloudFileHashResponse[]>(fileInfo, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Adds file with the given hash to a test run
/// </summary>
/// <param name='testRunId'>
/// The ID of the test run
/// </param>
/// <param name='fileInfo'>
/// File hash information
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestUploadHashHeaders> UploadHash(string testRunId, TestCloudFileHashDeprecated fileInfo, string ownerName, string appName)
{
if (testRunId == null)
{
throw new System.Exception("Parameter 'testRunId' cannot be null");
}
if (fileInfo == null)
{
throw new System.Exception("Parameter 'fileInfo' cannot be null");
}
if (fileInfo != null)
{
fileInfo.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_runs/{test_run_id}/hashes";
var queryParameters = new Dictionary<string, string>();
if (testRunId != null)
{
queryParameters.Add("test_run_id", string.Format("{0}", testRunId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<TestUploadHashHeaders>(fileInfo, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Uploads file for a test run
/// </summary>
/// <param name='testRunId'>
/// The ID of the test run
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestStartUploadingFileHeaders> StartUploadingFile(string testRunId, string ownerName, string appName)
{
if (testRunId == null)
{
throw new System.Exception("Parameter 'testRunId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_runs/{test_run_id}/files";
var queryParameters = new Dictionary<string, string>();
if (testRunId != null)
{
queryParameters.Add("test_run_id", string.Format("{0}", testRunId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<TestStartUploadingFileHeaders>(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a single test runs
/// </summary>
/// <param name='testRunId'>
/// The ID of the test run
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestRun> GetTestRun(System.Guid testRunId, string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_runs/{test_run_id}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("test_run_id", string.Format("{0}", testRunId.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<TestRun>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Logically deletes a test run
/// </summary>
/// <param name='testRunId'>
/// The ID of the test run
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestRun> ArchiveTestRun(System.Guid testRunId, string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_runs/{test_run_id}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("test_run_id", string.Format("{0}", testRunId.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete<TestRun>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a list of test runs
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestRun[]> GetTestRuns(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_runs";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<TestRun[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Creates a new test run
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<TestCreateTestRunHeaders> CreateTestRun(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/test_runs";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<TestCreateTestRunHeaders>(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get information about the currently active subscriptions, if any
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Subscription> GetSubscriptions(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/subscriptions";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Subscription>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Accept a free trial subscription
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Subscription> CreateSubscription(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/subscriptions";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<Subscription>(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets a device set belonging to the owner
/// </summary>
/// <param name='id'>
/// The UUID of the device set
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DeviceSet> GetDeviceSetOfOwner(System.Guid id, string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/owner/device_sets/{id}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("id", string.Format("{0}", id.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<DeviceSet>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Updates a device set belonging to the owner
/// </summary>
/// <param name='id'>
/// The UUID of the device set
/// </param>
/// <param name='deviceSet'>
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DeviceSet> UpdateDeviceSetOfOwner(System.Guid id, DeviceSetUpdate deviceSet, string ownerName, string appName)
{
if (deviceSet == null)
{
throw new System.Exception("Parameter 'deviceSet' cannot be null");
}
if (deviceSet != null)
{
deviceSet.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/owner/device_sets/{id}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("id", string.Format("{0}", id.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Put<DeviceSet>(deviceSet, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Deletes a device set belonging to the owner
/// </summary>
/// <param name='id'>
/// The UUID of the device set
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task DeleteDeviceSetOfOwner(System.Guid id, string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/owner/device_sets/{id}";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("id", string.Format("{0}", id.ToString()));
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Lists device sets belonging to the owner
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DeviceSet[]> ListDeviceSetsOfOwner(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/owner/device_sets";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<DeviceSet[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Creates a device set belonging to the owner
/// </summary>
/// <param name='deviceSet'>
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DeviceSet> CreateDeviceSetOfOwner(DeviceSetUpdate deviceSet, string ownerName, string appName)
{
if (deviceSet == null)
{
throw new System.Exception("Parameter 'deviceSet' cannot be null");
}
if (deviceSet != null)
{
deviceSet.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/owner/device_sets";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<DeviceSet>(deviceSet, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Creates a short ID for a list of devices
/// </summary>
/// <param name='deviceList'>
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<DeviceSelection> CreateDeviceSelection(DeviceList deviceList, string ownerName, string appName)
{
if (deviceList == null)
{
throw new System.Exception("Parameter 'deviceList' cannot be null");
}
if (deviceList != null)
{
deviceList.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/device_selection";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<DeviceSelection>(deviceList, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns a list of available devices
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='appUploadId'>
/// The ID of the test run
/// </param>
public Task<DeviceConfiguration[]> GetDeviceConfigurations(string ownerName, string appName, System.Guid? appUploadId = default(System.Guid?))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/device_configurations";
var queryParameters = new Dictionary<string, string>();
if (appUploadId != null)
{
queryParameters.Add("app_upload_id", string.Format("{0}", appUploadId?.ToString()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<DeviceConfiguration[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
}
public class PushClass
{
AppCenterClientApiKeyApi api;
public PushClass(AppCenterClientApiKeyApi api)
{
this.api = api;
}
/// <summary>
/// Returns whether push config exists.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task ConfigExists(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/push/notifications_config";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Head(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get configuration.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<NotificationConfigResult> GetConfig(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/push/notifications_config";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<NotificationConfigResult>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Set notification configuration.
/// </summary>
/// <param name='properties'>
/// Notification configurations.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<NotificationConfigResult> SetConfig(NotificationConfig properties, string ownerName, string appName)
{
if (properties == null)
{
throw new System.Exception("Parameter 'properties' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/push/notifications_config";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Put<NotificationConfigResult>(properties, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Delete notification configuration.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task DeleteConfig(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/push/notifications_config";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get notification details.
/// </summary>
/// <param name='notificationId'>
/// The id of the notification.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<NotificationDetailsResult> Get(string notificationId, string ownerName, string appName)
{
if (notificationId == null)
{
throw new System.Exception("Parameter 'notificationId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/push/notifications/{notification_id}";
var queryParameters = new Dictionary<string, string>();
if (notificationId != null)
{
queryParameters.Add("notification_id", string.Format("{0}", notificationId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<NotificationDetailsResult>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Archive push campaign(s)
/// </summary>
/// <param name='notificationIds'>
/// List of notification ids
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task NotificationArchive(NotificationIdList notificationIds, string ownerName, string appName)
{
if (notificationIds == null)
{
throw new System.Exception("Parameter 'notificationIds' cannot be null");
}
if (notificationIds != null)
{
notificationIds.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/push/notifications/campaign/archive";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post(notificationIds, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get list of notifications
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='top'>
/// The maximum number of results to return. (0 will fetch all results)
/// </param>
/// <param name='skiptoken'>
/// The value identifies a starting point in the collection of entities. This
/// parameter along with limit is used to perform pagination.
/// </param>
/// <param name='orderby'>
/// controls the sorting order and sorting based on which column
/// </param>
/// <param name='inlinecount'>
/// Controls whether or not to include a count of all the items across all
/// pages. Possible values include: 'allpages', 'none'
/// </param>
/// <param name='includeArchived'>
/// Include arhived push notifications
/// </param>
public Task<NotificationsListResult> List(string ownerName, string appName, long? top = 30, string skiptoken = default(string), string orderby = "count desc", Inlinecount? inlinecount = default(Inlinecount?), bool? includeArchived = default(bool?))
{
if (top > 2000)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'top', 2000");
}
if (top < 0)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'top', 0");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/push/notifications";
var queryParameters = new Dictionary<string, string>();
if (top != null)
{
queryParameters.Add("$top", string.Format("{0}", top?.ToString()));
}
if (skiptoken != null)
{
queryParameters.Add("$skiptoken", string.Format("{0}", skiptoken));
}
if (orderby != null)
{
queryParameters.Add("$orderby", string.Format("{0}", orderby));
}
if (inlinecount != null)
{
queryParameters.Add("$inlinecount", string.Format("{0}", inlinecount?.GetEnumMember()));
}
if (includeArchived != null)
{
queryParameters.Add("include_archived", string.Format("{0}", includeArchived?.ToString().ToLower()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<NotificationsListResult>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Send notification.
/// </summary>
/// <param name='properties'>
/// Notification specifications.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<NotificationSendSucceededResult> Send(NotificationDefinition properties, string ownerName, string appName)
{
if (properties == null)
{
throw new System.Exception("Parameter 'properties' cannot be null");
}
if (properties != null)
{
properties.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/push/notifications";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<NotificationSendSucceededResult, PushSendHeaders>(properties, path: path, queryParameters: queryParameters, authenticated: true);
}
}
public class ExportClass
{
AppCenterClientApiKeyApi api;
public ExportClass(AppCenterClientApiKeyApi api)
{
this.api = api;
}
/// <summary>
/// Enable export configuration.
/// </summary>
/// <param name='exportConfigurationId'>
/// The id of the export configuration.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task Enable(string exportConfigurationId, string ownerName, string appName)
{
if (exportConfigurationId == null)
{
throw new System.Exception("Parameter 'exportConfigurationId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/export_configurations/{export_configuration_id}/enable";
var queryParameters = new Dictionary<string, string>();
if (exportConfigurationId != null)
{
queryParameters.Add("export_configuration_id", string.Format("{0}", exportConfigurationId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Disable export configuration.
/// </summary>
/// <param name='exportConfigurationId'>
/// The id of the export configuration.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task Disable(string exportConfigurationId, string ownerName, string appName)
{
if (exportConfigurationId == null)
{
throw new System.Exception("Parameter 'exportConfigurationId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/export_configurations/{export_configuration_id}/disable";
var queryParameters = new Dictionary<string, string>();
if (exportConfigurationId != null)
{
queryParameters.Add("export_configuration_id", string.Format("{0}", exportConfigurationId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post(body: null, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get export configuration.
/// </summary>
/// <param name='exportConfigurationId'>
/// The id of the export configuration.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ExportConfigurationResult> Get(string exportConfigurationId, string ownerName, string appName)
{
if (exportConfigurationId == null)
{
throw new System.Exception("Parameter 'exportConfigurationId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/export_configurations/{export_configuration_id}";
var queryParameters = new Dictionary<string, string>();
if (exportConfigurationId != null)
{
queryParameters.Add("export_configuration_id", string.Format("{0}", exportConfigurationId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<ExportConfigurationResult>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Partially update export configuration.
/// </summary>
/// <param name='exportConfigurationId'>
/// The id of the export configuration.
/// </param>
/// <param name='properties'>
/// Export configurations.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ExportConfigurationResult> PartialUpdate(string exportConfigurationId, ExportConfiguration properties, string ownerName, string appName)
{
if (exportConfigurationId == null)
{
throw new System.Exception("Parameter 'exportConfigurationId' cannot be null");
}
if (properties == null)
{
throw new System.Exception("Parameter 'properties' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/export_configurations/{export_configuration_id}";
var queryParameters = new Dictionary<string, string>();
if (exportConfigurationId != null)
{
queryParameters.Add("export_configuration_id", string.Format("{0}", exportConfigurationId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Patch<ExportConfigurationResult>(properties, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Delete export configuration.
/// </summary>
/// <param name='exportConfigurationId'>
/// The id of the export configuration.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task Delete(string exportConfigurationId, string ownerName, string appName)
{
if (exportConfigurationId == null)
{
throw new System.Exception("Parameter 'exportConfigurationId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/export_configurations/{export_configuration_id}";
var queryParameters = new Dictionary<string, string>();
if (exportConfigurationId != null)
{
queryParameters.Add("export_configuration_id", string.Format("{0}", exportConfigurationId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// List export configurations.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ExportConfigurationListResult> List(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/export_configurations";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<ExportConfigurationListResult>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Create new export configuration
/// </summary>
/// <param name='properties'>
/// Export configurations.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ExportConfigurationResult> Create(ExportConfiguration properties, string ownerName, string appName)
{
if (properties == null)
{
throw new System.Exception("Parameter 'properties' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/export_configurations";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<ExportConfigurationResult>(properties, path: path, queryParameters: queryParameters, authenticated: true);
}
}
public class AnalyticsClass
{
AppCenterClientApiKeyApi api;
public AnalyticsClass(AppCenterClientApiKeyApi api)
{
this.api = api;
}
/// <summary>
/// Get session logs by crash ID
/// </summary>
/// <param name='crashId'>
/// The id of the a crash
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<GenericLogContainer> ListSessionLogs(string crashId, string ownerName, string appName)
{
if (crashId == null)
{
throw new System.Exception("Parameter 'crashId' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/crashes/{crash_id}/session_logs";
var queryParameters = new Dictionary<string, string>();
if (crashId != null)
{
queryParameters.Add("crash_id", string.Format("{0}", crashId));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<GenericLogContainer>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Count of active versions in the time range ordered by version.
/// </summary>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='top'>
/// The maximum number of results to return. (0 will fetch all results)
/// </param>
/// <param name='versions'>
/// </param>
public Task<Versions> VersionsMethod(System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), long? top = 30, string[] versions = default(string[]))
{
if (top > 2000)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'top', 2000");
}
if (top < 0)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'top', 0");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/versions";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (top != null)
{
queryParameters.Add("$top", string.Format("{0}", top?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Versions>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Count of sessions per device in the time range
/// </summary>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='interval'>
/// Size of interval in ISO 8601 duration format.
/// (PnYnMnDTnHnMnS|PnW|P&lt;date&gt;T&lt;time&gt;). The valid durations are 1
/// day (P1D), 1 week (P1W), and 30 days (P30D).
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='versions'>
/// </param>
public Task<SessionsPerDevice> PerDeviceCounts(System.DateTime start, string interval, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), string[] versions = default(string[]))
{
if (interval == null)
{
throw new System.Exception("Parameter 'interval' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/sessions_per_device";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (interval != null)
{
queryParameters.Add("interval", string.Format("{0}", interval));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<SessionsPerDevice>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets session duration .
/// </summary>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='versions'>
/// </param>
public Task<SessionDurationsDistribution> SessionDurationsDistributionMethod(System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), string[] versions = default(string[]))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/session_durations_distribution";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<SessionDurationsDistribution>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Count of sessions in the time range.
/// </summary>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='interval'>
/// Size of interval in ISO 8601 duration format.
/// (PnYnMnDTnHnMnS|PnW|P&lt;date&gt;T&lt;time&gt;). The valid durations are 1
/// day (P1D), 1 week (P1W), and 30 days (P30D).
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='versions'>
/// </param>
public Task<DateTimeCounts[]> SessionCounts(System.DateTime start, string interval, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), string[] versions = default(string[]))
{
if (interval == null)
{
throw new System.Exception("Parameter 'interval' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/session_counts";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (interval != null)
{
queryParameters.Add("interval", string.Format("{0}", interval));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<DateTimeCounts[]>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Places in the time range
/// </summary>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='top'>
/// The maximum number of results to return. (0 will fetch all results)
/// </param>
/// <param name='versions'>
/// </param>
public Task<Places> PlaceCounts(System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), long? top = 30, string[] versions = default(string[]))
{
if (top > 2000)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'top', 2000");
}
if (top < 0)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'top', 0");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/places";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (top != null)
{
queryParameters.Add("$top", string.Format("{0}", top?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Places>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// OSes in the time range
/// </summary>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='top'>
/// The maximum number of results to return. (0 will fetch all results)
/// </param>
/// <param name='versions'>
/// </param>
public Task<OSes> OperatingSystemCounts(System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), long? top = 30, string[] versions = default(string[]))
{
if (top > 2000)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'top', 2000");
}
if (top < 0)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'top', 0");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/oses";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (top != null)
{
queryParameters.Add("$top", string.Format("{0}", top?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<OSes>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// models in the time range
/// </summary>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='top'>
/// The maximum number of results to return. (0 will fetch all results)
/// </param>
/// <param name='versions'>
/// </param>
public Task<AnalyticsModels> ModelCounts(System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), long? top = 30, string[] versions = default(string[]))
{
if (top > 2000)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'top', 2000");
}
if (top < 0)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'top', 0");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/models";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (top != null)
{
queryParameters.Add("$top", string.Format("{0}", top?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<AnalyticsModels>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Logs received between the specified start time and the current time. The
/// API will return a maximum of 100 logs per call.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format. It must be within the
/// current day in the UTC timezone. The default value is the start time of the
/// current day in UTC timezone.
/// </param>
public Task<LogFlowLogContainer> LogFlow(string ownerName, string appName, System.DateTime? start = default(System.DateTime?))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/log_flow";
var queryParameters = new Dictionary<string, string>();
if (start != null)
{
queryParameters.Add("start", string.Format("{0}", start?.ToString()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<LogFlowLogContainer>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// languages in the time range
/// </summary>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='top'>
/// The maximum number of results to return. (0 will fetch all results)
/// </param>
/// <param name='versions'>
/// </param>
public Task<Languages> LanguageCounts(System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), long? top = 30, string[] versions = default(string[]))
{
if (top > 2000)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'top', 2000");
}
if (top < 0)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'top', 0");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/languages";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (top != null)
{
queryParameters.Add("$top", string.Format("{0}", top?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Languages>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Logs received between the specified start time and the current time. The
/// API will return a maximum of 100 logs per call.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format. It must be within the
/// current day in the UTC timezone. The default value is the start time of the
/// current day in UTC timezone.
/// </param>
public Task<LogFlowGenericLogContainer> GenericLogFlow(string ownerName, string appName, System.DateTime? start = default(System.DateTime?))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/generic_log_flow";
var queryParameters = new Dictionary<string, string>();
if (start != null)
{
queryParameters.Add("start", string.Format("{0}", start?.ToString()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<LogFlowGenericLogContainer>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Event properties value counts during the time range in descending order.
/// Limited up to 5 values.
/// </summary>
/// <param name='eventName'>
/// The id of the event
/// </param>
/// <param name='eventPropertyName'>
/// The id of the event property
/// </param>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='versions'>
/// </param>
/// <param name='count'>
/// The number of property values to return
/// </param>
public Task<EventPropertyValues> EventPropertyCounts(string eventName, string eventPropertyName, System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), string[] versions = default(string[]), long? count = 5)
{
if (eventName == null)
{
throw new System.Exception("Parameter 'eventName' cannot be null");
}
if (eventPropertyName == null)
{
throw new System.Exception("Parameter 'eventPropertyName' cannot be null");
}
if (count > 10)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'count', 10");
}
if (count < 1)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'count', 1");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/events/{event_name}/properties/{event_property_name}/counts";
var queryParameters = new Dictionary<string, string>();
if (eventName != null)
{
queryParameters.Add("event_name", string.Format("{0}", eventName));
}
if (eventPropertyName != null)
{
queryParameters.Add("event_property_name", string.Format("{0}", eventPropertyName));
}
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (count != null)
{
queryParameters.Add("count", string.Format("{0}", count?.ToString()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<EventPropertyValues>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Event properties. Up to the first 5 received properties.
/// </summary>
/// <param name='eventName'>
/// The id of the event
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<EventProperties> EventPropertiesMethod(string eventName, string ownerName, string appName)
{
if (eventName == null)
{
throw new System.Exception("Parameter 'eventName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/events/{event_name}/properties";
var queryParameters = new Dictionary<string, string>();
if (eventName != null)
{
queryParameters.Add("event_name", string.Format("{0}", eventName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<EventProperties>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Count of events by interval in the time range.
/// </summary>
/// <param name='eventName'>
/// The id of the event
/// </param>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='versions'>
/// </param>
public Task<EventCount> EventCountMethod(string eventName, System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), string[] versions = default(string[]))
{
if (eventName == null)
{
throw new System.Exception("Parameter 'eventName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/events/{event_name}/event_count";
var queryParameters = new Dictionary<string, string>();
if (eventName != null)
{
queryParameters.Add("event_name", string.Format("{0}", eventName));
}
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<EventCount>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Count of devices for an event by interval in the time range.
/// </summary>
/// <param name='eventName'>
/// The id of the event
/// </param>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='versions'>
/// </param>
public Task<EventDeviceCount> EventDeviceCountMethod(string eventName, System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), string[] versions = default(string[]))
{
if (eventName == null)
{
throw new System.Exception("Parameter 'eventName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/events/{event_name}/device_count";
var queryParameters = new Dictionary<string, string>();
if (eventName != null)
{
queryParameters.Add("event_name", string.Format("{0}", eventName));
}
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<EventDeviceCount>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Count of events per session by interval in the time range.
/// </summary>
/// <param name='eventName'>
/// The id of the event
/// </param>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='versions'>
/// </param>
public Task<EventCountPerSession> EventPerSessionCount(string eventName, System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), string[] versions = default(string[]))
{
if (eventName == null)
{
throw new System.Exception("Parameter 'eventName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/events/{event_name}/count_per_session";
var queryParameters = new Dictionary<string, string>();
if (eventName != null)
{
queryParameters.Add("event_name", string.Format("{0}", eventName));
}
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<EventCountPerSession>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Count of events per device by interval in the time range.
/// </summary>
/// <param name='eventName'>
/// The id of the event
/// </param>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='versions'>
/// </param>
public Task<EventCountPerDevice> EventPerDeviceCount(string eventName, System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), string[] versions = default(string[]))
{
if (eventName == null)
{
throw new System.Exception("Parameter 'eventName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/events/{event_name}/count_per_device";
var queryParameters = new Dictionary<string, string>();
if (eventName != null)
{
queryParameters.Add("event_name", string.Format("{0}", eventName));
}
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<EventCountPerDevice>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Delete the set of Events with the specified event names
/// </summary>
/// <param name='eventName'>
/// The id of the event
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task EventsDelete(string eventName, string ownerName, string appName)
{
if (eventName == null)
{
throw new System.Exception("Parameter 'eventName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/events/{event_name}";
var queryParameters = new Dictionary<string, string>();
if (eventName != null)
{
queryParameters.Add("event_name", string.Format("{0}", eventName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Count of active events in the time range ordered by event.
/// </summary>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='versions'>
/// </param>
/// <param name='eventName'>
/// to select the specific events
/// </param>
/// <param name='top'>
/// The maximum number of results to return. (0 will fetch all results)
/// </param>
/// <param name='skip'>
/// The offset (starting at 0) of the first result to return. This parameter
/// along with limit is used to perform pagination.
/// </param>
/// <param name='inlinecount'>
/// Controls whether or not to include a count of all the items across all
/// pages. Possible values include: 'allpages', 'none'
/// </param>
/// <param name='orderby'>
/// controls the sorting order and sorting based on which column
/// </param>
public Task<Events> EventsMethod(System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), string[] versions = default(string[]), string[] eventName = default(string[]), long? top = 30, long? skip = 0, Inlinecount? inlinecount = default(Inlinecount?), string orderby = "count desc")
{
if (top > 2000)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'top', 2000");
}
if (top < 0)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'top', 0");
}
if (skip < 0)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'skip', 0");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/events";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (eventName != null)
{
queryParameters.Add("event_name", string.Format("{0}", string.Join("|", eventName)));
}
if (top != null)
{
queryParameters.Add("$top", string.Format("{0}", top?.ToString()));
}
if (skip != null)
{
queryParameters.Add("$skip", string.Format("{0}", skip?.ToString()));
}
if (inlinecount != null)
{
queryParameters.Add("$inlinecount", string.Format("{0}", inlinecount?.GetEnumMember()));
}
if (orderby != null)
{
queryParameters.Add("$orderby", string.Format("{0}", orderby));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Events>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Delete the set of Events with the specified event names
/// </summary>
/// <param name='eventName'>
/// The id of the event
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task EventsDeleteLogs(string eventName, string ownerName, string appName)
{
if (eventName == null)
{
throw new System.Exception("Parameter 'eventName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/event_logs/{event_name}";
var queryParameters = new Dictionary<string, string>();
if (eventName != null)
{
queryParameters.Add("event_name", string.Format("{0}", eventName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Count of total downloads for the provided distribution releases.
/// </summary>
/// <param name='releases'>
/// The releases to retrieve.
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<ReleaseCounts> DistributionReleaseCounts(GetReleasesContainer releases, string ownerName, string appName)
{
if (releases == null)
{
throw new System.Exception("Parameter 'releases' cannot be null");
}
if (releases != null)
{
releases.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/distribution/release_counts";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<ReleaseCounts>(releases, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Percentage of crash-free device by day in the time range based on the
/// selected versions. Api will return -1 if crash devices is greater than
/// active devices
/// </summary>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='versions'>
/// </param>
public Task<CrashFreeDevicePercentages> CrashFreeDevicePercentagesMethod(System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), string[] versions = default(string[]))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/crashfree_device_percentages";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CrashFreeDevicePercentages>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Overall crashes and affected users count of the selected crash group with
/// selected version
/// </summary>
/// <param name='crashGroupId'>
/// The id of the crash group
/// </param>
/// <param name='version'>
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<CrashOverall> CrashGroupTotals(string crashGroupId, string version, string ownerName, string appName)
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (version == null)
{
throw new System.Exception("Parameter 'version' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/crash_groups/{crash_group_id}/overall";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (version != null)
{
queryParameters.Add("version", string.Format("{0}", version));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CrashOverall>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// top OSes of the selected crash group with selected version
/// </summary>
/// <param name='crashGroupId'>
/// The id of the crash group
/// </param>
/// <param name='version'>
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='top'>
/// The maximum number of results to return. (0 will fetch all results)
/// </param>
public Task<CrashGroupOperatingSystems> CrashGroupOperatingSystemCounts(string crashGroupId, string version, string ownerName, string appName, long? top = 30)
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (version == null)
{
throw new System.Exception("Parameter 'version' cannot be null");
}
if (top > 2000)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'top', 2000");
}
if (top < 0)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'top', 0");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/crash_groups/{crash_group_id}/operating_systems";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (version != null)
{
queryParameters.Add("version", string.Format("{0}", version));
}
if (top != null)
{
queryParameters.Add("$top", string.Format("{0}", top?.ToString()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CrashGroupOperatingSystems>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// top models of the selected crash group with selected version
/// </summary>
/// <param name='crashGroupId'>
/// The id of the crash group
/// </param>
/// <param name='version'>
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='top'>
/// The maximum number of results to return. (0 will fetch all results)
/// </param>
public Task<CrashGroupModels> CrashGroupModelCounts(string crashGroupId, string version, string ownerName, string appName, long? top = 30)
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (version == null)
{
throw new System.Exception("Parameter 'version' cannot be null");
}
if (top > 2000)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'top', 2000");
}
if (top < 0)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'top', 0");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/crash_groups/{crash_group_id}/models";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (version != null)
{
queryParameters.Add("version", string.Format("{0}", version));
}
if (top != null)
{
queryParameters.Add("$top", string.Format("{0}", top?.ToString()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CrashGroupModels>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Count of crashes by day in the time range of the selected crash group with
/// selected version
/// </summary>
/// <param name='crashGroupId'>
/// The id of the crash group
/// </param>
/// <param name='version'>
/// </param>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
public Task<CrashCounts> CrashGroupCounts(string crashGroupId, string version, System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?))
{
if (crashGroupId == null)
{
throw new System.Exception("Parameter 'crashGroupId' cannot be null");
}
if (version == null)
{
throw new System.Exception("Parameter 'version' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/crash_groups/{crash_group_id}/crash_counts";
var queryParameters = new Dictionary<string, string>();
if (crashGroupId != null)
{
queryParameters.Add("crash_group_id", string.Format("{0}", crashGroupId));
}
if (version != null)
{
queryParameters.Add("version", string.Format("{0}", version));
}
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CrashCounts>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Overall crashes and affected users count of the selected crash groups with
/// selected versions
/// </summary>
/// <param name='crashGroups'>
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<CrashesOverallItem[]> CrashGroupsTotals(CrashGroupContainer crashGroups, string ownerName, string appName)
{
if (crashGroups == null)
{
throw new System.Exception("Parameter 'crashGroups' cannot be null");
}
if (crashGroups != null)
{
crashGroups.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/crash_groups";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<CrashesOverallItem[]>(crashGroups, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Count of crashes by day in the time range based the selected versions.
/// </summary>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='versions'>
/// </param>
public Task<CrashCounts> CrashCountsMethod(System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), string[] versions = default(string[]))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/crash_counts";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<CrashCounts>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns whether audience definition exists.
/// </summary>
/// <param name='audienceName'>
/// The name of the audience
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task AudienceNameExists(string audienceName, string ownerName, string appName)
{
if (audienceName == null)
{
throw new System.Exception("Parameter 'audienceName' cannot be null");
}
if (audienceName != null)
{
if (audienceName.Length > 64)
{
throw new System.Exception("Validation Failed: MaxLength, 'audienceName', 64");
}
if (!System.Text.RegularExpressions.Regex.IsMatch(audienceName, "[^/]+"))
{
throw new System.Exception("Validation Failed: Pattern, 'audienceName', [^/] + ");
}
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/audiences/{audience_name}";
var queryParameters = new Dictionary<string, string>();
if (audienceName != null)
{
queryParameters.Add("audience_name", string.Format("{0}", audienceName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Head(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Deletes audience definition.
/// </summary>
/// <param name='audienceName'>
/// The name of the audience
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task DeleteAudience(string audienceName, string ownerName, string appName)
{
if (audienceName == null)
{
throw new System.Exception("Parameter 'audienceName' cannot be null");
}
if (audienceName != null)
{
if (audienceName.Length > 64)
{
throw new System.Exception("Validation Failed: MaxLength, 'audienceName', 64");
}
if (!System.Text.RegularExpressions.Regex.IsMatch(audienceName, "[^/]+"))
{
throw new System.Exception("Validation Failed: Pattern, 'audienceName', [^/] + ");
}
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/audiences/{audience_name}";
var queryParameters = new Dictionary<string, string>();
if (audienceName != null)
{
queryParameters.Add("audience_name", string.Format("{0}", audienceName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Gets audience definition.
/// </summary>
/// <param name='audienceName'>
/// The name of the audience
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Audience> GetAudience(string audienceName, string ownerName, string appName)
{
if (audienceName == null)
{
throw new System.Exception("Parameter 'audienceName' cannot be null");
}
if (audienceName != null)
{
if (audienceName.Length > 64)
{
throw new System.Exception("Validation Failed: MaxLength, 'audienceName', 64");
}
if (!System.Text.RegularExpressions.Regex.IsMatch(audienceName, "[^/]+"))
{
throw new System.Exception("Validation Failed: Pattern, 'audienceName', [^/] + ");
}
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/audiences/{audience_name}";
var queryParameters = new Dictionary<string, string>();
if (audienceName != null)
{
queryParameters.Add("audience_name", string.Format("{0}", audienceName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<Audience>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Creates or updates audience definition.
/// </summary>
/// <param name='audienceName'>
/// The name of the audience
/// </param>
/// <param name='audience'>
/// Audience definition
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<Audience> CreateOrUpdateAudience(string audienceName, AudienceDefinition audience, string ownerName, string appName)
{
if (audienceName == null)
{
throw new System.Exception("Parameter 'audienceName' cannot be null");
}
if (audienceName != null)
{
if (audienceName.Length > 64)
{
throw new System.Exception("Validation Failed: MaxLength, 'audienceName', 64");
}
if (!System.Text.RegularExpressions.Regex.IsMatch(audienceName, "[^/]+"))
{
throw new System.Exception("Validation Failed: Pattern, 'audienceName', [^/]+ ");
}
}
if (audience == null)
{
throw new System.Exception("Parameter 'audience' cannot be null");
}
if (audience != null)
{
audience.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/audiences/{audience_name}";
var queryParameters = new Dictionary<string, string>();
if (audienceName != null)
{
queryParameters.Add("audience_name", string.Format("{0}", audienceName));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Put<Audience>(audience, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get list of device property values.
/// </summary>
/// <param name='propertyName'>
/// Device property
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='contains'>
/// Contains string
/// </param>
public Task<AudienceDevicePropertyValuesListResult> ListDevicePropertyValues(string propertyName, string ownerName, string appName, string contains = default(string))
{
if (propertyName == null)
{
throw new System.Exception("Parameter 'propertyName' cannot be null");
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/audiences/metadata/device_properties/{property_name}/values";
var queryParameters = new Dictionary<string, string>();
if (propertyName != null)
{
queryParameters.Add("property_name", string.Format("{0}", propertyName));
}
if (contains != null)
{
queryParameters.Add("contains", string.Format("{0}", contains));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<AudienceDevicePropertyValuesListResult>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get list of device properties.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<AudienceDevicePropertiesListResult> ListDeviceProperties(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/audiences/metadata/device_properties";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<AudienceDevicePropertiesListResult>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get list of custom properties.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<AudienceDevicePropertiesListResult> ListCustomProperties(string ownerName, string appName)
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/audiences/metadata/custom_properties";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<AudienceDevicePropertiesListResult>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Tests audience definition.
/// </summary>
/// <param name='audience'>
/// Audience definition
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
public Task<AudienceTestResult> TestAudience(AudienceDefinition audience, string ownerName, string appName)
{
if (audience == null)
{
throw new System.Exception("Parameter 'audience' cannot be null");
}
if (audience != null)
{
audience.Validate();
}
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/audiences/definition/test";
var queryParameters = new Dictionary<string, string>();
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Post<AudienceTestResult>(audience, path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Get list of audiences.
/// </summary>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='includeDisabled'>
/// Include disabled audience definitions
/// </param>
public Task<AudienceListResult> ListAudiences(string ownerName, string appName, bool? includeDisabled = default(bool?))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/audiences";
var queryParameters = new Dictionary<string, string>();
if (includeDisabled != null)
{
queryParameters.Add("include_disabled", string.Format("{0}", includeDisabled?.ToString().ToLower()));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<AudienceListResult>(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Count of active devices by interval in the time range.
/// </summary>
/// <param name='start'>
/// Start date time in data in ISO 8601 date time format
/// </param>
/// <param name='ownerName'>
/// The name of the owner
/// </param>
/// <param name='appName'>
/// The name of the application
/// </param>
/// <param name='end'>
/// Last date time in data in ISO 8601 date time format
/// </param>
/// <param name='versions'>
/// </param>
public Task<ActiveDeviceCounts> DeviceCounts(System.DateTime start, string ownerName, string appName, System.DateTime? end = default(System.DateTime?), string[] versions = default(string[]))
{
if (ownerName == null)
{
throw new System.Exception("Parameter 'ownerName' cannot be null");
}
if (appName == null)
{
throw new System.Exception("Parameter 'appName' cannot be null");
}
var path = "/v0.1/apps/{owner_name}/{app_name}/analytics/active_device_counts";
var queryParameters = new Dictionary<string, string>();
queryParameters.Add("start", string.Format("{0}", start.ToString()));
if (end != null)
{
queryParameters.Add("end", string.Format("{0}", end?.ToString()));
}
if (versions != null)
{
queryParameters.Add("versions", string.Format("{0}", string.Join("|", versions)));
}
if (ownerName != null)
{
queryParameters.Add("owner_name", string.Format("{0}", ownerName));
}
if (appName != null)
{
queryParameters.Add("app_name", string.Format("{0}", appName));
}
return api.Get<ActiveDeviceCounts>(path: path, queryParameters: queryParameters, authenticated: true);
}
}
}
}
// Code generated by SimpleSwaggerGenerator 1.0.6654.31180
// Changes may cause incorrect behavior and will be lost if the code is
// regenerated.
namespace MobileCenterApi
{
using SimpleAuth;
using System.Net.Http;
using System.Threading.Tasks;
using System.Linq;
using System.Collections.Generic;
using Models;
/// <summary>
/// Microsoft Visual Studio App Center API
/// </summary>
public partial class AppCenterClientBasicAuthApi : BasicAuthApi
{
public AppCenterClientBasicAuthApi(string identifier, string encryptionKey, string loginUrl, HttpMessageHandler handler = null) : base(identifier, encryptionKey, loginUrl, handler)
{
Initialize();
}
/// <summary>
/// An optional partial-method to perform custom initialization.
///</summary>
partial void CustomInitialize();
/// <summary>
/// Gets the Account.
/// </summary>
public virtual AccountClass Account { get; private set; }
/// <summary>
/// Initializes client properties.
/// </summary>
private void Initialize()
{
this.Account = new AccountClass(this);
this.BaseAddress = new System.Uri("https://api.appcenter.ms/");
CustomInitialize();
}
public class AccountClass
{
AppCenterClientBasicAuthApi api;
public AccountClass(AppCenterClientBasicAuthApi api)
{
this.api = api;
}
/// <summary>
/// Delete the api_token object with the specific id
/// </summary>
/// <param name='apiTokenId'>
/// The unique ID (UUID) of the api token
/// </param>
public Task Delete6(string apiTokenId)
{
if (apiTokenId == null)
{
throw new System.Exception("Parameter 'apiTokenId' cannot be null");
}
var path = "/v0.1/api_tokens/{api_token_id}";
var queryParameters = new Dictionary<string, string>();
if (apiTokenId != null)
{
queryParameters.Add("api_token_id", string.Format("{0}", apiTokenId));
}
return api.Delete(path: path, queryParameters: queryParameters, authenticated: true);
}
/// <summary>
/// Returns api tokens for the authenticated user
/// </summary>
public Task<ApiTokensGetResponse[]> List5()
{
var path = "/v0.1/api_tokens";
return api.Get<ApiTokensGetResponse[]>(path: path, authenticated: true);
}
/// <summary>
/// Creates a new API token
/// </summary>
/// <param name='description'>
/// Description of the token
/// </param>
public Task<ApiTokensCreateResponse> NewOperation(ApiTokensCreateRequest description = default(ApiTokensCreateRequest))
{
var path = "/v0.1/api_tokens";
return api.Post<ApiTokensCreateResponse>(description, path: path, authenticated: true);
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class GetInAppUpdateTokenResponse
{
public GetInAppUpdateTokenResponse() { }
/// <summary>
/// Gets or sets the api token generated will not be accessible again
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "api_token")]
public string ApiToken { get; set; }
public virtual void Validate()
{
if (ApiToken == null)
{
throw new System.Exception("Property 'ApiToken' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ApiTokensCreateResponse
{
public ApiTokensCreateResponse() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the api token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the api token generated will not be accessible again
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "api_token")]
public string ApiToken { get; set; }
/// <summary>
/// Gets or sets the description of the token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets the scope for this token.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "scope")]
public ApiTokensCreateResponseScopeItem?[] Scope { get; set; }
/// <summary>
/// Gets or sets the creation time
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "created_at")]
public string CreatedAt { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (ApiToken == null)
{
throw new System.Exception("Property 'ApiToken' is required/");
}
if (CreatedAt == null)
{
throw new System.Exception("Property 'CreatedAt' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ApiTokensCreateRequest
{
public ApiTokensCreateRequest() { }
/// <summary>
/// Gets or sets the description of the token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets the scope for this token.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "scope")]
public ApiTokensCreateRequestScopeItem?[] Scope { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ApiTokensGetResponse
{
public ApiTokensGetResponse() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the api token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the description of the token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets the scope for this token.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "scope")]
public ApiTokensGetResponseScopeItem?[] Scope { get; set; }
/// <summary>
/// Gets or sets the creation time
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "created_at")]
public string CreatedAt { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (CreatedAt == null)
{
throw new System.Exception("Property 'CreatedAt' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Status1
{
public Status1() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string StatusProperty { get; set; }
public virtual void Validate()
{
if (StatusProperty == null)
{
throw new System.Exception("Property 'StatusProperty' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Failure
{
public Failure() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
public virtual void Validate()
{
if (Message == null)
{
throw new System.Exception("Property 'Message' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorDetails
{
public ErrorDetails() { }
/// <summary>
/// Gets or sets possible values include: 'BadRequest', 'Conflict',
/// 'NotAcceptable', 'NotFound', 'InternalServerError', 'Unauthorized',
/// 'TooManyRequests'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code")]
public ErrorDetailsCode Code { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
public virtual void Validate()
{
if (Message == null)
{
throw new System.Exception("Property 'Message' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorResponse
{
public ErrorResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "error")]
public ErrorDetails Error { get; set; }
public virtual void Validate()
{
if (Error == null)
{
throw new System.Exception("Property 'Error' is required/");
}
if (this.Error != null)
{
this.Error.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class SuccessResponse
{
public SuccessResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
public virtual void Validate()
{
if (Message == null)
{
throw new System.Exception("Property 'Message' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AADTenantAddRequest
{
public AADTenantAddRequest() { }
/// <summary>
/// Gets or sets the user wanting to add this tenant to the
/// organization, must be an admin of the organization
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_id")]
public string UserId { get; set; }
/// <summary>
/// Gets or sets the AAD tenant id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "aad_tenant_id")]
public string AadTenantId { get; set; }
/// <summary>
/// Gets or sets the name of the AAD Tenant
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
public virtual void Validate()
{
if (UserId == null)
{
throw new System.Exception("Property 'UserId' is required/");
}
if (AadTenantId == null)
{
throw new System.Exception("Property 'AadTenantId' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AADTenantResponse
{
public AADTenantResponse() { }
/// <summary>
/// Gets or sets the AAD tenant id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "aad_tenant_id")]
public string AadTenantId { get; set; }
/// <summary>
/// Gets or sets the name of the AAD Tenant
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
public virtual void Validate()
{
if (AadTenantId == null)
{
throw new System.Exception("Property 'AadTenantId' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ApiTokensPostRequest
{
public ApiTokensPostRequest() { }
/// <summary>
/// Gets or sets the description of the token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets an encrypted value of the token.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "encrypted_token")]
public string EncryptedToken { get; set; }
/// <summary>
/// Gets or sets the scope for this token. An array of supported roles.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "scope")]
public ApiTokensPostRequestScopeItem?[] Scope { get; set; }
/// <summary>
/// Gets or sets the hashed value of api token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "token_hash")]
public string TokenHash { get; set; }
/// <summary>
/// Gets or sets the token's type. public:managed by the user;
/// in_app_update:special token for in-app update scenario;
/// buid:dedicated for CI usage for now; session:for CLI session
/// management; tester_app: used for tester mobile app; default is
/// "public".'. Possible values include: 'public', 'in_app_update',
/// 'build', 'session', 'tester_app'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "token_type")]
public ApiTokensPostRequestTokenType? TokenType { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppPatchRequest
{
public AppPatchRequest() { }
/// <summary>
/// Gets or sets a short text describing the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets the display name of the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the name of the app used in URLs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the string representation of the URL pointing to the
/// app's icon
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "icon_url")]
public string IconUrl { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppRepoPatchRequest
{
public AppRepoPatchRequest() { }
/// <summary>
/// Gets or sets the absolute URL of the repository
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_url")]
public string RepoUrl { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppRepoPostRequest
{
public AppRepoPostRequest() { }
/// <summary>
/// Gets or sets the absolute URL of the repository
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_url")]
public string RepoUrl { get; set; }
/// <summary>
/// Gets or sets the provider of the repository. Possible values
/// include: 'github', 'bitbucket', 'vsts'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_provider")]
public AppRepoPostRequestRepoProvider? RepoProvider { get; set; }
/// <summary>
/// Gets or sets the unique id (UUID) of the user who configured the
/// repository
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_id")]
public string UserId { get; set; }
/// <summary>
/// Gets or sets installation id from the provider
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "installation_id")]
public string InstallationId { get; set; }
/// <summary>
/// Gets or sets repository id from the provider
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_id")]
public string RepoId { get; set; }
public virtual void Validate()
{
if (RepoUrl == null)
{
throw new System.Exception("Property 'RepoUrl' is required/");
}
if (UserId == null)
{
throw new System.Exception("Property 'UserId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppRequest
{
public AppRequest() { }
/// <summary>
/// Gets or sets a short text describing the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets the descriptive name of the app. This can contain any
/// characters
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the name of the app used in URLs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the OS the app will be running on. Possible values
/// include: 'Android', 'iOS', 'macOS', 'Tizen', 'tvOS', 'Windows'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os")]
public AppRequestOs Os { get; set; }
/// <summary>
/// Gets or sets the platform of the app. Possible values include:
/// 'Java', 'Objective-C-Swift', 'UWP', 'Cordova', 'React-Native',
/// 'Xamarin'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public AppRequestPlatform Platform { get; set; }
public virtual void Validate()
{
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppTeamAddRequest
{
public AppTeamAddRequest() { }
/// <summary>
/// Gets or sets the name of the app to be added to the team
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AzureSubscriptionAddRequest
{
public AzureSubscriptionAddRequest() { }
/// <summary>
/// Gets or sets the azure subscription id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "subscription_id")]
public string SubscriptionId { get; set; }
/// <summary>
/// Gets or sets the tenant id of the azure subscription belongs to
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tenant_id")]
public string TenantId { get; set; }
/// <summary>
/// Gets or sets the name of the azure subscription
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "subscription_name")]
public string SubscriptionName { get; set; }
/// <summary>
/// Gets or sets if the subscription is used for billing
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_billing")]
public bool? IsBilling { get; set; }
public virtual void Validate()
{
if (SubscriptionId == null)
{
throw new System.Exception("Property 'SubscriptionId' is required/");
}
if (TenantId == null)
{
throw new System.Exception("Property 'TenantId' is required/");
}
if (SubscriptionName == null)
{
throw new System.Exception("Property 'SubscriptionName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AzureSubscriptionUpdateBillableRequest
{
public AzureSubscriptionUpdateBillableRequest() { }
/// <summary>
/// Gets or sets billable status of the subscription
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_billable")]
public bool IsBillable { get; set; }
public virtual void Validate()
{
//Nothing to validate
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AzureSubscriptionPatchRequest
{
public AzureSubscriptionPatchRequest() { }
/// <summary>
/// Gets or sets if the subscription is used for billing
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_billing")]
public bool IsBilling { get; set; }
public virtual void Validate()
{
//Nothing to validate
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AzureSubscriptionAddToAppRequest
{
public AzureSubscriptionAddToAppRequest() { }
/// <summary>
/// Gets or sets the azure subscription id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "subscription_id")]
public string SubscriptionId { get; set; }
public virtual void Validate()
{
if (SubscriptionId == null)
{
throw new System.Exception("Property 'SubscriptionId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionGroupPatchRequest
{
public DistributionGroupPatchRequest() { }
/// <summary>
/// Gets or sets the name of the distribution group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets whether the distribution group is public
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_public")]
public bool? IsPublic { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionGroupRequest
{
public DistributionGroupRequest() { }
/// <summary>
/// Gets or sets the name of the distribution group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionGroupUserRequest
{
public DistributionGroupUserRequest() { }
/// <summary>
/// Gets or sets the list of emails of the users
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_emails")]
public string[] UserEmails { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class EmailVerificationRequest
{
public EmailVerificationRequest() { }
/// <summary>
/// Gets or sets the verification token that was sent to the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "token")]
public string Token { get; set; }
public virtual void Validate()
{
if (Token == null)
{
throw new System.Exception("Property 'Token' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ExternalUserRequest
{
public ExternalUserRequest() { }
/// <summary>
/// Gets or sets the token of the app invitation which lead to signup
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_invitation")]
public string AppInvitation { get; set; }
/// <summary>
/// Gets or sets the token of the test invitation which lead to signup
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tester_invitation")]
public string TesterInvitation { get; set; }
/// <summary>
/// Gets or sets the token of the organization invitation which lead to
/// signup
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "organization_invitation")]
public string OrganizationInvitation { get; set; }
/// <summary>
/// Gets or sets the avatar URL of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "avatar_url")]
public string AvatarUrl { get; set; }
/// <summary>
/// Gets or sets the full name of the user. Might for example be first
/// and last name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the email address of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the unique name that is used to identify the user. If
/// no explicit value is given, a default will be auto-generated from
/// the `display_name` value
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Email == null)
{
throw new System.Exception("Property 'Email' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class FeaturePatchRequest
{
public FeaturePatchRequest() { }
/// <summary>
/// Gets or sets the friendly name of the feature
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets the full (friendly) name of the feature.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the state of the feature
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state")]
public int? State { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class FeatureCreateRequest
{
public FeatureCreateRequest() { }
/// <summary>
/// Gets or sets the unique name of the feature
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the full (friendly) name of the feature.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the state of the feature
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state")]
public int? State { get; set; }
/// <summary>
/// Gets or sets the friendly name of the feature
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class GrantAdminRoleRequest
{
public GrantAdminRoleRequest() { }
/// <summary>
/// Gets or sets the new admin_role. Possible values include:
/// 'superAdmin', 'admin', 'devOps', 'customerSupport', 'notAdmin'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "admin_role")]
public GrantAdminRoleRequestAdminRole AdminRole { get; set; }
public virtual void Validate()
{
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class InternalBulkAppResponse
{
public InternalBulkAppResponse() { }
/// <summary>
/// Gets or sets the name of the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_name")]
public string AppName { get; set; }
/// <summary>
/// Gets or sets the display name of the owner
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "owner_display_name")]
public string OwnerDisplayName { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class InternalUserRequest
{
public InternalUserRequest() { }
/// <summary>
/// Gets or sets the token of the app invitation which lead to signup
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_invitation")]
public string AppInvitation { get; set; }
/// <summary>
/// Gets or sets the token of the test invitation which lead to signup
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tester_invitation")]
public string TesterInvitation { get; set; }
/// <summary>
/// Gets or sets the token of the organization invitation which lead to
/// signup
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "organization_invitation")]
public string OrganizationInvitation { get; set; }
/// <summary>
/// Gets or sets the avatar URL of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "avatar_url")]
public string AvatarUrl { get; set; }
/// <summary>
/// Gets or sets the full name of the user. Might for example be first
/// and last name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the email address of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the unique name that is used to identify the user.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the password of the user. Needs to be at least 8
/// characters long and contain at least one lower- and one uppercase
/// letter.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
public virtual void Validate()
{
if (Email == null)
{
throw new System.Exception("Property 'Email' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (Password == null)
{
throw new System.Exception("Property 'Password' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OrganizationPatchRequest
{
public OrganizationPatchRequest() { }
/// <summary>
/// Gets or sets the full (friendly) name of the organization.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the name of the organization used in URLs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OrganizationRequest
{
public OrganizationRequest() { }
/// <summary>
/// Gets or sets the display name of the organization
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the name of the organization used in URLs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OrganizationUserPatchRequest
{
public OrganizationUserPatchRequest() { }
/// <summary>
/// Gets or sets the user's role in the organizatiion. Possible values
/// include: 'admin', 'collaborator'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "role")]
public OrganizationUserPatchRequestRole? Role { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class PasswordUpdateRequest
{
public PasswordUpdateRequest() { }
/// <summary>
/// Gets or sets the new password that will be set for the user. Needs
/// to be at least 8 characters long and contain at least one lower-
/// and one uppercase letter.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "new_password")]
public string NewPassword { get; set; }
/// <summary>
/// Gets or sets the old password, if needed.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "old_password")]
public string OldPassword { get; set; }
public virtual void Validate()
{
if (NewPassword == null)
{
throw new System.Exception("Property 'NewPassword' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ResendVerificationRequest
{
public ResendVerificationRequest() { }
/// <summary>
/// Gets or sets the email or name of the user to resend verification
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ResetPasswordUsingTokenRequest
{
public ResetPasswordUsingTokenRequest() { }
/// <summary>
/// Gets or sets the new password. Needs to be at least 8 characters
/// long and contain at least one lower- and one uppercase letter.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "new_password")]
public string NewPassword { get; set; }
/// <summary>
/// Gets or sets the reset password token that was sent to the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "token")]
public string Token { get; set; }
public virtual void Validate()
{
if (NewPassword == null)
{
throw new System.Exception("Property 'NewPassword' is required/");
}
if (Token == null)
{
throw new System.Exception("Property 'Token' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UserAppPermissionsUpdateRequest
{
public UserAppPermissionsUpdateRequest() { }
/// <summary>
/// Gets or sets the permissions the user has for the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "permissions")]
public UserAppPermissionsUpdateRequestPermissionsItem?[] Permissions { get; set; }
public virtual void Validate()
{
if (Permissions == null)
{
throw new System.Exception("Property 'Permissions' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UserInvitationPermissionsUpdateRequest
{
public UserInvitationPermissionsUpdateRequest() { }
/// <summary>
/// Gets or sets the permissions the user has for the app in the
/// invitation
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "permissions")]
public UserInvitationPermissionsUpdateRequestPermissionsItem?[] Permissions { get; set; }
public virtual void Validate()
{
if (Permissions == null)
{
throw new System.Exception("Property 'Permissions' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UserEmailRequest
{
public UserEmailRequest() { }
/// <summary>
/// Gets or sets the user's email address'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_email")]
public string UserEmail { get; set; }
public virtual void Validate()
{
if (UserEmail == null)
{
throw new System.Exception("Property 'UserEmail' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UserNameUpdateRequest
{
public UserNameUpdateRequest() { }
/// <summary>
/// Gets or sets the new, unique name that is used to identify.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UserUpdateRequest
{
public UserUpdateRequest() { }
/// <summary>
/// Gets or sets the full name of the user. Might for example be first
/// and last name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UserUpdateRequestInternal
{
public UserUpdateRequestInternal() { }
/// <summary>
/// Gets or sets the full name of the user. Might for example be first
/// and last name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the new, unique name that is used to identify.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the date in the future when the user should be checked
/// again for NPS eligibility
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "next_nps_survey_date")]
public string NextNpsSurveyDate { get; set; }
/// <summary>
/// Gets or sets the email address for this user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UserSettingRequest
{
public UserSettingRequest() { }
/// <summary>
/// Gets or sets the setting value
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public string Value { get; set; }
public virtual void Validate()
{
if (Value == null)
{
throw new System.Exception("Property 'Value' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AccountResponse
{
public AccountResponse() { }
/// <summary>
/// Gets or sets the internal unique id (UUID) of the account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the display name of the account
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the slug name of the account
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the account's email. For org that value might be
/// empty.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the creation origin of this account. Possible values
/// include: 'appcenter', 'hockeyapp'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "origin")]
public AccountResponseOrigin Origin { get; set; }
/// <summary>
/// Gets or sets the type of this account. Possible values include:
/// 'user', 'org'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public AccountResponseType Type { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ApiTokenDeleteResponse
{
public ApiTokenDeleteResponse() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the api token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the hashed value of api token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "token_hash")]
public string TokenHash { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (TokenHash == null)
{
throw new System.Exception("Property 'TokenHash' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ApiTokenGetUserResponse
{
public ApiTokenGetUserResponse() { }
/// <summary>
/// Gets or sets the token's unique id (UUID)
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "token_id")]
public string TokenId { get; set; }
/// <summary>
/// Gets or sets the token's scope. A list of allowed roles.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "token_scope")]
public ApiTokenGetUserResponseTokenScopeItem?[] TokenScope { get; set; }
/// <summary>
/// Gets or sets the user email
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_email")]
public string UserEmail { get; set; }
/// <summary>
/// Gets or sets the unique id (UUID) of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_id")]
public string UserId { get; set; }
/// <summary>
/// Gets or sets the creation origin of the user who created this api
/// token. Possible values include: 'appcenter', 'hockeyapp',
/// 'codepush'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_origin")]
public ApiTokenGetUserResponseUserOrigin UserOrigin { get; set; }
public virtual void Validate()
{
if (TokenId == null)
{
throw new System.Exception("Property 'TokenId' is required/");
}
if (TokenScope == null)
{
throw new System.Exception("Property 'TokenScope' is required/");
}
if (UserEmail == null)
{
throw new System.Exception("Property 'UserEmail' is required/");
}
if (UserId == null)
{
throw new System.Exception("Property 'UserId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ApiTokenResponse
{
public ApiTokenResponse() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the api token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the creation time
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "created_at")]
public string CreatedAt { get; set; }
/// <summary>
/// Gets or sets the token's scope. A list of allowed roles.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "scope")]
public ApiTokenResponseScopeItem?[] Scope { get; set; }
/// <summary>
/// Gets or sets the encrypted value of a token. This value will only
/// be returned for token of type in_app_update.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "encrypted_token")]
public string EncryptedToken { get; set; }
/// <summary>
/// Gets or sets the description of the token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (CreatedAt == null)
{
throw new System.Exception("Property 'CreatedAt' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppGroupResponse
{
public AppGroupResponse() { }
/// <summary>
/// Gets or sets the unique ID (UUID) of the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the unique ID (UUID) of the group that the app belongs
/// to
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "group_id")]
public string GroupId { get; set; }
/// <summary>
/// Gets or sets the display name of the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the name of the app used in URLs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the OS the app will be running on. Possible values
/// include: 'Android', 'iOS', 'macOS', 'Tizen', 'tvOS', 'Windows',
/// 'Custom'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os")]
public AppGroupResponseOs Os { get; set; }
/// <summary>
/// Gets or sets the platform of the app. Possible values include:
/// 'Java', 'Objective-C-Swift', 'UWP', 'Cordova', 'React-Native',
/// 'Unity', 'Xamarin', 'Unknown'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public AppGroupResponsePlatform Platform { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (GroupId == null)
{
throw new System.Exception("Property 'GroupId' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AzureSubscriptionResponse
{
public AzureSubscriptionResponse() { }
/// <summary>
/// Gets or sets the azure subscription id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "subscription_id")]
public string SubscriptionId { get; set; }
/// <summary>
/// Gets or sets the tenant id of the azure subscription belongs to
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tenant_id")]
public string TenantId { get; set; }
/// <summary>
/// Gets or sets the name of the azure subscription
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "subscription_name")]
public string SubscriptionName { get; set; }
/// <summary>
/// Gets or sets if the subscription is used for billing
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_billing")]
public bool? IsBilling { get; set; }
/// <summary>
/// Gets or sets if the subscription can be used for billing
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_billable")]
public bool? IsBillable { get; set; }
public virtual void Validate()
{
if (SubscriptionId == null)
{
throw new System.Exception("Property 'SubscriptionId' is required/");
}
if (TenantId == null)
{
throw new System.Exception("Property 'TenantId' is required/");
}
if (SubscriptionName == null)
{
throw new System.Exception("Property 'SubscriptionName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppResponse : BasicAppResponse
{
public AppResponse() { }
/// <summary>
/// Gets or sets a unique and secret key used to identify the app in
/// communication with the ingestion endpoint for crash reporting and
/// analytics
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_secret")]
public string AppSecret { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "azure_subscription")]
public AzureSubscriptionResponse AzureSubscription { get; set; }
/// <summary>
/// Gets or sets the platform of the app. Possible values include:
/// 'Java', 'Objective-C-Swift', 'UWP', 'Cordova', 'React-Native',
/// 'Unity', 'Xamarin', 'Unknown'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public AppResponsePlatform? Platform { get; set; }
/// <summary>
/// Gets or sets the creation origin of this app. Possible values
/// include: 'appcenter', 'hockeyapp', 'codepush'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "origin")]
public AppResponseOrigin? Origin { get; set; }
/// <summary>
/// Gets or sets the created date of this app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "created_at")]
public string CreatedAt { get; set; }
/// <summary>
/// Gets or sets the last updated date of this app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "updated_at")]
public string UpdatedAt { get; set; }
/// <summary>
/// Gets or sets the permissions of the calling user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "member_permissions")]
public AppResponseMemberPermissionsItem?[] MemberPermissions { get; set; }
public override void Validate()
{
base.Validate();
if (this.AzureSubscription != null)
{
this.AzureSubscription.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UserProfileResponse
{
public UserProfileResponse() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the avatar URL of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "avatar_url")]
public string AvatarUrl { get; set; }
/// <summary>
/// Gets or sets user is required to send an old password in order to
/// change the password.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "can_change_password")]
public bool? CanChangePassword { get; set; }
/// <summary>
/// Gets or sets the full name of the user. Might for example be first
/// and last name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the email address of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the unique name that is used to identify the user.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the permissions the user has for the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "permissions")]
public UserProfileResponsePermissionsItem?[] Permissions { get; set; }
/// <summary>
/// Gets or sets the creation origin of this user. Possible values
/// include: 'appcenter', 'hockeyapp', 'codepush'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "origin")]
public UserProfileResponseOrigin Origin { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (Email == null)
{
throw new System.Exception("Property 'Email' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppInvitationDetailResponse
{
public AppInvitationDetailResponse() { }
/// <summary>
/// Gets or sets the unique ID (UUID) of the invitation
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app")]
public AppResponse App { get; set; }
/// <summary>
/// Gets or sets the email address of the invited user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the invitation type. Possible values include:
/// 'developer', 'tester'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "invite_type")]
public AppInvitationDetailResponseInviteType InviteType { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "invited_by")]
public UserProfileResponse InvitedBy { get; set; }
/// <summary>
/// Gets or sets indicates whether the invited user already exists
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_existing_user")]
public bool IsExistingUser { get; set; }
/// <summary>
/// Gets or sets the permissions the user has for the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "permissions")]
public AppInvitationDetailResponsePermissionsItem?[] Permissions { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (App == null)
{
throw new System.Exception("Property 'App' is required/");
}
if (Email == null)
{
throw new System.Exception("Property 'Email' is required/");
}
if (InvitedBy == null)
{
throw new System.Exception("Property 'InvitedBy' is required/");
}
if (this.App != null)
{
this.App.Validate();
}
if (this.InvitedBy != null)
{
this.InvitedBy.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppRepoResponse
{
public AppRepoResponse() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the repository integration
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the unique id (UUID) of the app that this repository
/// integration belongs to
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets the absolute URL of the repository
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_url")]
public string RepoUrl { get; set; }
/// <summary>
/// Gets or sets the provider of the repository. Possible values
/// include: 'github', 'bitbucket', 'vsts'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_provider")]
public AppRepoResponseRepoProvider? RepoProvider { get; set; }
/// <summary>
/// Gets or sets the unique id (UUID) of the user who configured the
/// repository
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_id")]
public string UserId { get; set; }
/// <summary>
/// Gets or sets installation id from the provider
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "installation_id")]
public string InstallationId { get; set; }
/// <summary>
/// Gets or sets repository id from the provider
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_id")]
public string RepoId { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (AppId == null)
{
throw new System.Exception("Property 'AppId' is required/");
}
if (RepoUrl == null)
{
throw new System.Exception("Property 'RepoUrl' is required/");
}
if (UserId == null)
{
throw new System.Exception("Property 'UserId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The information about the app's owner
/// </summary>
public partial class Owner
{
public Owner() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the owner
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the avatar URL of the owner
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "avatar_url")]
public string AvatarUrl { get; set; }
/// <summary>
/// Gets or sets the owner's display name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the owner's email address
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the unique name that used to identify the owner
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the owner type. Can either be 'org' or 'user'.
/// Possible values include: 'org', 'user'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public OwnerType Type { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class BasicAppResponse
{
public BasicAppResponse() { }
/// <summary>
/// Gets or sets the unique ID (UUID) of the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the description of the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets the display name of the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the string representation of the URL pointing to the
/// app's icon
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "icon_url")]
public string IconUrl { get; set; }
/// <summary>
/// Gets or sets the name of the app used in URLs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the OS the app will be running on. Possible values
/// include: 'Android', 'iOS', 'macOS', 'Tizen', 'tvOS', 'Windows',
/// 'Custom'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os")]
public BasicAppResponseOs Os { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "owner")]
public Owner Owner { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (Owner == null)
{
throw new System.Exception("Property 'Owner' is required/");
}
if (this.Owner != null)
{
this.Owner.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionGroupResponse
{
public DistributionGroupResponse() { }
/// <summary>
/// Gets or sets the unique ID of the distribution group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the name of the distribution group used in URLs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the creation origin of this distribution group.
/// Possible values include: 'appcenter', 'hockeyapp'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "origin")]
public DistributionGroupResponseOrigin Origin { get; set; }
/// <summary>
/// Gets or sets whether the distribution group is public
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_public")]
public bool IsPublic { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TesterAppResponse : BasicAppResponse
{
public TesterAppResponse() { }
/// <summary>
/// Gets or sets the IDs of the distribution groups the current user is
/// member of.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_groups")]
public DistributionGroupResponse[] DistributionGroups { get; set; }
public override void Validate()
{
base.Validate();
if (this.DistributionGroups != null)
{
foreach (var element in this.DistributionGroups)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppResponseInternalRepositoriesItem
{
public AppResponseInternalRepositoriesItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_provider")]
public string RepoProvider { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_url")]
public string RepoUrl { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppResponseInternal : AppResponse
{
public AppResponseInternal() { }
/// <summary>
/// Gets or sets the feature flags that are enabled for this app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "feature_flags")]
public string[] FeatureFlags { get; set; }
/// <summary>
/// Gets or sets the repositories associated with this app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repositories")]
public AppResponseInternalRepositoriesItem[] Repositories { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppUserPermissionResponse
{
public AppUserPermissionResponse() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets the permissions the user has for the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "permissions")]
public AppUserPermissionResponsePermissionsItem?[] Permissions { get; set; }
/// <summary>
/// Gets or sets the email of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_email")]
public string UserEmail { get; set; }
/// <summary>
/// Gets or sets the unique id (UUID) of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_id")]
public string UserId { get; set; }
/// <summary>
/// Gets or sets the creation origin of this app. Possible values
/// include: 'appcenter', 'hockeyapp', 'codepush'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_origin")]
public AppUserPermissionResponseAppOrigin AppOrigin { get; set; }
/// <summary>
/// Gets or sets a unique and secret key used to identify the app in
/// communication with the ingestion endpoint for crash reporting and
/// analytics
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_secret")]
public string AppSecret { get; set; }
public virtual void Validate()
{
if (AppId == null)
{
throw new System.Exception("Property 'AppId' is required/");
}
if (Permissions == null)
{
throw new System.Exception("Property 'Permissions' is required/");
}
if (UserEmail == null)
{
throw new System.Exception("Property 'UserEmail' is required/");
}
if (UserId == null)
{
throw new System.Exception("Property 'UserId' is required/");
}
if (AppSecret == null)
{
throw new System.Exception("Property 'AppSecret' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppWithTeamPermissionsResponse : AppResponse
{
public AppWithTeamPermissionsResponse() { }
/// <summary>
/// Gets or sets the permissions the team has for the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "team_permissions")]
public AppWithTeamPermissionsResponseTeamPermissionsItem?[] TeamPermissions { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OrgUserPermissionResponse
{
public OrgUserPermissionResponse() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the org
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "orgId")]
public string OrgId { get; set; }
/// <summary>
/// Gets or sets the user role for the org. Possible values include:
/// 'admin', 'collaborator'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "userRole")]
public OrgUserPermissionResponseUserRole UserRole { get; set; }
public virtual void Validate()
{
if (OrgId == null)
{
throw new System.Exception("Property 'OrgId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionGroupUserDeleteResponse
{
public DistributionGroupUserDeleteResponse() { }
/// <summary>
/// Gets or sets the code of the result
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code")]
public string Code { get; set; }
/// <summary>
/// Gets or sets the message of the result
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public int? Message { get; set; }
/// <summary>
/// Gets or sets the status code of the result
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public int Status { get; set; }
/// <summary>
/// Gets or sets the email of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_email")]
public string UserEmail { get; set; }
public virtual void Validate()
{
//Nothing to validate
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionGroupUserGetResponse
{
public DistributionGroupUserGetResponse() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the avatar URL of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "avatar_url")]
public string AvatarUrl { get; set; }
/// <summary>
/// Gets or sets user is required to send an old password in order to
/// change the password.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "can_change_password")]
public bool? CanChangePassword { get; set; }
/// <summary>
/// Gets or sets the full name of the user. Might for example be first
/// and last name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the email address of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets whether the has accepted the invite. Available when an
/// invite is pending, and the value will be "true".
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "invite_pending")]
public bool? InvitePending { get; set; }
/// <summary>
/// Gets or sets the unique name that is used to identify the user.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Email == null)
{
throw new System.Exception("Property 'Email' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionGroupUserPostResponse
{
public DistributionGroupUserPostResponse() { }
/// <summary>
/// Gets or sets the code of the result
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code")]
public string Code { get; set; }
/// <summary>
/// Gets or sets whether the has accepted the invite. Available when an
/// invite is pending, and the value will be "true".
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "invite_pending")]
public bool? InvitePending { get; set; }
/// <summary>
/// Gets or sets the message of the result
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public int? Message { get; set; }
/// <summary>
/// Gets or sets the status code of the result
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public int Status { get; set; }
/// <summary>
/// Gets or sets the email of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_email")]
public string UserEmail { get; set; }
public virtual void Validate()
{
//Nothing to validate
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionGroupWithUsersResponse
{
public DistributionGroupWithUsersResponse() { }
/// <summary>
/// Gets or sets the unique ID of the distribution group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the name of the distribution group used in URLs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the count of users in the distribution group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total_user_count")]
public double TotalUserCount { get; set; }
/// <summary>
/// Gets or sets the count of non-pending users in the distribution
/// group who will be notified by new releases
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "notified_user_count")]
public double NotifiedUserCount { get; set; }
/// <summary>
/// Gets or sets whether the distribution group is public
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_public")]
public bool? IsPublic { get; set; }
/// <summary>
/// Gets or sets the distribution group users
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "users")]
public DistributionGroupUserGetResponse[] Users { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (Users == null)
{
throw new System.Exception("Property 'Users' is required/");
}
if (this.Users != null)
{
foreach (var element in this.Users)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class FeatureFlagsResponse
{
public FeatureFlagsResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "feature_flags")]
public string[] FeatureFlags { get; set; }
public virtual void Validate()
{
if (FeatureFlags == null)
{
throw new System.Exception("Property 'FeatureFlags' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class FeatureResponse
{
public FeatureResponse() { }
/// <summary>
/// Gets or sets the description of the feature
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets the friendly name of the feature
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the unique name of the feature
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the state (unset, enabled, disabled) of the feature
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state")]
public int State { get; set; }
public virtual void Validate()
{
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class InternalUserSignupResponse
{
public InternalUserSignupResponse() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the full name of the user. Might for example be first
/// and last name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the email address of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the name of the external auth provider
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "external_provider")]
public string ExternalProvider { get; set; }
/// <summary>
/// Gets or sets the user ID given by the external provider
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "external_user_id")]
public string ExternalUserId { get; set; }
/// <summary>
/// Gets or sets the unique name that is used to identify the user.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the current status of the user record after signup.
/// Possible values include: 'Complete', 'NeedsVerification'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public InternalUserSignupResponseStatus? Status { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (Email == null)
{
throw new System.Exception("Property 'Email' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OrganizationResponse
{
public OrganizationResponse() { }
/// <summary>
/// Gets or sets the internal unique id (UUID) of the organization.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the display name of the organization
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the slug name of the organization
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the creation origin of this organization. Possible
/// values include: 'appcenter', 'hockeyapp'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "origin")]
public OrganizationResponseOrigin Origin { get; set; }
/// <summary>
/// Gets or sets the creation date of this organization
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "created_at")]
public string CreatedAt { get; set; }
/// <summary>
/// Gets or sets the date the organization was last updated at
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "updated_at")]
public string UpdatedAt { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (CreatedAt == null)
{
throw new System.Exception("Property 'CreatedAt' is required/");
}
if (UpdatedAt == null)
{
throw new System.Exception("Property 'UpdatedAt' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class InvitationDetailResponse
{
public InvitationDetailResponse() { }
/// <summary>
/// Gets or sets the id of the invitation
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "invitation_id")]
public string InvitationId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "invited_by")]
public UserProfileResponse InvitedBy { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "organization")]
public OrganizationResponse Organization { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app")]
public AppResponse App { get; set; }
public virtual void Validate()
{
if (InvitationId == null)
{
throw new System.Exception("Property 'InvitationId' is required/");
}
if (InvitedBy == null)
{
throw new System.Exception("Property 'InvitedBy' is required/");
}
if (this.InvitedBy != null)
{
this.InvitedBy.Validate();
}
if (this.Organization != null)
{
this.Organization.Validate();
}
if (this.App != null)
{
this.App.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OrgNameAvailabilityResponse
{
public OrgNameAvailabilityResponse() { }
/// <summary>
/// Gets or sets the availability status of the requested org name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "available")]
public bool Available { get; set; }
/// <summary>
/// Gets or sets the generated org name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OrganizationInvitationDetailResponse
{
public OrganizationInvitationDetailResponse() { }
/// <summary>
/// Gets or sets the unique ID (UUID) of the invitation
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "organization")]
public OrganizationResponse Organization { get; set; }
/// <summary>
/// Gets or sets the email address of the invited user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "invited_by")]
public UserProfileResponse InvitedBy { get; set; }
/// <summary>
/// Gets or sets indicates whether the invited user already exists
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_existing_user")]
public bool IsExistingUser { get; set; }
/// <summary>
/// Gets or sets the role assigned to the invited user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "role")]
public string Role { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (Organization == null)
{
throw new System.Exception("Property 'Organization' is required/");
}
if (Email == null)
{
throw new System.Exception("Property 'Email' is required/");
}
if (InvitedBy == null)
{
throw new System.Exception("Property 'InvitedBy' is required/");
}
if (this.Organization != null)
{
this.Organization.Validate();
}
if (this.InvitedBy != null)
{
this.InvitedBy.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OrganizationInvitationSimpleDetailResponse
{
public OrganizationInvitationSimpleDetailResponse() { }
/// <summary>
/// Gets or sets the unique ID (UUID) of the invitation
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the email address of the invited user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the role assigned to the invited user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "role")]
public object Role { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (Email == null)
{
throw new System.Exception("Property 'Email' is required/");
}
if (Role == null)
{
throw new System.Exception("Property 'Role' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OrganizationResponseInternal : OrganizationResponse
{
public OrganizationResponseInternal() { }
/// <summary>
/// Gets or sets the feature flags that are enabled for this
/// organization
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "feature_flags")]
public string[] FeatureFlags { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OrganizationResponseManagement : OrganizationResponseInternal
{
public OrganizationResponseManagement() { }
/// <summary>
/// Gets or sets the organization email, if the app was synced from
/// HockeyApp
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OrganizationUserResponse
{
public OrganizationUserResponse() { }
/// <summary>
/// Gets or sets the email address of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the full name of the user. Might for example be first
/// and last name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the date when the user joined the organization
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "joined_at")]
public string JoinedAt { get; set; }
/// <summary>
/// Gets or sets the unique name that is used to identify the user.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the role the user has within the organization
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "role")]
public string Role { get; set; }
public virtual void Validate()
{
if (Email == null)
{
throw new System.Exception("Property 'Email' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (JoinedAt == null)
{
throw new System.Exception("Property 'JoinedAt' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (Role == null)
{
throw new System.Exception("Property 'Role' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TeamAppUpdateRequest
{
public TeamAppUpdateRequest() { }
/// <summary>
/// Gets or sets the permissions all members of the team have on the
/// app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "permissions")]
public TeamAppUpdateRequestPermissionsItem?[] Permissions { get; set; }
public virtual void Validate()
{
if (Permissions == null)
{
throw new System.Exception("Property 'Permissions' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TeamRequest
{
public TeamRequest() { }
/// <summary>
/// Gets or sets the display name of the team
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the name of the team
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the description of the team
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
public virtual void Validate()
{
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TeamResponse
{
public TeamResponse() { }
/// <summary>
/// Gets or sets the internal unique id (UUID) of the team.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the name of the team
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the display name of the team
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the description of the team
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TeamAppResponse : TeamResponse
{
public TeamAppResponse() { }
/// <summary>
/// Gets or sets the permissions the team has for the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "permissions")]
public TeamAppResponsePermissionsItem?[] Permissions { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class StatusResponse
{
public StatusResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
public virtual void Validate()
{
if (Status == null)
{
throw new System.Exception("Property 'Status' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class SubscriptionMetrics
{
public SubscriptionMetrics() { }
/// <summary>
/// Gets or sets the name of the subsciption (prefixed with the topic
/// name)
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the number of messages in the subscription
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message_count")]
public double MessageCount { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ServiceBusStatusResponse
{
public ServiceBusStatusResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "subscriptions")]
public SubscriptionMetrics[] Subscriptions { get; set; }
public virtual void Validate()
{
if (Status == null)
{
throw new System.Exception("Property 'Status' is required/");
}
if (this.Subscriptions != null)
{
foreach (var element in this.Subscriptions)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TeamUserResponse
{
public TeamUserResponse() { }
/// <summary>
/// Gets or sets the email address of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the full name of the user. Might for example be first
/// and last name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the unique name that is used to identify the user.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the role of the user has within the team
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "role")]
public object Role { get; set; }
public virtual void Validate()
{
if (Email == null)
{
throw new System.Exception("Property 'Email' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (Role == null)
{
throw new System.Exception("Property 'Role' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UserAuthResponse
{
public UserAuthResponse() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the full name of the user. Might for example be first
/// and last name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the email address of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the name of the external auth provider
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "external_provider")]
public string ExternalProvider { get; set; }
/// <summary>
/// Gets or sets the user ID given by the external provider
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "external_user_id")]
public string ExternalUserId { get; set; }
/// <summary>
/// Gets or sets the unique name that is used to identify the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the creation origin of this user. Possible values
/// include: 'appcenter', 'hockeyapp', 'codepush'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "origin")]
public UserAuthResponseOrigin Origin { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (Email == null)
{
throw new System.Exception("Property 'Email' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UserNameAvailabilityResponse
{
public UserNameAvailabilityResponse() { }
/// <summary>
/// Gets or sets the availability status of the requested user name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "available")]
public bool Available { get; set; }
/// <summary>
/// Gets or sets the requested user name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The user's settings
/// </summary>
public partial class UserProfileResponseInternalSettings
{
public UserProfileResponseInternalSettings() { }
/// <summary>
/// Gets or sets the marketing opt-in setting
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "marketing_opt_in")]
public string MarketingOptIn { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UserProfileResponseInternal : UserProfileResponse
{
public UserProfileResponseInternal() { }
/// <summary>
/// Gets or sets the feature flags that are enabled for this app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "feature_flags")]
public string[] FeatureFlags { get; set; }
/// <summary>
/// Gets or sets the new admin_role. Possible values include:
/// 'superAdmin', 'admin', 'devOps', 'customerSupport', 'notAdmin'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "admin_role")]
public UserProfileResponseInternalAdminRole? AdminRole { get; set; }
/// <summary>
/// Gets or sets the user's settings
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "settings")]
public UserProfileResponseInternalSettings Settings { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UserProfileResponseManagement : UserProfileResponseInternal
{
public UserProfileResponseManagement() { }
/// <summary>
/// Gets or sets the date when the app was last updated
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "updated_at")]
public string UpdatedAt { get; set; }
/// <summary>
/// Gets or sets a boolean flag that indicates if the user is already
/// verified
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "verified")]
public bool? Verified { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A user's setting
/// </summary>
public partial class UserSettingResponse
{
public UserSettingResponse() { }
/// <summary>
/// Gets or sets the marketing opt-in setting
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "marketing_opt_in")]
public string MarketingOptIn { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// SharedConnectionRequest
/// </summary>
public partial class SharedConnectionRequest
{
public SharedConnectionRequest() { }
/// <summary>
/// Gets or sets display name of shared connection
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets credential type of the shared connection. Values can
/// be credentials|certificate. Possible values include: 'credentials',
/// 'certificate'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "credentialType")]
public SharedConnectionRequestCredentialType? CredentialType { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// SharedConnectionRequest
/// </summary>
public partial class SharedConnectionUpdateRequest
{
public SharedConnectionUpdateRequest() { }
/// <summary>
/// Gets or sets display name of shared connection
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets represents the data for connecting to service
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public object Data { get; set; }
public virtual void Validate()
{
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// SharedConnectionResponse
/// </summary>
public partial class SharedConnectionResponse
{
public SharedConnectionResponse() { }
/// <summary>
/// Gets or sets id of the shared connection
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets display name of shared connection
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the type of the credential. Possible values include:
/// 'credentials', 'certificate'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "credentialType")]
public SharedConnectionResponseCredentialType CredentialType { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// PrivateSharedConnectionResponse
/// </summary>
public partial class PrivateSharedConnectionResponse
{
public PrivateSharedConnectionResponse() { }
/// <summary>
/// Gets or sets id of the shared connection
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets display name of shared connection
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple connection secrets
/// </summary>
public partial class AppleConnectionSecretRequest : SharedConnectionRequest
{
public AppleConnectionSecretRequest() { }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple secret details
/// </summary>
public partial class AppleSecretDetails
{
public AppleSecretDetails() { }
/// <summary>
/// Gets or sets username to connect to apple store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "username")]
public string Username { get; set; }
/// <summary>
/// Gets or sets password to connect to apple store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
public virtual void Validate()
{
if (Username == null)
{
throw new System.Exception("Property 'Username' is required/");
}
if (Password == null)
{
throw new System.Exception("Property 'Password' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple connection secrets
/// </summary>
public partial class AppleCredentialsSecretRequest : AppleConnectionSecretRequest
{
public AppleCredentialsSecretRequest() { }
/// <summary>
/// Gets or sets apple secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public AppleSecretDetails Data { get; set; }
public virtual void Validate()
{
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
if (this.Data != null)
{
this.Data.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple Certificate Details
/// </summary>
public partial class AppleCertificateDetails
{
public AppleCertificateDetails() { }
/// <summary>
/// Gets or sets the certificate contents in base 64 encoded string
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "base64Certificate")]
public string Base64Certificate { get; set; }
/// <summary>
/// Gets or sets the password for the certificate
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
public virtual void Validate()
{
if (Base64Certificate == null)
{
throw new System.Exception("Property 'Base64Certificate' is required/");
}
if (Password == null)
{
throw new System.Exception("Property 'Password' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple certificate secrets
/// </summary>
public partial class AppleCertificateSecretRequest : AppleConnectionSecretRequest
{
public AppleCertificateSecretRequest() { }
/// <summary>
/// Gets or sets apple secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public AppleCertificateDetails Data { get; set; }
public virtual void Validate()
{
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
if (this.Data != null)
{
this.Data.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// private Apple connection secrets response
/// </summary>
public partial class PrivateAppleSecretResponse : PrivateSharedConnectionResponse
{
public PrivateAppleSecretResponse() { }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// private Apple connection secrets response
/// </summary>
public partial class PrivateAppleCredentialsSecretResponse : PrivateAppleSecretResponse
{
public PrivateAppleCredentialsSecretResponse() { }
/// <summary>
/// Gets or sets apple secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public AppleSecretDetails Data { get; set; }
public override void Validate()
{
base.Validate();
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
if (this.Data != null)
{
this.Data.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple Certificate Secret Details
/// </summary>
public partial class AppleCertificateSecretDetails
{
public AppleCertificateSecretDetails() { }
/// <summary>
/// Gets or sets the certificate contents in base 64 encoded string
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "base64Certificate")]
public string Base64Certificate { get; set; }
/// <summary>
/// Gets or sets the password for the certificate
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
/// <summary>
/// Gets or sets the display name (CN) of the certificate
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the date-time from which the certificate is valid
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "certificateValidityStartDate")]
public string CertificateValidityStartDate { get; set; }
/// <summary>
/// Gets or sets the date-time till which the certificate is valid
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "certificateValidityEndDate")]
public string CertificateValidityEndDate { get; set; }
public virtual void Validate()
{
if (Base64Certificate == null)
{
throw new System.Exception("Property 'Base64Certificate' is required/");
}
if (Password == null)
{
throw new System.Exception("Property 'Password' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (CertificateValidityStartDate == null)
{
throw new System.Exception("Property 'CertificateValidityStartDate' is required/");
}
if (CertificateValidityEndDate == null)
{
throw new System.Exception("Property 'CertificateValidityEndDate' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// private Apple connection secrets response
/// </summary>
public partial class PrivateAppleCertificateSecretResponse : PrivateAppleSecretResponse
{
public PrivateAppleCertificateSecretResponse() { }
/// <summary>
/// Gets or sets apple secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public AppleCertificateSecretDetails Data { get; set; }
public override void Validate()
{
base.Validate();
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
if (this.Data != null)
{
this.Data.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple secret details
/// </summary>
public partial class AppleSecretDetailsResponse
{
public AppleSecretDetailsResponse() { }
/// <summary>
/// Gets or sets username to connect to apple store
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "username")]
public string Username { get; set; }
public virtual void Validate()
{
if (Username == null)
{
throw new System.Exception("Property 'Username' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple connection secrets
/// </summary>
public partial class AppleConnectionSecretResponse : SharedConnectionResponse
{
public AppleConnectionSecretResponse() { }
/// <summary>
/// Gets or sets apple secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public AppleSecretDetailsResponse Data { get; set; }
public override void Validate()
{
base.Validate();
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
if (this.Data != null)
{
this.Data.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple connection secrets
/// </summary>
public partial class AppleConnectionNonSecretResponse : SharedConnectionResponse
{
public AppleConnectionNonSecretResponse() { }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple credentials non-secret details
/// </summary>
public partial class AppleCredentialNonSecretDetailsResponse : AppleConnectionNonSecretResponse
{
public AppleCredentialNonSecretDetailsResponse() { }
/// <summary>
/// Gets or sets apple credentials non-secret data
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public AppleSecretDetailsResponse Data { get; set; }
public override void Validate()
{
base.Validate();
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
if (this.Data != null)
{
this.Data.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple Certificate Secret Details
/// </summary>
public partial class AppleCertificateNonSecretDetails
{
public AppleCertificateNonSecretDetails() { }
/// <summary>
/// Gets or sets the display name (CN) of the certificate
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the date-time from which the certificate is valid
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "certificateValidityStartDate")]
public string CertificateValidityStartDate { get; set; }
/// <summary>
/// Gets or sets the date-time till which the certificate is valid
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "certificateValidityEndDate")]
public string CertificateValidityEndDate { get; set; }
public virtual void Validate()
{
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (CertificateValidityStartDate == null)
{
throw new System.Exception("Property 'CertificateValidityStartDate' is required/");
}
if (CertificateValidityEndDate == null)
{
throw new System.Exception("Property 'CertificateValidityEndDate' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple certificate non-secret details
/// </summary>
public partial class AppleCertificateNonSecretDetailsResponse : AppleConnectionNonSecretResponse
{
public AppleCertificateNonSecretDetailsResponse() { }
/// <summary>
/// Gets or sets apple certificate non-secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public AppleCertificateNonSecretDetails Data { get; set; }
public override void Validate()
{
base.Validate();
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
if (this.Data != null)
{
this.Data.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple connection secrets
/// </summary>
public partial class AppleCertificateSecretDetailsResponse : SharedConnectionResponse
{
public AppleCertificateSecretDetailsResponse() { }
/// <summary>
/// Gets or sets apple certificate secret details.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public AppleCertificateSecretDetails Data { get; set; }
public override void Validate()
{
base.Validate();
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
if (this.Data != null)
{
this.Data.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Jira secret details
/// </summary>
public partial class JiraSecretDetails
{
public JiraSecretDetails() { }
/// <summary>
/// Gets or sets baseUrl to connect to jira instance
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "baseUrl")]
public string BaseUrl { get; set; }
/// <summary>
/// Gets or sets username to connect to jira instance
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "username")]
public string Username { get; set; }
/// <summary>
/// Gets or sets password to connect to jira instance
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
public virtual void Validate()
{
if (BaseUrl == null)
{
throw new System.Exception("Property 'BaseUrl' is required/");
}
if (Username == null)
{
throw new System.Exception("Property 'Username' is required/");
}
if (Password == null)
{
throw new System.Exception("Property 'Password' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Jira connection secrets
/// </summary>
public partial class JiraConnectionSecretRequest : SharedConnectionRequest
{
public JiraConnectionSecretRequest() { }
/// <summary>
/// Gets or sets jira secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public JiraSecretDetails Data { get; set; }
public virtual void Validate()
{
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
if (this.Data != null)
{
this.Data.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Jira secret details
/// </summary>
public partial class JiraSecretDetailsResponse
{
public JiraSecretDetailsResponse() { }
/// <summary>
/// Gets or sets baseUrl to connect to jira instance
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "baseUrl")]
public string BaseUrl { get; set; }
/// <summary>
/// Gets or sets username to connect to jira instance
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "username")]
public string Username { get; set; }
public virtual void Validate()
{
if (BaseUrl == null)
{
throw new System.Exception("Property 'BaseUrl' is required/");
}
if (Username == null)
{
throw new System.Exception("Property 'Username' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Jira connection secrets
/// </summary>
public partial class JiraConnectionSecretResponse : SharedConnectionResponse
{
public JiraConnectionSecretResponse() { }
/// <summary>
/// Gets or sets jira secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public JiraSecretDetailsResponse Data { get; set; }
public override void Validate()
{
base.Validate();
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
if (this.Data != null)
{
this.Data.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// private Jira connection secrets response
/// </summary>
public partial class PrivateJiraConnectionSecretResponse : PrivateSharedConnectionResponse
{
public PrivateJiraConnectionSecretResponse() { }
/// <summary>
/// Gets or sets jira secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public JiraSecretDetails Data { get; set; }
public override void Validate()
{
base.Validate();
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
if (this.Data != null)
{
this.Data.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Google Play connection secrets this should be the JSON file data which
/// is provided by google play
/// </summary>
public partial class GooglePlayConnectionSecretRequest : SharedConnectionRequest
{
public GooglePlayConnectionSecretRequest() { }
/// <summary>
/// Gets or sets google secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public object Data { get; set; }
public virtual void Validate()
{
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Google Play connection secrets
/// </summary>
public partial class GooglePlayConnectionSecretResponse : SharedConnectionResponse
{
public GooglePlayConnectionSecretResponse() { }
/// <summary>
/// Gets or sets google play secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public object Data { get; set; }
public override void Validate()
{
base.Validate();
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// private google connection secrets response
/// </summary>
public partial class PrivateGooglePlayConnectionSecretResponse : PrivateSharedConnectionResponse
{
public PrivateGooglePlayConnectionSecretResponse() { }
/// <summary>
/// Gets or sets google secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public object Data { get; set; }
public override void Validate()
{
base.Validate();
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Google Play non-secret data
/// </summary>
public partial class GooglePlayConnectionNonSecretResponse : SharedConnectionResponse
{
public GooglePlayConnectionNonSecretResponse() { }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Google Play credentials non-secret details
/// </summary>
public partial class GooglePlayCredentialNonSecretDetailsResponse : GooglePlayConnectionNonSecretResponse
{
public GooglePlayCredentialNonSecretDetailsResponse() { }
/// <summary>
/// Gets or sets google Play credentials non-secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public object Data { get; set; }
public override void Validate()
{
base.Validate();
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Jira non-secret data
/// </summary>
public partial class JiraConnectionNonSecretResponse : SharedConnectionResponse
{
public JiraConnectionNonSecretResponse() { }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Jira credentials non-secret details
/// </summary>
public partial class JiraCredentialNonSecretDetailsResponse : GooglePlayConnectionNonSecretResponse
{
public JiraCredentialNonSecretDetailsResponse() { }
/// <summary>
/// Gets or sets jira credentials non-secret details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data")]
public JiraSecretDetailsResponse Data { get; set; }
public override void Validate()
{
base.Validate();
if (Data == null)
{
throw new System.Exception("Property 'Data' is required/");
}
if (this.Data != null)
{
this.Data.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class HappinessSurveyResponse
{
public HappinessSurveyResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "should_show_survey")]
public bool ShouldShowSurvey { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "postponed_count")]
public int? PostponedCount { get; set; }
public virtual void Validate()
{
if (this.PostponedCount < 0)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'PostponedCount', 0");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class HappinessSurveyAction
{
public HappinessSurveyAction() { }
/// <summary>
/// Gets or sets possible values include: 'dismiss', 'submit',
/// 'postpone'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "button_clicked")]
public HappinessSurveyActionButtonClicked ButtonClicked { get; set; }
public virtual void Validate()
{
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class FileAsset
{
public FileAsset() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "location")]
public string Location { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "token")]
public string Token { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploadDomain")]
public string UploadDomain { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploadWindowLocation")]
public string UploadWindowLocation { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "urlEncodedToken")]
public string UrlEncodedToken { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The source repository
/// </summary>
public partial class SourceRepository
{
public SourceRepository() { }
/// <summary>
/// Gets or sets the repository name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets URL used to clone the repository
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "clone_url")]
public string CloneUrl { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// VSTS user profile
/// </summary>
public partial class VSTSProfile
{
public VSTSProfile() { }
/// <summary>
/// Gets or sets profile id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets profile display name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets profile alias
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "publicAlias")]
public string PublicAlias { get; set; }
/// <summary>
/// Gets or sets profile email
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "emailAddress")]
public string EmailAddress { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// VSTS project
/// </summary>
public partial class VSTSProject
{
public VSTSProject() { }
/// <summary>
/// Gets or sets project id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets project name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets project description
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets project URL
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "url")]
public string Url { get; set; }
/// <summary>
/// Gets or sets project state
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state")]
public string State { get; set; }
/// <summary>
/// Gets or sets project visibility
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "visibility")]
public string Visibility { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// VSTS account with projects list and user info
/// </summary>
public partial class VSTSAccount
{
public VSTSAccount() { }
/// <summary>
/// Gets or sets account id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "accountId")]
public string AccountId { get; set; }
/// <summary>
/// Gets or sets account uri
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "accountUri")]
public string AccountUri { get; set; }
/// <summary>
/// Gets or sets account name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "accountName")]
public string AccountName { get; set; }
/// <summary>
/// Gets or sets account type
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "accountType")]
public string AccountType { get; set; }
/// <summary>
/// Gets or sets account status
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "accountStatus")]
public string AccountStatus { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user")]
public VSTSProfile User { get; set; }
/// <summary>
/// Gets or sets account projects
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "projects")]
public VSTSProject[] Projects { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A download reference
/// </summary>
public partial class DownloadContainer
{
public DownloadContainer() { }
/// <summary>
/// Gets or sets download URI
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uri")]
public string Uri { get; set; }
public virtual void Validate()
{
if (Uri == null)
{
throw new System.Exception("Property 'Uri' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A websocket reference
/// </summary>
public partial class WebSocketContainer
{
public WebSocketContainer() { }
/// <summary>
/// Gets or sets webSocket URL
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "url")]
public string Url { get; set; }
public virtual void Validate()
{
if (Url == null)
{
throw new System.Exception("Property 'Url' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class XcodeArchiveProject
{
public XcodeArchiveProject() { }
/// <summary>
/// Gets or sets the Id of the target to archive
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "archiveTargetId")]
public string ArchiveTargetId { get; set; }
/// <summary>
/// Gets or sets the project to archive container name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "projectName")]
public string ProjectName { get; set; }
/// <summary>
/// Gets or sets full path of the target project
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "projectPath")]
public string ProjectPath { get; set; }
public virtual void Validate()
{
if (ArchiveTargetId == null)
{
throw new System.Exception("Property 'ArchiveTargetId' is required/");
}
if (ProjectName == null)
{
throw new System.Exception("Property 'ProjectName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class XcodeScheme
{
public XcodeScheme() { }
/// <summary>
/// Gets or sets scheme name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets does scheme have a test action?
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "hasTestAction")]
public bool HasTestAction { get; set; }
/// <summary>
/// Gets or sets build configuration set in Archive action
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "archiveConfiguration")]
public string ArchiveConfiguration { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "archiveProject")]
public XcodeArchiveProject ArchiveProject { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (this.ArchiveProject != null)
{
this.ArchiveProject.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class XcodeSchemeContainer
{
public XcodeSchemeContainer() { }
/// <summary>
/// Gets or sets path to project
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "path")]
public string Path { get; set; }
/// <summary>
/// Gets or sets project schemes
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sharedSchemes")]
public XcodeScheme[] SharedSchemes { get; set; }
/// <summary>
/// Gets or sets path to CocoaPods file, if present
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "podfilePath")]
public string PodfilePath { get; set; }
/// <summary>
/// Gets or sets path to Carthage file, if present
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "cartfilePath")]
public string CartfilePath { get; set; }
/// <summary>
/// Gets or sets repo object Id of the pbxproject
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "xcodeProjectSha")]
public string XcodeProjectSha { get; set; }
/// <summary>
/// Gets or sets related projects paths for xcworkspace
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "workspaceProjectPaths")]
public string WorkspaceProjectPaths { get; set; }
public virtual void Validate()
{
if (Path == null)
{
throw new System.Exception("Property 'Path' is required/");
}
if (SharedSchemes == null)
{
throw new System.Exception("Property 'SharedSchemes' is required/");
}
if (this.SharedSchemes != null)
{
foreach (var element in this.SharedSchemes)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class XcodeToolset
{
public XcodeToolset() { }
/// <summary>
/// Gets or sets the Xcode scheme containers
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "xcodeSchemeContainers")]
public XcodeSchemeContainer[] XcodeSchemeContainers { get; set; }
public virtual void Validate()
{
if (XcodeSchemeContainers == null)
{
throw new System.Exception("Property 'XcodeSchemeContainers' is required/");
}
if (this.XcodeSchemeContainers != null)
{
foreach (var element in this.XcodeSchemeContainers)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class XamarinSolution
{
public XamarinSolution() { }
/// <summary>
/// Gets or sets path to solution
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "path")]
public string Path { get; set; }
/// <summary>
/// Gets or sets solution configurations
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "configurations")]
public string[] Configurations { get; set; }
/// <summary>
/// Gets or sets solution default configuration
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "defaultConfiguration")]
public string DefaultConfiguration { get; set; }
public virtual void Validate()
{
if (Path == null)
{
throw new System.Exception("Property 'Path' is required/");
}
if (Configurations == null)
{
throw new System.Exception("Property 'Configurations' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class XamarinToolset
{
public XamarinToolset() { }
/// <summary>
/// Gets or sets xamarin solutions for the toolset
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "xamarinSolutions")]
public XamarinSolution[] XamarinSolutions { get; set; }
public virtual void Validate()
{
if (XamarinSolutions == null)
{
throw new System.Exception("Property 'XamarinSolutions' is required/");
}
if (this.XamarinSolutions != null)
{
foreach (var element in this.XamarinSolutions)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AndroidModule
{
public AndroidModule() { }
/// <summary>
/// Gets or sets name of the Android module
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the product flavors of the Android module
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "productFlavors")]
public string[] ProductFlavors { get; set; }
/// <summary>
/// Gets or sets the detected build variants of the Android module
/// (matrix of product flavor + build type (debug|release))
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "buildVariants")]
public string[] BuildVariants { get; set; }
/// <summary>
/// Gets or sets the detected build types fo the Android module
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "buildTypes")]
public string[] BuildTypes { get; set; }
/// <summary>
/// Gets or sets whether the module is at the root level of the project
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "isRoot")]
public bool? IsRoot { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AndroidProject
{
public AndroidProject() { }
/// <summary>
/// Gets or sets android Gradle modules
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "androidModules")]
public AndroidModule[] AndroidModules { get; set; }
/// <summary>
/// Gets or sets the path of the Gradle wrapper
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "gradleWrapperPath")]
public string GradleWrapperPath { get; set; }
public virtual void Validate()
{
if (AndroidModules == null)
{
throw new System.Exception("Property 'AndroidModules' is required/");
}
if (this.AndroidModules != null)
{
foreach (var element in this.AndroidModules)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class JavaScriptSolution
{
public JavaScriptSolution() { }
/// <summary>
/// Gets or sets the path to the detected package.json
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "packageJsonPath")]
public string PackageJsonPath { get; set; }
/// <summary>
/// Gets or sets version of React Native from package.json files
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "reactNativeVersion")]
public string ReactNativeVersion { get; set; }
public virtual void Validate()
{
if (PackageJsonPath == null)
{
throw new System.Exception("Property 'PackageJsonPath' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class JavaScriptToolset
{
public JavaScriptToolset() { }
/// <summary>
/// Gets or sets paths for detected package.json files
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "packageJsonPaths")]
public string[] PackageJsonPaths { get; set; }
/// <summary>
/// Gets or sets the React Native solutions detected
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "javascriptSolutions")]
public JavaScriptSolution[] JavascriptSolutions { get; set; }
public virtual void Validate()
{
if (PackageJsonPaths == null)
{
throw new System.Exception("Property 'PackageJsonPaths' is required/");
}
if (this.JavascriptSolutions != null)
{
foreach (var element in this.JavascriptSolutions)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UWPSolution
{
public UWPSolution() { }
/// <summary>
/// Gets or sets the path to the UWP solution
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "path")]
public string Path { get; set; }
/// <summary>
/// Gets or sets the possible configurations detected for the UWP
/// solution
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "configurations")]
public string[] Configurations { get; set; }
public virtual void Validate()
{
if (Path == null)
{
throw new System.Exception("Property 'Path' is required/");
}
if (Configurations == null)
{
throw new System.Exception("Property 'Configurations' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UWPToolset
{
public UWPToolset() { }
/// <summary>
/// Gets or sets the UWP solutions detected
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uwpSolutions")]
public UWPSolution[] UwpSolutions { get; set; }
public virtual void Validate()
{
if (UwpSolutions == null)
{
throw new System.Exception("Property 'UwpSolutions' is required/");
}
if (this.UwpSolutions != null)
{
foreach (var element in this.UwpSolutions)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TestCloudProjectFrameworkProperties
{
public TestCloudProjectFrameworkProperties() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "configurations")]
public string[] Configurations { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TestCloudProject
{
public TestCloudProject() { }
/// <summary>
/// Gets or sets the path to the TestCloud project
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "path")]
public string Path { get; set; }
/// <summary>
/// Gets or sets possible values include: 'Appium', 'Calabash',
/// 'Espresso', 'UITest', 'Generated'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "frameworkType")]
public TestCloudProjectFrameworkType FrameworkType { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "frameworkProperties")]
public TestCloudProjectFrameworkProperties FrameworkProperties { get; set; }
public virtual void Validate()
{
if (Path == null)
{
throw new System.Exception("Property 'Path' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TestCloudToolset
{
public TestCloudToolset() { }
/// <summary>
/// Gets or sets the TestCloud projects detected
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "projects")]
public TestCloudProject[] Projects { get; set; }
public virtual void Validate()
{
if (Projects == null)
{
throw new System.Exception("Property 'Projects' is required/");
}
if (this.Projects != null)
{
foreach (var element in this.Projects)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Abstract platform project
/// </summary>
public partial class ToolsetProject
{
public ToolsetProject() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "path")]
public string Path { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A collection of projects for each type of toolset
/// </summary>
public partial class ToolsetProjects
{
public ToolsetProjects() { }
/// <summary>
/// Gets or sets the commit hash of the analyzed commit
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "commit")]
public string Commit { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "xcode")]
public XcodeToolset Xcode { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "javascript")]
public JavaScriptToolset Javascript { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "xamarin")]
public XamarinToolset Xamarin { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "android")]
public AndroidProject Android { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "buildscripts")]
public System.Collections.Generic.Dictionary<string, ToolsetProject> Buildscripts { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uwp")]
public UWPToolset Uwp { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "testcloud")]
public TestCloudToolset Testcloud { get; set; }
public virtual void Validate()
{
if (this.Xcode != null)
{
this.Xcode.Validate();
}
if (this.Javascript != null)
{
this.Javascript.Validate();
}
if (this.Xamarin != null)
{
this.Xamarin.Validate();
}
if (this.Android != null)
{
this.Android.Validate();
}
if (this.Uwp != null)
{
this.Uwp.Validate();
}
if (this.Testcloud != null)
{
this.Testcloud.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Build
{
public Build() { }
/// <summary>
/// Gets or sets the build ID
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public int Id { get; set; }
/// <summary>
/// Gets or sets the build number
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "buildNumber")]
public string BuildNumber { get; set; }
/// <summary>
/// Gets or sets the time the build was queued
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "queueTime")]
public string QueueTime { get; set; }
/// <summary>
/// Gets or sets the time the build was started
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "startTime")]
public string StartTime { get; set; }
/// <summary>
/// Gets or sets the time the build was finished
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "finishTime")]
public string FinishTime { get; set; }
/// <summary>
/// Gets or sets the time the build status was last changed
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "lastChangedDate")]
public string LastChangedDate { get; set; }
/// <summary>
/// Gets or sets the build status
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets the build result
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "result")]
public string Result { get; set; }
/// <summary>
/// Gets or sets the source branch name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sourceBranch")]
public string SourceBranch { get; set; }
/// <summary>
/// Gets or sets the source SHA
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sourceVersion")]
public string SourceVersion { get; set; }
public virtual void Validate()
{
if (BuildNumber == null)
{
throw new System.Exception("Property 'BuildNumber' is required/");
}
if (QueueTime == null)
{
throw new System.Exception("Property 'QueueTime' is required/");
}
if (Status == null)
{
throw new System.Exception("Property 'Status' is required/");
}
if (Result == null)
{
throw new System.Exception("Property 'Result' is required/");
}
if (SourceBranch == null)
{
throw new System.Exception("Property 'SourceBranch' is required/");
}
if (SourceVersion == null)
{
throw new System.Exception("Property 'SourceVersion' is required/");
}
if (this.Id <= 0)
{
throw new System.Exception("Validation Failed: ExclusiveMinimum, 'Id', 0");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The branch build status
/// </summary>
public partial class BranchStatus
{
public BranchStatus() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "configured")]
public bool Configured { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "lastBuild")]
public Build LastBuild { get; set; }
public virtual void Validate()
{
if (this.LastBuild != null)
{
this.LastBuild.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Commit
{
public Commit() { }
/// <summary>
/// Gets or sets the commit SHA
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sha")]
public string Sha { get; set; }
/// <summary>
/// Gets or sets the URL to the commit
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "url")]
public string Url { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Branch
{
public Branch() { }
/// <summary>
/// Gets or sets the branch name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "commit")]
public Commit Commit { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (Commit == null)
{
throw new System.Exception("Property 'Commit' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The branch build core properties
/// </summary>
public partial class BranchProperties
{
public BranchProperties() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "branch")]
public Branch Branch { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "enabled")]
public bool? Enabled { get; set; }
public virtual void Validate()
{
if (this.Branch != null)
{
this.Branch.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Build configuration when Xcode is part of the build steps
/// </summary>
public partial class XcodeBranchConfigurationProperties
{
public XcodeBranchConfigurationProperties() { }
/// <summary>
/// Gets or sets xcode project/workspace path
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "projectOrWorkspacePath")]
public string ProjectOrWorkspacePath { get; set; }
/// <summary>
/// Gets or sets path to CococaPods file, if present
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "podfilePath")]
public string PodfilePath { get; set; }
/// <summary>
/// Gets or sets path to Carthage file, if present
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "cartfilePath")]
public string CartfilePath { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioningProfileEncoded")]
public string ProvisioningProfileEncoded { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "certificateEncoded")]
public string CertificateEncoded { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioningProfileFileId")]
public string ProvisioningProfileFileId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "certificateFileId")]
public string CertificateFileId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioningProfileUploadId")]
public string ProvisioningProfileUploadId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "certificateUploadId")]
public string CertificateUploadId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "certificatePassword")]
public string CertificatePassword { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "scheme")]
public string Scheme { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "xcodeVersion")]
public string XcodeVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioningProfileFilename")]
public string ProvisioningProfileFilename { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "certificateFilename")]
public string CertificateFilename { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "teamId")]
public string TeamId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "automaticSigning")]
public bool? AutomaticSigning { get; set; }
/// <summary>
/// Gets or sets the selected pbxproject hash to the repositroy
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "xcodeProjectSha")]
public string XcodeProjectSha { get; set; }
/// <summary>
/// Gets or sets the build configuration of the target to archive
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "archiveConfiguration")]
public string ArchiveConfiguration { get; set; }
/// <summary>
/// Gets or sets the target id of the selected scheme to archive
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "targetToArchive")]
public string TargetToArchive { get; set; }
public virtual void Validate()
{
if (ProjectOrWorkspacePath == null)
{
throw new System.Exception("Property 'ProjectOrWorkspacePath' is required/");
}
if (Scheme == null)
{
throw new System.Exception("Property 'Scheme' is required/");
}
if (XcodeVersion == null)
{
throw new System.Exception("Property 'XcodeVersion' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Build configuration when React Native, or other JavaScript tech, is
/// part of the build steps
/// </summary>
public partial class JavaScriptBranchConfigurationProperties
{
public JavaScriptBranchConfigurationProperties() { }
/// <summary>
/// Gets or sets path to package.json file for the main project, e.g.
/// "package.json" or "myapp/package.json"
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "packageJsonPath")]
public string PackageJsonPath { get; set; }
/// <summary>
/// Gets or sets whether to run Jest unit tests, via npm test, during
/// the build
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "runTests")]
public bool? RunTests { get; set; }
/// <summary>
/// Gets or sets version of React Native from package.json files
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "reactNativeVersion")]
public string ReactNativeVersion { get; set; }
public virtual void Validate()
{
if (PackageJsonPath == null)
{
throw new System.Exception("Property 'PackageJsonPath' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Build configuration for Xamarin projects
/// </summary>
public partial class XamarinBranchConfigurationProperties
{
public XamarinBranchConfigurationProperties() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "slnPath")]
public string SlnPath { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "isSimBuild")]
public string IsSimBuild { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "args")]
public string Args { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "configuration")]
public string Configuration { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "p12File")]
public string P12File { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "p12Pwd")]
public string P12Pwd { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provProfile")]
public string ProvProfile { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "monoVersion")]
public string MonoVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sdkBundle")]
public string SdkBundle { get; set; }
public virtual void Validate()
{
if (SlnPath == null)
{
throw new System.Exception("Property 'SlnPath' is required/");
}
if (IsSimBuild == null)
{
throw new System.Exception("Property 'IsSimBuild' is required/");
}
if (Args == null)
{
throw new System.Exception("Property 'Args' is required/");
}
if (Configuration == null)
{
throw new System.Exception("Property 'Configuration' is required/");
}
if (P12File == null)
{
throw new System.Exception("Property 'P12File' is required/");
}
if (P12Pwd == null)
{
throw new System.Exception("Property 'P12Pwd' is required/");
}
if (ProvProfile == null)
{
throw new System.Exception("Property 'ProvProfile' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Build configuration for Android projects
/// </summary>
public partial class AndroidBranchConfigurationProperties
{
public AndroidBranchConfigurationProperties() { }
/// <summary>
/// Gets or sets path to the Gradle wrapper script
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "gradleWrapperPath")]
public string GradleWrapperPath { get; set; }
/// <summary>
/// Gets or sets the Gradle module to build
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "module")]
public string Module { get; set; }
/// <summary>
/// Gets or sets the Android build variant to build
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "variant")]
public string Variant { get; set; }
/// <summary>
/// Gets or sets whether to run unit tests during the build (default)
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "runTests")]
public bool? RunTests { get; set; }
/// <summary>
/// Gets or sets whether to run lint checks during the build (default)
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "runLint")]
public bool? RunLint { get; set; }
public virtual void Validate()
{
if (Module == null)
{
throw new System.Exception("Property 'Module' is required/");
}
if (Variant == null)
{
throw new System.Exception("Property 'Variant' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The branch build configuration for each toolset
/// </summary>
public partial class BranchConfigurationToolsets
{
public BranchConfigurationToolsets() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "xcode")]
public XcodeBranchConfigurationProperties Xcode { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "javascript")]
public JavaScriptBranchConfigurationProperties Javascript { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "xamarin")]
public XamarinBranchConfigurationProperties Xamarin { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "android")]
public AndroidBranchConfigurationProperties Android { get; set; }
public virtual void Validate()
{
if (this.Xcode != null)
{
this.Xcode.Validate();
}
if (this.Javascript != null)
{
this.Javascript.Validate();
}
if (this.Xamarin != null)
{
this.Xamarin.Validate();
}
if (this.Android != null)
{
this.Android.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The versioning configuration for artifacts built for this branch
/// </summary>
public partial class BranchConfigurationArtifactVersioning
{
public BranchConfigurationArtifactVersioning() { }
/// <summary>
/// Gets or sets possible values include: 'buildId', 'timestamp'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "buildNumberFormat")]
public BranchConfigurationArtifactVersioningBuildNumberFormat? BuildNumberFormat { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The branch build configuration
/// </summary>
public partial class BranchConfiguration
{
public BranchConfiguration() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public int Id { get; set; }
/// <summary>
/// Gets or sets possible values include: 'continous', 'continuous',
/// 'manual'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "trigger")]
public BranchConfigurationTrigger? Trigger { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "testsEnabled")]
public bool? TestsEnabled { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "badgeIsEnabled")]
public bool? BadgeIsEnabled { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "signed")]
public bool? Signed { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "toolsets")]
public BranchConfigurationToolsets Toolsets { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "artifactVersioning")]
public BranchConfigurationArtifactVersioning ArtifactVersioning { get; set; }
public virtual void Validate()
{
if (this.Toolsets != null)
{
this.Toolsets.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CommitDetailsCommitAuthor
{
public CommitDetailsCommitAuthor() { }
/// <summary>
/// Gets or sets date and time of the commit
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "date")]
public string Date { get; set; }
/// <summary>
/// Gets or sets author name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets author's email
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CommitDetailsCommit
{
public CommitDetailsCommit() { }
/// <summary>
/// Gets or sets commit message
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "author")]
public CommitDetailsCommitAuthor Author { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CommitDetails : Commit
{
public CommitDetails() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "commit")]
public CommitDetailsCommit Commit { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class RepoConfig
{
public RepoConfig() { }
/// <summary>
/// Gets or sets type of repository
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public string Type { get; set; }
/// <summary>
/// Gets or sets state of the configuration. Possible values include:
/// 'unauthorized', 'inactive', 'active'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state")]
public RepoConfigState State { get; set; }
/// <summary>
/// Gets or sets URL of the repository
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_url")]
public string RepoUrl { get; set; }
/// <summary>
/// Gets or sets repository identifier
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
public virtual void Validate()
{
if (Type == null)
{
throw new System.Exception("Property 'Type' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class RepoInfo
{
public RepoInfo() { }
/// <summary>
/// Gets or sets the repository url
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_url")]
public string RepoUrl { get; set; }
public virtual void Validate()
{
if (RepoUrl == null)
{
throw new System.Exception("Property 'RepoUrl' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The Xcode version
/// </summary>
public partial class XcodeVersion
{
public XcodeVersion() { }
/// <summary>
/// Gets or sets the version name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets if the Xcode is latest stable
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "current")]
public bool? Current { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The Mono version
/// </summary>
public partial class MonoVersion
{
public MonoVersion() { }
/// <summary>
/// Gets or sets the version name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets if the Mono is latest stable
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "current")]
public bool? Current { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The Xamarin SDK bundle
/// </summary>
public partial class XamarinSDKBundle
{
public XamarinSDKBundle() { }
/// <summary>
/// Gets or sets the Mono version
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "monoVersion")]
public string MonoVersion { get; set; }
/// <summary>
/// Gets or sets the Xamarin SDK version
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sdkBundle")]
public string SdkBundle { get; set; }
/// <summary>
/// Gets or sets if the SDK is latest stable
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "current")]
public bool? Current { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class BuildParams
{
public BuildParams() { }
/// <summary>
/// Gets or sets version to build which represents the full Git commit
/// reference
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sourceVersion")]
public string SourceVersion { get; set; }
/// <summary>
/// Gets or sets run build in debug mode
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "debug")]
public bool? Debug { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class BuildPatch
{
public BuildPatch() { }
/// <summary>
/// Gets or sets the build status; used to cancel builds. Possible
/// values include: 'cancelling'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public BuildPatchStatus? Status { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class BuildLog
{
public BuildLog() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public string[] Value { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionRequest
{
public DistributionRequest() { }
/// <summary>
/// Gets or sets a distribution group ID or a store group ID
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distributionGroupId")]
public string DistributionGroupId { get; set; }
/// <summary>
/// Gets or sets the release notes
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "releaseNotes")]
public string ReleaseNotes { get; set; }
public virtual void Validate()
{
if (DistributionGroupId == null)
{
throw new System.Exception("Property 'DistributionGroupId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionResponse
{
public DistributionResponse() { }
/// <summary>
/// Gets or sets status of the Request
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets a unique ID of the upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "upload_id")]
public string UploadId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class BuildServiceStatus
{
public BuildServiceStatus() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "service")]
public string Service { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "url")]
public string Url { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "valid_until")]
public int? ValidUntil { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os")]
public string Os { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class BuildAgentQueue
{
public BuildAgentQueue() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "queue")]
public string Queue { get; set; }
public virtual void Validate()
{
if (Queue == null)
{
throw new System.Exception("Property 'Queue' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ValidationErrorResponse
{
public ValidationErrorResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code")]
public string Code { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (Code == null)
{
throw new System.Exception("Property 'Code' is required/");
}
if (Message == null)
{
throw new System.Exception("Property 'Message' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Queue configured in build definition
/// </summary>
public partial class BuildAgentQueueResponse
{
public BuildAgentQueueResponse() { }
/// <summary>
/// Gets or sets name of the build definition
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "buildDefinition")]
public string BuildDefinition { get; set; }
/// <summary>
/// Gets or sets name of the queue
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Agent queue
/// </summary>
public partial class AgentQueueResponse
{
public AgentQueueResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public int? Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// supported feature
/// </summary>
public partial class AppBuildFeature
{
public AppBuildFeature() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public bool? Value { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Additional details required for file validation
/// </summary>
public partial class FileValidationDetails
{
public FileValidationDetails() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "p12password")]
public string P12password { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "certificateUploadId")]
public string CertificateUploadId { get; set; }
public virtual void Validate()
{
if (P12password == null)
{
throw new System.Exception("Property 'P12password' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Number of pipelines
/// </summary>
public partial class BuildConcurrencyResponse
{
public BuildConcurrencyResponse() { }
/// <summary>
/// Gets or sets the number of pipelines set by the billing plan
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "quantity")]
public double? Quantity { get; set; }
/// <summary>
/// Gets or sets the number of pipelines committed, which can be equal
/// or greater than the number from the billing plan
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "committed_quantity")]
public double? CommittedQuantity { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TesterAppRelease : DistributionGroupRelease
{
public TesterAppRelease() { }
/// <summary>
/// Gets or sets the release's size in bytes.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "size")]
public int? Size { get; set; }
/// <summary>
/// Gets or sets the href required to install a release on a mobile
/// device. On iOS devices will be prefixed with
/// `itms-services://?action=download-manifest&amp;amp;url=`
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "install_url")]
public string InstallUrl { get; set; }
/// <summary>
/// Gets or sets the release's release notes.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_notes")]
public string ReleaseNotes { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The information about the app's owner
/// </summary>
public partial class TesterAppWithReleaseResponseOwner
{
public TesterAppWithReleaseResponseOwner() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the owner
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the avatar URL of the owner
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "avatar_url")]
public string AvatarUrl { get; set; }
/// <summary>
/// Gets or sets the owner's display name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the owner's email address
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the unique name that used to identify the owner
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the owner type. Can either be 'org' or 'user'.
/// Possible values include: 'org', 'user'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public TesterAppWithReleaseResponseOwnerType? Type { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TesterAppWithReleaseResponse
{
public TesterAppWithReleaseResponse() { }
/// <summary>
/// Gets or sets the unique ID (UUID) of the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release")]
public TesterAppRelease Release { get; set; }
/// <summary>
/// Gets or sets the app's name.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the app's display name.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets the description of the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets a URL to the app's icon.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "icon_url")]
public string IconUrl { get; set; }
/// <summary>
/// Gets or sets the app's os.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os")]
public string Os { get; set; }
/// <summary>
/// Gets or sets the information about the app's owner
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "owner")]
public TesterAppWithReleaseResponseOwner Owner { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// latest email content
/// </summary>
public partial class SendNotificationRequestEmailContents
{
public SendNotificationRequestEmailContents() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_id")]
public string ReleaseId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_name")]
public string AppName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public string Platform { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "build")]
public string Build { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "install_link")]
public string InstallLink { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class SendNotificationRequest
{
public SendNotificationRequest() { }
/// <summary>
/// Gets or sets user list to send email notification
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "userIds")]
public string[] UserIds { get; set; }
/// <summary>
/// Gets or sets latest email content
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "emailContents")]
public SendNotificationRequestEmailContents EmailContents { get; set; }
public virtual void Validate()
{
if (UserIds == null)
{
throw new System.Exception("Property 'UserIds' is required/");
}
if (EmailContents == null)
{
throw new System.Exception("Property 'EmailContents' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Response for retrieving user interaction metrics.
/// </summary>
public partial class UserInteractionMetricsResponse
{
public UserInteractionMetricsResponse() { }
/// <summary>
/// Gets or sets check if the user has less than 100 apps.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "less_than_100_apps")]
public bool? LessThan100Apps { get; set; }
/// <summary>
/// Gets or sets check if the user's whole apps has more than 1
/// releases.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "has_more_than_1_release")]
public bool? HasMoreThan1Release { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ReleaseUpdateResponseDestinationsItem
{
public ReleaseUpdateResponseDestinationsItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Response for updating a release
/// </summary>
public partial class ReleaseUpdateResponse
{
public ReleaseUpdateResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "mandatory_update")]
public bool? MandatoryUpdate { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_notes")]
public string ReleaseNotes { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destinations")]
public ReleaseUpdateResponseDestinationsItem[] Destinations { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Details of an uploaded release
/// </summary>
public partial class PrivateReleaseDetailsResponse
{
public PrivateReleaseDetailsResponse() { }
/// <summary>
/// Gets or sets ID identifying this unique release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public int? Id { get; set; }
/// <summary>
/// Gets or sets OBSOLETE. Will be removed in next version. The
/// availability concept is now replaced with distributed. Any
/// 'available' release will be associated with the default
/// distribution group of an app.&amp;lt;/br&amp;gt;
/// The release state.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;available&amp;lt;/b&amp;gt;: The uploaded release
/// has been distributed.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;unavailable&amp;lt;/b&amp;gt;: The uploaded
/// release is not visible to the user. &amp;lt;br&amp;gt;
/// . Possible values include: 'available', 'unavailable'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public PrivateReleaseDetailsResponseStatus? Status { get; set; }
/// <summary>
/// Gets or sets the app's name (extracted from the uploaded release).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_name")]
public string AppName { get; set; }
/// <summary>
/// Gets or sets the app's display name.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_display_name")]
public string AppDisplayName { get; set; }
/// <summary>
/// Gets or sets the release's version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleVersion from info.plist.
/// For Android: android:versionCode from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// Gets or sets the release's short version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleShortVersionString from info.plist.
/// For Android: android:versionName from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "short_version")]
public string ShortVersion { get; set; }
/// <summary>
/// Gets or sets the release's release notes.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_notes")]
public string ReleaseNotes { get; set; }
/// <summary>
/// Gets or sets the release's provisioning profile name.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioning_profile_name")]
public string ProvisioningProfileName { get; set; }
/// <summary>
/// Gets or sets the type of the provisioning profile for the requested
/// app version. Possible values include: 'adhoc', 'enterprise',
/// 'other'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioning_profile_type")]
public PrivateReleaseDetailsResponseProvisioningProfileType? ProvisioningProfileType { get; set; }
/// <summary>
/// Gets or sets a flag that determines whether the release's
/// provisioning profile is still extracted or not.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_provisioning_profile_syncing")]
public bool? IsProvisioningProfileSyncing { get; set; }
/// <summary>
/// Gets or sets the release's size in bytes.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "size")]
public int? Size { get; set; }
/// <summary>
/// Gets or sets the release's minimum required operating system.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "min_os")]
public string MinOs { get; set; }
/// <summary>
/// Gets or sets the release's device family.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_family")]
public string DeviceFamily { get; set; }
/// <summary>
/// Gets or sets the release's minimum required Android API level.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "android_min_api_level")]
public string AndroidMinApiLevel { get; set; }
/// <summary>
/// Gets or sets the identifier of the apps bundle.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "bundle_identifier")]
public string BundleIdentifier { get; set; }
/// <summary>
/// Gets or sets MD5 checksum of the release binary.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "fingerprint")]
public string Fingerprint { get; set; }
/// <summary>
/// Gets or sets UTC time in ISO 8601 format of the uploaded time.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploaded_at")]
public string UploadedAt { get; set; }
/// <summary>
/// Gets or sets the URL that hosts the binary for this release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "download_url")]
public string DownloadUrl { get; set; }
/// <summary>
/// Gets or sets a URL to the app's icon.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_icon_url")]
public string AppIconUrl { get; set; }
/// <summary>
/// Gets or sets the href required to install a release on a mobile
/// device. On iOS devices will be prefixed with
/// `itms-services://?action=download-manifest&amp;amp;url=`
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "install_url")]
public string InstallUrl { get; set; }
/// <summary>
/// Gets or sets the destination where release is distributed
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_group_id")]
public string DistributionGroupId { get; set; }
/// <summary>
/// Gets or sets the publishing status of distributed release
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "publishing_status")]
public string PublishingStatus { get; set; }
/// <summary>
/// Gets or sets the destination type.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;group&amp;lt;/b&amp;gt;: The release distributed
/// to internal groups and distribution_groups details will be
/// returned.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;store&amp;lt;/b&amp;gt;: The release distributed
/// to external stores and distribution_stores details will be
/// returned. &amp;lt;br&amp;gt;
/// . Possible values include: 'group', 'store'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destination_type")]
public PrivateReleaseDetailsResponseDestinationType? DestinationType { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Basic information on a release for private apis
/// </summary>
public partial class PrivateBasicReleaseDetailsResponse
{
public PrivateBasicReleaseDetailsResponse() { }
/// <summary>
/// Gets or sets ID identifying this unique release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public int? Id { get; set; }
/// <summary>
/// Gets or sets the release's version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleVersion from info.plist.&amp;lt;br&amp;gt;
/// For Android: android:versionCode from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// Gets or sets the release's short version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleShortVersionString from
/// info.plist.&amp;lt;br&amp;gt;
/// For Android: android:versionName from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "short_version")]
public string ShortVersion { get; set; }
/// <summary>
/// Gets or sets UTC time in ISO 8601 format of the uploaded time.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploaded_at")]
public string UploadedAt { get; set; }
/// <summary>
/// Gets or sets the destination id of release where it is distributed.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_group_id")]
public string DistributionGroupId { get; set; }
/// <summary>
/// Gets or sets the destination type.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;group&amp;lt;/b&amp;gt;: The release distributed
/// to internal groups and distribution_groups details will be
/// returned.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;store&amp;lt;/b&amp;gt;: The release distributed
/// to external stores and distribution_stores details will be
/// returned. &amp;lt;br&amp;gt;
/// . Possible values include: 'group', 'store'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destination_type")]
public PrivateBasicReleaseDetailsResponseDestinationType? DestinationType { get; set; }
/// <summary>
/// Gets or sets indicates if this is the latest release in the group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_latest")]
public bool? IsLatest { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Response for getting a list of releases in a distribution group
/// </summary>
public partial class DistributionGroupRelease
{
public DistributionGroupRelease() { }
/// <summary>
/// Gets or sets ID identifying this unique release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public int? Id { get; set; }
/// <summary>
/// Gets or sets the release's version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleVersion from info.plist.&amp;lt;br&amp;gt;
/// For Android: android:versionCode from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// Gets or sets the release's short version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleShortVersionString from
/// info.plist.&amp;lt;br&amp;gt;
/// For Android: android:versionName from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "short_version")]
public string ShortVersion { get; set; }
/// <summary>
/// Gets or sets UTC time in ISO 8601 format of the uploaded time.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploaded_at")]
public string UploadedAt { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionGroup : DestinationId
{
public DistributionGroup() { }
/// <summary>
/// Gets or sets is the containing release the latest one in this
/// distribution group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_latest")]
public bool? IsLatest { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionStore : DestinationId
{
public DistributionStore() { }
/// <summary>
/// Gets or sets is the containing release the latest one in this
/// distribution store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_latest")]
public bool? IsLatest { get; set; }
/// <summary>
/// Gets or sets type of the distribution store currently stores type
/// can be intune, googleplay or windows. Possible values include:
/// 'intune', 'googleplay', 'windows'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public DistributionStoreType? Type { get; set; }
/// <summary>
/// Gets or sets publishing status of the release in the store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "publishing_status")]
public string PublishingStatus { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Destination
{
public Destination() { }
/// <summary>
/// Gets or sets is the containing release the latest one in this
/// distribution group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_latest")]
public bool? IsLatest { get; set; }
/// <summary>
/// Gets or sets type of the distribution store currently stores type
/// can be intune, googleplay or windows. Possible values include:
/// 'intune', 'googleplay', 'windows'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public DestinationType? Type { get; set; }
/// <summary>
/// Gets or sets publishing status of the release in the store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "publishing_status")]
public string PublishingStatus { get; set; }
/// <summary>
/// Gets or sets destination can be either store or group. Possible
/// values include: 'group', 'store'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destination_type")]
public DestinationDestinationType? DestinationType { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Basic information on a release
/// </summary>
public partial class BasicReleaseDetailsResponse
{
public BasicReleaseDetailsResponse() { }
/// <summary>
/// Gets or sets ID identifying this unique release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public int? Id { get; set; }
/// <summary>
/// Gets or sets the release's version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleVersion from info.plist.&amp;lt;br&amp;gt;
/// For Android: android:versionCode from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// Gets or sets the release's short version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleShortVersionString from
/// info.plist.&amp;lt;br&amp;gt;
/// For Android: android:versionName from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "short_version")]
public string ShortVersion { get; set; }
/// <summary>
/// Gets or sets UTC time in ISO 8601 format of the uploaded time.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploaded_at")]
public string UploadedAt { get; set; }
/// <summary>
/// Gets or sets OBSOLETE. Will be removed in next version. The
/// destination type.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;group&amp;lt;/b&amp;gt;: The release distributed
/// to internal groups and distribution_groups details will be
/// returned.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;store&amp;lt;/b&amp;gt;: The release distributed
/// to external stores and distribution_stores details will be
/// returned. &amp;lt;br&amp;gt;
/// . Possible values include: 'group', 'store'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destination_type")]
public BasicReleaseDetailsResponseDestinationType? DestinationType { get; set; }
/// <summary>
/// Gets or sets OBSOLETE. Will be removed in next version. A list of
/// distribution groups that are associated with this release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_groups")]
public DistributionGroup[] DistributionGroups { get; set; }
/// <summary>
/// Gets or sets OBSOLETE. Will be removed in next version. A list of
/// distribution stores that are associated with this release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_stores")]
public DistributionStore[] DistributionStores { get; set; }
/// <summary>
/// Gets or sets a list of distribution groups or stores.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destinations")]
public Destination[] Destinations { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionGroupWithoutIsLatest
{
public DistributionGroupWithoutIsLatest() { }
/// <summary>
/// Gets or sets ID identifying a unique distribution group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets a name identifying a unique distribution group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DistributionStoreWithoutIsLatest
{
public DistributionStoreWithoutIsLatest() { }
/// <summary>
/// Gets or sets ID identifying a unique distribution store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets a name identifying a unique distribution store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets type of the distribution store currently stores type
/// can be intune, googleplay or windows. Possible values include:
/// 'intune', 'googleplay', 'windows'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public DistributionStoreWithoutIsLatestType? Type { get; set; }
/// <summary>
/// Gets or sets publishing status of the release in the store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "publishing_status")]
public string PublishingStatus { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Details of an uploaded release
/// </summary>
public partial class ReleaseDetailsResponse
{
public ReleaseDetailsResponse() { }
/// <summary>
/// Gets or sets ID identifying this unique release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public int? Id { get; set; }
/// <summary>
/// Gets or sets the app's name (extracted from the uploaded release).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_name")]
public string AppName { get; set; }
/// <summary>
/// Gets or sets the app's display name.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_display_name")]
public string AppDisplayName { get; set; }
/// <summary>
/// Gets or sets the release's version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleVersion from info.plist.
/// For Android: android:versionCode from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// Gets or sets the release's short version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleShortVersionString from info.plist.
/// For Android: android:versionName from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "short_version")]
public string ShortVersion { get; set; }
/// <summary>
/// Gets or sets the release's release notes.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_notes")]
public string ReleaseNotes { get; set; }
/// <summary>
/// Gets or sets the release's provisioning profile name.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioning_profile_name")]
public string ProvisioningProfileName { get; set; }
/// <summary>
/// Gets or sets the type of the provisioning profile for the requested
/// app version. Possible values include: 'adhoc', 'enterprise',
/// 'other'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioning_profile_type")]
public ReleaseDetailsResponseProvisioningProfileType? ProvisioningProfileType { get; set; }
/// <summary>
/// Gets or sets a flag that determines whether the release's
/// provisioning profile is still extracted or not.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_provisioning_profile_syncing")]
public bool? IsProvisioningProfileSyncing { get; set; }
/// <summary>
/// Gets or sets the release's size in bytes.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "size")]
public int? Size { get; set; }
/// <summary>
/// Gets or sets the release's minimum required operating system.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "min_os")]
public string MinOs { get; set; }
/// <summary>
/// Gets or sets the release's device family.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_family")]
public string DeviceFamily { get; set; }
/// <summary>
/// Gets or sets the release's minimum required Android API level.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "android_min_api_level")]
public string AndroidMinApiLevel { get; set; }
/// <summary>
/// Gets or sets the identifier of the apps bundle.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "bundle_identifier")]
public string BundleIdentifier { get; set; }
/// <summary>
/// Gets or sets MD5 checksum of the release binary.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "fingerprint")]
public string Fingerprint { get; set; }
/// <summary>
/// Gets or sets UTC time in ISO 8601 format of the uploaded time.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploaded_at")]
public string UploadedAt { get; set; }
/// <summary>
/// Gets or sets the URL that hosts the binary for this release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "download_url")]
public string DownloadUrl { get; set; }
/// <summary>
/// Gets or sets a URL to the app's icon.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_icon_url")]
public string AppIconUrl { get; set; }
/// <summary>
/// Gets or sets the href required to install a release on a mobile
/// device. On iOS devices will be prefixed with
/// `itms-services://?action=download-manifest&amp;amp;url=`
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "install_url")]
public string InstallUrl { get; set; }
/// <summary>
/// Gets or sets OBSOLETE. Will be removed in next version. The
/// destination type.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;group&amp;lt;/b&amp;gt;: The release distributed
/// to internal groups and distribution_groups details will be
/// returned.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;store&amp;lt;/b&amp;gt;: The release distributed
/// to external stores and distribution_stores details will be
/// returned.&amp;lt;br&amp;gt;
/// . Possible values include: 'group', 'store'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destination_type")]
public ReleaseDetailsResponseDestinationType? DestinationType { get; set; }
/// <summary>
/// Gets or sets OBSOLETE. Will be removed in next version. A list of
/// distribution groups that are associated with this release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_groups")]
public DistributionGroupWithoutIsLatest[] DistributionGroups { get; set; }
/// <summary>
/// Gets or sets OBSOLETE. Will be removed in next version. A list of
/// distribution stores that are associated with this release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_stores")]
public DistributionStoreWithoutIsLatest[] DistributionStores { get; set; }
/// <summary>
/// Gets or sets a list of distribution groups or stores.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destinations")]
public Destination[] Destinations { get; set; }
/// <summary>
/// Gets or sets in calls that allow passing `udid` in the query
/// string, this value will hold the provisioning status of that UDID
/// in this release. Will be ignored for non-iOS platforms.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_udid_provisioned")]
public bool? IsUdidProvisioned { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A response containing information pertaining to starting a release
/// upload process
/// </summary>
public partial class ReleaseUploadBeginResponse
{
public ReleaseUploadBeginResponse() { }
/// <summary>
/// Gets or sets the ID for the current upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "upload_id")]
public string UploadId { get; set; }
/// <summary>
/// Gets or sets the URL where the client needs to upload the release
/// to
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "upload_url")]
public string UploadUrl { get; set; }
/// <summary>
/// Gets or sets in preview, the ID for the current upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "asset_id")]
public string AssetId { get; set; }
/// <summary>
/// Gets or sets in preview, the URL for the current upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "asset_domain")]
public string AssetDomain { get; set; }
/// <summary>
/// Gets or sets in preview, the token for the current upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "asset_token")]
public string AssetToken { get; set; }
public virtual void Validate()
{
if (UploadId == null)
{
throw new System.Exception("Property 'UploadId' is required/");
}
if (UploadUrl == null)
{
throw new System.Exception("Property 'UploadUrl' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A request containing information pertaining to complete a release
/// upload process
/// </summary>
public partial class ReleaseUploadEndRequest
{
public ReleaseUploadEndRequest() { }
/// <summary>
/// Gets or sets the desired operation for the upload. Possible values
/// include: 'committed', 'aborted'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public ReleaseUploadEndRequestStatus Status { get; set; }
public virtual void Validate()
{
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A response containing information about the uploaded release.
/// </summary>
public partial class ReleaseUploadEndResponse
{
public ReleaseUploadEndResponse() { }
/// <summary>
/// Gets or sets the ID of the release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_id")]
public double? ReleaseId { get; set; }
/// <summary>
/// Gets or sets a URL to the new release. If upload was aborted will
/// be null.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_url")]
public string ReleaseUrl { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// An object containing a UUID for an architecture for an iOS app.
/// </summary>
public partial class ArchIdentifier
{
public ArchIdentifier() { }
/// <summary>
/// Gets or sets the architecture that the UUID belongs to, i.e. armv7
/// or arm64.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "architecture")]
public string Architecture { get; set; }
/// <summary>
/// Gets or sets the unique identifier.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uuid")]
public System.Guid Uuid { get; set; }
public virtual void Validate()
{
if (Architecture == null)
{
throw new System.Exception("Property 'Architecture' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// An object containing information about an iOS provisioning profile.
/// </summary>
public partial class ProvisioningProfile
{
public ProvisioningProfile() { }
/// <summary>
/// Gets or sets the name of the provisioning profile.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the application identifier.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "application_identifier")]
public string ApplicationIdentifier { get; set; }
/// <summary>
/// Gets or sets the team identifier.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "team_identifier")]
public string TeamIdentifier { get; set; }
/// <summary>
/// Gets or sets possible values include: 'adhoc', 'enterprise',
/// 'other'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "profile_type")]
public ProvisioningProfileProfileType ProfileType { get; set; }
/// <summary>
/// Gets or sets the profile's expiration date in RFC 3339 format, i.e.
/// 2017-07-21T17:32:28Z
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "expired_at")]
public System.DateTime ExpiredAt { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "udids")]
public string[] Udids { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (ApplicationIdentifier == null)
{
throw new System.Exception("Property 'ApplicationIdentifier' is required/");
}
if (TeamIdentifier == null)
{
throw new System.Exception("Property 'TeamIdentifier' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A request containing information for creating a release.
/// </summary>
public partial class ReleaseCreateRequest
{
public ReleaseCreateRequest() { }
/// <summary>
/// Gets or sets the user that uploaded the build.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploaded_by")]
public string UploadedBy { get; set; }
/// <summary>
/// Gets or sets the display name of the app, extracted from the build.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the release's version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleVersion from info.plist.&amp;lt;br&amp;gt;
/// For Android: android:versionCode from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// Gets or sets the release's short version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleShortVersionString from
/// info.plist.&amp;lt;br&amp;gt;
/// For Android: android:versionName from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "build_version")]
public string BuildVersion { get; set; }
/// <summary>
/// Gets or sets the identifier of the app's bundle.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "unique_identifier")]
public string UniqueIdentifier { get; set; }
/// <summary>
/// Gets or sets the release's minimum required operating system.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "minimum_os_version")]
public string MinimumOsVersion { get; set; }
/// <summary>
/// Gets or sets the release's device family.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_family")]
public string DeviceFamily { get; set; }
/// <summary>
/// Gets or sets the languages supported by the release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "languages")]
public string[] Languages { get; set; }
/// <summary>
/// Gets or sets MD5 checksum of the release binary.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "fingerprint")]
public string Fingerprint { get; set; }
/// <summary>
/// Gets or sets the release's size in bytes.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "size")]
public int Size { get; set; }
/// <summary>
/// Gets or sets the URL to the release's binary.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "package_url")]
public string PackageUrl { get; set; }
/// <summary>
/// Gets or sets the URL to the release's icon.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "icon_url")]
public string IconUrl { get; set; }
/// <summary>
/// Gets or sets a list of UUIDs for architectures for an iOS app.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "ipa_uuids")]
public ArchIdentifier[] IpaUuids { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provision")]
public ProvisioningProfile Provision { get; set; }
/// <summary>
/// Gets or sets iOS app extension provisioning profiles included in
/// the release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appex_provisioning_profiles")]
public ProvisioningProfile[] AppexProvisioningProfiles { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (Version == null)
{
throw new System.Exception("Property 'Version' is required/");
}
if (BuildVersion == null)
{
throw new System.Exception("Property 'BuildVersion' is required/");
}
if (UniqueIdentifier == null)
{
throw new System.Exception("Property 'UniqueIdentifier' is required/");
}
if (MinimumOsVersion == null)
{
throw new System.Exception("Property 'MinimumOsVersion' is required/");
}
if (Fingerprint == null)
{
throw new System.Exception("Property 'Fingerprint' is required/");
}
if (PackageUrl == null)
{
throw new System.Exception("Property 'PackageUrl' is required/");
}
if (this.IpaUuids != null)
{
foreach (var element in this.IpaUuids)
{
if (element != null)
{
element.Validate();
}
}
}
if (this.Provision != null)
{
this.Provision.Validate();
}
if (this.AppexProvisioningProfiles != null)
{
foreach (var element1 in this.AppexProvisioningProfiles)
{
if (element1 != null)
{
element1.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The response from the release creation API that just contains the
/// created release's distinct id.
/// </summary>
public partial class ReleaseCreateResponse
{
public ReleaseCreateResponse() { }
/// <summary>
/// Gets or sets the distinct ID of the release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_distinct_id")]
public double ReleaseDistinctId { get; set; }
public virtual void Validate()
{
//Nothing to validate
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A unique identifier for a destination. A destination can be identified
/// by an ID (guid) or by a name. DestinationId encapsulates both options.
/// A destination can be either a distribution group or a store.
/// </summary>
public partial class DestinationId
{
public DestinationId() { }
/// <summary>
/// Gets or sets name of a distribution group / distribution store. The
/// release will be associated with this distribution group or store.
/// If the distribution group / store doesn't exist a 400 is returned.
/// If both distribution group / store name and id are passed, the id
/// is taking precedence.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets id of a distribution group / store. The release will
/// be associated with this distribution group / store. If the
/// distribution group / store doesn't exist a 400 is returned. If both
/// distribution group / store name and id are passed, the id is taking
/// precedence.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A request containing information for updating a release.
/// </summary>
public partial class ReleaseUpdateRequest
{
public ReleaseUpdateRequest() { }
/// <summary>
/// Gets or sets OBSOLETE. Will be removed in future releases - use
/// destinations instead. Name of a distribution group. The release
/// will be associated with this distribution group. If the
/// distribution group doesn't exist a 400 is returned. If both
/// distribution group name and id are passed, the id is taking
/// precedence.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_group_name")]
public string DistributionGroupName { get; set; }
/// <summary>
/// Gets or sets OBSOLETE. Will be removed in future releases - use
/// destinations instead. Id of a distribution group. The release will
/// be associated with this distribution group. If the distribution
/// group doesn't exist a 400 is returned. If both distribution group
/// name and id are passed, the id is taking precedence.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_group_id")]
public string DistributionGroupId { get; set; }
/// <summary>
/// Gets or sets OBSOLETE. Will be removed in future releases - use
/// destinations instead. Name of a destination. The release will be
/// associated with this destination. If the destination doesn't exist
/// a 400 is returned. If both distribution group name and id are
/// passed, the id is taking precedence.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destination_name")]
public string DestinationName { get; set; }
/// <summary>
/// Gets or sets OBSOLETE. Will be removed in future releases - use
/// destinations instead. Id of a destination. The release will be
/// associated with this destination. If the destination doesn't exist
/// a 400 is returned. If both destination name and id are passed, the
/// id is taking precedence.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destination_id")]
public string DestinationId { get; set; }
/// <summary>
/// Gets or sets not used anymore.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destination_type")]
public string DestinationType { get; set; }
/// <summary>
/// Gets or sets release notes for this release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_notes")]
public string ReleaseNotes { get; set; }
/// <summary>
/// Gets or sets a boolean which determines whether this version should
/// be a mandatory update or not.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "mandatory_update")]
public bool? MandatoryUpdate { get; set; }
/// <summary>
/// Gets or sets distribute this release under the following list of
/// destinations (store groups or distribution groups).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destinations")]
public DestinationId[] Destinations { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A request containing information for updating a release.
/// </summary>
public partial class PrivateReleaseUpdateRequest
{
public PrivateReleaseUpdateRequest() { }
/// <summary>
/// Gets or sets the store publishing status. Possible values include:
/// 'failed', 'processing', 'submitted'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "publishing_status")]
public PrivateReleaseUpdateRequestPublishingStatus? PublishingStatus { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A response containing information about an iOS provisioning profile.
/// </summary>
public partial class ProvisioningProfileResponse
{
public ProvisioningProfileResponse() { }
/// <summary>
/// Gets or sets possible values include: 'adhoc', 'enterprise',
/// 'other'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioning_profile_type")]
public ProvisioningProfileResponseProvisioningProfileType ProvisioningProfileType { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "udids")]
public string[] Udids { get; set; }
/// <summary>
/// Gets or sets the name of the provisioning profile.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioning_profile_name")]
public string ProvisioningProfileName { get; set; }
/// <summary>
/// Gets or sets the team identifier.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "team_identifier")]
public string TeamIdentifier { get; set; }
/// <summary>
/// Gets or sets the bundle identifier associated with the profile.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioning_bundle_id")]
public string ProvisioningBundleId { get; set; }
/// <summary>
/// Gets or sets array of provisioning profiles for any app extensions
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appex_profiles")]
public ProvisioningProfileResponse[] AppexProfiles { get; set; }
public virtual void Validate()
{
if (this.AppexProfiles != null)
{
foreach (var element in this.AppexProfiles)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DestinationError
{
public DestinationError() { }
/// <summary>
/// Gets or sets error Codes:&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;invalid_store_secrets&amp;lt;/b&amp;gt;: While
/// distributing to store, secrets provided for store are not
/// valid.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;store_release_bad_request&amp;lt;/b&amp;gt;:
/// Proper package release details for the store is not
/// provided.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;store_release_unauthorized&amp;lt;/b&amp;gt;: User
/// is not authorized to publish to store due to invalid developer
/// credentials.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;store_release_forbidden&amp;lt;/b&amp;gt;: Publish
/// to store is forbidden due to conflicts/errors in the release
/// version and already existing version in the
/// store.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;store_release_not_found&amp;lt;/b&amp;gt;: App
/// with the given package name is not found in the
/// store.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;store_release_not_available&amp;lt;/b&amp;gt;: The
/// release is not available.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;internal_server_error&amp;lt;/b&amp;gt;: Failed to
/// distribute to a destination due to an internal server error.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code")]
public string Code { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ReleaseUpdateError : ErrorDetails
{
public ReleaseUpdateError() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_notes")]
public string ReleaseNotes { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "mandatory_update")]
public bool? MandatoryUpdate { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destinations")]
public DestinationError[] Destinations { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A request containing information for creating a Auto Provisioning
/// Config.
/// </summary>
public partial class AutoProvisioningConfigRequest
{
public AutoProvisioningConfigRequest() { }
/// <summary>
/// Gets or sets a key to a secret in customer-credential-store.
/// apple_developer_account refers to the user's developer account that
/// is used to log into https://developer.apple.com. Normally the
/// user's email.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "apple_developer_account_key")]
public string AppleDeveloperAccountKey { get; set; }
/// <summary>
/// Gets or sets a key to a secret in customer-credential-store.
/// distribution_certificate refers to the cusomer's certificate (that
/// holds the private key) that will be used to sign the app.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "apple_distribution_certificate_key")]
public string AppleDistributionCertificateKey { get; set; }
/// <summary>
/// Gets or sets when *true* enables auto provisioning
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "allow_auto_provisioning")]
public bool AllowAutoProvisioning { get; set; }
public virtual void Validate()
{
if (AppleDeveloperAccountKey == null)
{
throw new System.Exception("Property 'AppleDeveloperAccountKey' is required/");
}
if (AppleDistributionCertificateKey == null)
{
throw new System.Exception("Property 'AppleDistributionCertificateKey' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A response from API containing information for a Auto Provisioning
/// Config.
/// </summary>
public partial class AutoProvisioningConfigResponse
{
public AutoProvisioningConfigResponse() { }
/// <summary>
/// Gets or sets the identifier of the config.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public double? Id { get; set; }
/// <summary>
/// Gets or sets the identifier of the App.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets the identifier of the destination.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destination_id")]
public string DestinationId { get; set; }
/// <summary>
/// Gets or sets a key to a secret in customer-credential-store.
/// apple_developer_account refers to the user's developer account that
/// is used to log into https://developer.apple.com. Normally the
/// user's email.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "apple_developer_account_key")]
public string AppleDeveloperAccountKey { get; set; }
/// <summary>
/// Gets or sets a key to a secret in customer-credential-store.
/// distribution_certificate refers to the cusomer's certificate (that
/// holds the private key) that will be used to sign the app.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "apple_distribution_certificate_key")]
public string AppleDistributionCertificateKey { get; set; }
/// <summary>
/// Gets or sets when *true* enables auto provisioning
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "allow_auto_provisioning")]
public bool? AllowAutoProvisioning { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AnalyticsReleasesParameter
{
public AnalyticsReleasesParameter() { }
/// <summary>
/// Gets or sets release id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_id")]
public int ReleaseId { get; set; }
/// <summary>
/// Gets or sets distribution group id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_group_id")]
public string DistributionGroupId { get; set; }
/// <summary>
/// Gets or sets user id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_id")]
public System.Guid UserId { get; set; }
public virtual void Validate()
{
if (DistributionGroupId == null)
{
throw new System.Exception("Property 'DistributionGroupId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AnalyticsReleasesResponse
{
public AnalyticsReleasesResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "releases")]
public AnalyticsReleasesParameter[] Releases { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A response containing the fully encoded binary blob for a mobileconfig
/// </summary>
public partial class DeviceConfigurationResponse
{
public DeviceConfigurationResponse() { }
/// <summary>
/// Gets or sets a data URL containing a signed mobileconfig profile
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "data_url")]
public string DataUrl { get; set; }
public virtual void Validate()
{
if (DataUrl == null)
{
throw new System.Exception("Property 'DataUrl' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The information for a single iOS device
/// </summary>
public partial class DeviceInfoRequest
{
public DeviceInfoRequest() { }
/// <summary>
/// Gets or sets the Unique Device IDentifier of the device
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "udid")]
public string Udid { get; set; }
/// <summary>
/// Gets or sets the model identifier of the device, in the format
/// iDeviceM,N
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "model")]
public string Model { get; set; }
/// <summary>
/// Gets or sets the build number of the last known OS version running
/// on the device
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_build")]
public string OsBuild { get; set; }
/// <summary>
/// Gets or sets the last known OS version running on the device
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_version")]
public string OsVersion { get; set; }
/// <summary>
/// Gets or sets the device's serial number. Always empty or undefined
/// at present.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "serial")]
public string Serial { get; set; }
/// <summary>
/// Gets or sets the device's International Mobile Equipment Identity
/// number. Always empty or undefined at present.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "imei")]
public string Imei { get; set; }
/// <summary>
/// Gets or sets the user ID of the device owner.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "owner_id")]
public string OwnerId { get; set; }
public virtual void Validate()
{
if (Udid == null)
{
throw new System.Exception("Property 'Udid' is required/");
}
if (Model == null)
{
throw new System.Exception("Property 'Model' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The information for a single iOS device
/// </summary>
public partial class DeviceInfoResponse
{
public DeviceInfoResponse() { }
/// <summary>
/// Gets or sets the Unique Device IDentifier of the device
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "udid")]
public string Udid { get; set; }
/// <summary>
/// Gets or sets the model identifier of the device, in the format
/// iDeviceM,N
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "model")]
public string Model { get; set; }
/// <summary>
/// Gets or sets the device description, in the format "iPhone 7 Plus
/// (A1784)"
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_name")]
public string DeviceName { get; set; }
/// <summary>
/// Gets or sets a combination of the device model name and the owner
/// name.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "full_device_name")]
public string FullDeviceName { get; set; }
/// <summary>
/// Gets or sets the last known OS version running on the device
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_build")]
public string OsBuild { get; set; }
/// <summary>
/// Gets or sets the last known OS version running on the device
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_version")]
public string OsVersion { get; set; }
/// <summary>
/// Gets or sets the device's serial number. Always empty or undefined
/// at present.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "serial")]
public string Serial { get; set; }
/// <summary>
/// Gets or sets the device's International Mobile Equipment Identity
/// number. Always empty or undefined at present.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "imei")]
public string Imei { get; set; }
/// <summary>
/// Gets or sets the user ID of the device owner.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "owner_id")]
public string OwnerId { get; set; }
/// <summary>
/// Gets or sets the provisioning status of the device.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets timestamp of when the device was registered in ISO
/// format.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "registered_at")]
public string RegisteredAt { get; set; }
public virtual void Validate()
{
if (Udid == null)
{
throw new System.Exception("Property 'Udid' is required/");
}
if (Model == null)
{
throw new System.Exception("Property 'Model' is required/");
}
if (DeviceName == null)
{
throw new System.Exception("Property 'DeviceName' is required/");
}
if (OsBuild == null)
{
throw new System.Exception("Property 'OsBuild' is required/");
}
if (OsVersion == null)
{
throw new System.Exception("Property 'OsVersion' is required/");
}
if (Status == null)
{
throw new System.Exception("Property 'Status' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The status of the resign operation.
/// </summary>
public partial class ResignStatus
{
public ResignStatus() { }
/// <summary>
/// Gets or sets the status of the resign
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets error code for any error that occured during the
/// resigning operation.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "error_code")]
public string ErrorCode { get; set; }
/// <summary>
/// Gets or sets error message for any error that occured during the
/// resigning operation.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "error_message")]
public string ErrorMessage { get; set; }
public virtual void Validate()
{
if (Status == null)
{
throw new System.Exception("Property 'Status' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The publising information.
/// </summary>
public partial class PublishDevicesRequest
{
public PublishDevicesRequest() { }
/// <summary>
/// Gets or sets the username for the Apple Developer account to
/// publish the devices to.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "username")]
public string Username { get; set; }
/// <summary>
/// Gets or sets the password for the Apple Developer account to
/// publish the devices to.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
/// <summary>
/// Gets or sets the service_connection_id of the stored Apple
/// credentials instead of username, password.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "account_service_connection_id")]
public string AccountServiceConnectionId { get; set; }
/// <summary>
/// Gets or sets when set to true, all unprovisioned devices will be
/// published to the Apple Developer account. When false, only the
/// provided devices will be published to the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "publish_all_devices")]
public bool? PublishAllDevices { get; set; }
/// <summary>
/// Gets or sets array of device UDID's to be published to the Apple
/// Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devices")]
public string[] Devices { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The information for a single iOS device
/// </summary>
public partial class PublishDevicesResponse
{
public PublishDevicesResponse() { }
/// <summary>
/// Gets or sets the file name for the provisioning profile.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "profile_file_name")]
public string ProfileFileName { get; set; }
/// <summary>
/// Gets or sets the updated provisioning profiles zip base64 encoded.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "profiles_zip_base64")]
public string ProfilesZipBase64 { get; set; }
public virtual void Validate()
{
if (ProfilesZipBase64 == null)
{
throw new System.Exception("Property 'ProfilesZipBase64' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple credentials needed to log into the Apple Developer Portal
/// </summary>
public partial class AppleLoginRequest
{
public AppleLoginRequest() { }
/// <summary>
/// Gets or sets the username for the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "username")]
public string Username { get; set; }
/// <summary>
/// Gets or sets the password for the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
/// <summary>
/// Gets or sets identifier of the team to use when logged in.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "team_identifier")]
public string TeamIdentifier { get; set; }
public virtual void Validate()
{
if (Username == null)
{
throw new System.Exception("Property 'Username' is required/");
}
if (Password == null)
{
throw new System.Exception("Property 'Password' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Indicates if login was successful.
/// </summary>
public partial class AppleLoginResponse
{
public AppleLoginResponse() { }
/// <summary>
/// Gets or sets true when login was successful.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "successful")]
public bool? Successful { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The information needed to fetch the status of an application
/// </summary>
public partial class ApplicationStatusRequest
{
public ApplicationStatusRequest() { }
/// <summary>
/// Gets or sets the username for the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "username")]
public string Username { get; set; }
/// <summary>
/// Gets or sets the password for the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
/// <summary>
/// Gets or sets bundle Identifier of application in Apple Itunes
/// portal.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "bundle_identifier")]
public string BundleIdentifier { get; set; }
/// <summary>
/// Gets or sets track Identifier for which the status is to be
/// fetched.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "track_identifier")]
public string TrackIdentifier { get; set; }
/// <summary>
/// Gets or sets the version of build for which real time status is to
/// be fetched.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "build_version")]
public string BuildVersion { get; set; }
/// <summary>
/// Gets or sets identifier of the team to use when logged in.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "team_identifier")]
public string TeamIdentifier { get; set; }
/// <summary>
/// Gets or sets the Train version for which the status is to be
/// fetched.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "train_version")]
public string TrainVersion { get; set; }
public virtual void Validate()
{
if (Username == null)
{
throw new System.Exception("Property 'Username' is required/");
}
if (Password == null)
{
throw new System.Exception("Property 'Password' is required/");
}
if (BundleIdentifier == null)
{
throw new System.Exception("Property 'BundleIdentifier' is required/");
}
if (TrackIdentifier == null)
{
throw new System.Exception("Property 'TrackIdentifier' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The status information from Itunes portal
/// </summary>
public partial class ApplicationStatusResponse
{
public ApplicationStatusResponse() { }
/// <summary>
/// Gets or sets the type of version being returned
/// (production/edit/test flight).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version_type")]
public string VersionType { get; set; }
/// <summary>
/// Gets or sets the version of the application
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
public virtual void Validate()
{
if (VersionType == null)
{
throw new System.Exception("Property 'VersionType' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple credentials with username, password or service_connection_id of
/// the stored credentials is needed along with team_identifier.
/// </summary>
public partial class ItunesAppsRequest
{
public ItunesAppsRequest() { }
/// <summary>
/// Gets or sets the username for the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "username")]
public string Username { get; set; }
/// <summary>
/// Gets or sets the password for the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
/// <summary>
/// Gets or sets the service_connection_id of the stored Apple
/// credentials instead of username, password.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "service_connection_id")]
public string ServiceConnectionId { get; set; }
/// <summary>
/// Gets or sets identifier of the team to use when logged in.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "team_identifier")]
public string TeamIdentifier { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple credentials with username, password or service_connection_id of
/// the stored credentials is needed.
/// </summary>
public partial class ItunesTeamsRequest
{
public ItunesTeamsRequest() { }
/// <summary>
/// Gets or sets the username for the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "username")]
public string Username { get; set; }
/// <summary>
/// Gets or sets the password for the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
/// <summary>
/// Gets or sets the service_connection_id of the stored Apple
/// credentials instead of username, password.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "service_connection_id")]
public string ServiceConnectionId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Itunes teams details .
/// </summary>
public partial class ItunesTeamsResponse
{
public ItunesTeamsResponse() { }
/// <summary>
/// Gets or sets itunes team id.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "teamId")]
public string TeamId { get; set; }
/// <summary>
/// Gets or sets itunes Team Name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "teamName")]
public string TeamName { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Itunes teams details .
/// </summary>
public partial class AllItunesAppsResponse
{
public AllItunesAppsResponse() { }
/// <summary>
/// Gets or sets apple id for app team id.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "apple_id")]
public string AppleId { get; set; }
/// <summary>
/// Gets or sets bundle identifier of app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "bundle_id")]
public string BundleId { get; set; }
/// <summary>
/// Gets or sets app Name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets url for the app icon from app store
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "iconUrl")]
public string IconUrl { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple details for fetching test flight groups from Apple Developer
/// Portal. pass either apple_id or bundle_identifier to get the test
/// flight groups. if both are passed than apple_id will take preference
/// </summary>
public partial class AppleTestFlightGroupRequest
{
public AppleTestFlightGroupRequest() { }
/// <summary>
/// Gets or sets the username for the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "username")]
public string Username { get; set; }
/// <summary>
/// Gets or sets the password for the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
/// <summary>
/// Gets or sets apple_id of the app for which test flight groups need
/// to be fetched.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "apple_id")]
public string AppleId { get; set; }
/// <summary>
/// Gets or sets apple_id of the app for which test flight groups need
/// to be fetched.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "bundle_identifier")]
public string BundleIdentifier { get; set; }
/// <summary>
/// Gets or sets identifier of the team to use when logged in.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "team_identifier")]
public string TeamIdentifier { get; set; }
public virtual void Validate()
{
if (Username == null)
{
throw new System.Exception("Property 'Username' is required/");
}
if (Password == null)
{
throw new System.Exception("Property 'Password' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// test flight group details for the app.
/// </summary>
public partial class AppleTestFlightGroupResponse
{
public AppleTestFlightGroupResponse() { }
/// <summary>
/// Gets or sets id of the group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets provider id of the group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "providerId")]
public double? ProviderId { get; set; }
/// <summary>
/// Gets or sets apple id of the group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appAdamId")]
public double? AppAdamId { get; set; }
/// <summary>
/// Gets or sets name of the group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets true if group is in active state.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "active")]
public bool? Active { get; set; }
/// <summary>
/// Gets or sets true if the group is an internal group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "isInternalGroup")]
public bool? IsInternalGroup { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple credentials needed to log into the Apple Developer Portal and
/// access provisioning profiles
/// </summary>
public partial class AvailabilityOfDevicesRequest
{
public AvailabilityOfDevicesRequest() { }
/// <summary>
/// Gets or sets the username for the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "username")]
public string Username { get; set; }
/// <summary>
/// Gets or sets the password for the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
/// <summary>
/// Gets or sets the service_connection_id of the stored Apple
/// credentials instad of username, password.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "service_connection_id")]
public string ServiceConnectionId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// ...
/// </summary>
public partial class DeviceAvailability
{
public DeviceAvailability() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "registered")]
public double Registered { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "available")]
public double Available { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "maximum")]
public double Maximum { get; set; }
public virtual void Validate()
{
//Nothing to validate
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The current device availability (registered, available and maxmimum)
/// for iPhones, iPads, iPods and Watches from Apple Developer Portal
/// </summary>
public partial class AvailabilityOfDevicesResponse
{
public AvailabilityOfDevicesResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "iphones")]
public DeviceAvailability Iphones { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "ipads")]
public DeviceAvailability Ipads { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "ipods")]
public DeviceAvailability Ipods { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "watches")]
public DeviceAvailability Watches { get; set; }
public virtual void Validate()
{
if (Iphones == null)
{
throw new System.Exception("Property 'Iphones' is required/");
}
if (Ipads == null)
{
throw new System.Exception("Property 'Ipads' is required/");
}
if (Ipods == null)
{
throw new System.Exception("Property 'Ipods' is required/");
}
if (Watches == null)
{
throw new System.Exception("Property 'Watches' is required/");
}
if (this.Iphones != null)
{
this.Iphones.Validate();
}
if (this.Ipads != null)
{
this.Ipads.Validate();
}
if (this.Ipods != null)
{
this.Ipods.Validate();
}
if (this.Watches != null)
{
this.Watches.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UpdateDevicesRequestDestinationsItem
{
public UpdateDevicesRequestDestinationsItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Information required to publish devices to the Apple Developer account
/// and resign the application.
/// </summary>
public partial class UpdateDevicesRequest
{
public UpdateDevicesRequest() { }
/// <summary>
/// Gets or sets when provided, will update the provided release with
/// the new set of devices. By default the latest release of the
/// distribution group is used when this property is omitted.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_id")]
public double? ReleaseId { get; set; }
/// <summary>
/// Gets or sets the username for the Apple Developer account to
/// publish the devices to.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "username")]
public string Username { get; set; }
/// <summary>
/// Gets or sets the password for the Apple Developer account to
/// publish the devices to.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "password")]
public string Password { get; set; }
/// <summary>
/// Gets or sets the service_connection_id of the stored Apple
/// credentials instead of username, password.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "account_service_connection_id")]
public string AccountServiceConnectionId { get; set; }
/// <summary>
/// Gets or sets the certificate to use for resigning the application
/// with the updated provisioning profiles.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "p12_base64")]
public string P12Base64 { get; set; }
/// <summary>
/// Gets or sets the service_connection_id of the stored Apple
/// certificate instead of p12_base64 value.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "p12_service_connection_id")]
public string P12ServiceConnectionId { get; set; }
/// <summary>
/// Gets or sets the password certificate if one is needed.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "p12_password")]
public string P12Password { get; set; }
/// <summary>
/// Gets or sets when set to true, all unprovisioned devices will be
/// published to the Apple Developer account. When false, only the
/// provided devices will be published to the Apple Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "publish_all_devices")]
public bool? PublishAllDevices { get; set; }
/// <summary>
/// Gets or sets array of device UDID's to be published to the Apple
/// Developer account.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devices")]
public string[] Devices { get; set; }
/// <summary>
/// Gets or sets array of distribution groups that the devices should
/// be provisioned from.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "destinations")]
public UpdateDevicesRequestDestinationsItem[] Destinations { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// URL that can be used to check the status of the update devices
/// operation and the updated profiles.
/// </summary>
public partial class UpdateDevicesResponse
{
public UpdateDevicesResponse() { }
/// <summary>
/// Gets or sets the updated provisioning profiles base64 encoded.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "profiles_zip_base64")]
public string ProfilesZipBase64 { get; set; }
/// <summary>
/// Gets or sets URL that can be used to check the status of the update
/// devices operation.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status_url")]
public string StatusUrl { get; set; }
public virtual void Validate()
{
if (ProfilesZipBase64 == null)
{
throw new System.Exception("Property 'ProfilesZipBase64' is required/");
}
if (StatusUrl == null)
{
throw new System.Exception("Property 'StatusUrl' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Updates the status of the resign request
/// </summary>
public partial class UpdateResignStatusRequest
{
public UpdateResignStatusRequest() { }
/// <summary>
/// Gets or sets the updated status for the resigning request.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets error code if an error occured in the resigning
/// operation.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "error_code")]
public string ErrorCode { get; set; }
/// <summary>
/// Gets or sets error message if an error occured in the resigning
/// operation.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "error_message")]
public string ErrorMessage { get; set; }
public virtual void Validate()
{
if (Status == null)
{
throw new System.Exception("Property 'Status' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// URL that can be used to check the status of the update devices
/// operation and the updated profiles.
/// </summary>
public partial class UpdateResignStatusResponse
{
public UpdateResignStatusResponse() { }
/// <summary>
/// Gets or sets the status.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
public virtual void Validate()
{
if (Status == null)
{
throw new System.Exception("Property 'Status' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The url that can be navigated to in order to start the device
/// registration process.
/// </summary>
public partial class DeviceRegistrationUrl
{
public DeviceRegistrationUrl() { }
/// <summary>
/// Gets or sets the url that can be navigated to in order to start the
/// device registration process.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "registration_url")]
public string RegistrationUrl { get; set; }
public virtual void Validate()
{
if (RegistrationUrl == null)
{
throw new System.Exception("Property 'RegistrationUrl' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class StoresBasicDetails
{
public StoresBasicDetails() { }
/// <summary>
/// Gets or sets ID identifying a unique distribution store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets a name identifying a unique distribution store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets type of the distribution store currently stores type
/// can be intune or googleplay. Possible values include: 'intune',
/// 'googleplay', 'windows'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public StoresBasicDetailsType? Type { get; set; }
/// <summary>
/// Gets or sets publishing status of the release in the store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "publishing_status")]
public string PublishingStatus { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Details of an uploaded release
/// </summary>
public partial class StoresReleaseDetails
{
public StoresReleaseDetails() { }
/// <summary>
/// Gets or sets ID identifying this unique release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public double? Id { get; set; }
/// <summary>
/// Gets or sets OBSOLETE. Will be removed in next version. The
/// availability concept is now replaced with distributed. Any
/// 'available' release will be associated with the default
/// distribution group of an app.&amp;lt;/br&amp;gt;
/// The release state.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;available&amp;lt;/b&amp;gt;: The uploaded release
/// has been distributed.&amp;lt;br&amp;gt;
/// &amp;lt;b&amp;gt;unavailable&amp;lt;/b&amp;gt;: The uploaded
/// release is not visible to the user. &amp;lt;br&amp;gt;
/// . Possible values include: 'available', 'unavailable'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public StoresReleaseDetailsStatus? Status { get; set; }
/// <summary>
/// Gets or sets the app's name (extracted from the uploaded release).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_name")]
public string AppName { get; set; }
/// <summary>
/// Gets or sets the app's display name.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_display_name")]
public string AppDisplayName { get; set; }
/// <summary>
/// Gets or sets the release's version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleVersion from info.plist.
/// For Android: android:versionCode from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// Gets or sets the release's short version.&amp;lt;br&amp;gt;
/// For iOS: CFBundleShortVersionString from info.plist.
/// For Android: android:versionName from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "short_version")]
public string ShortVersion { get; set; }
/// <summary>
/// Gets or sets the release's release notes.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_notes")]
public string ReleaseNotes { get; set; }
/// <summary>
/// Gets or sets the release's size in bytes.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "size")]
public double? Size { get; set; }
/// <summary>
/// Gets or sets the release's minimum required operating system.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "min_os")]
public string MinOs { get; set; }
/// <summary>
/// Gets or sets the release's minimum required Android API level.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "android_min_api_level")]
public string AndroidMinApiLevel { get; set; }
/// <summary>
/// Gets or sets the identifier of the apps bundle.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "bundle_identifier")]
public string BundleIdentifier { get; set; }
/// <summary>
/// Gets or sets MD5 checksum of the release binary.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "fingerprint")]
public string Fingerprint { get; set; }
/// <summary>
/// Gets or sets UTC time in ISO 8601 format of the uploaded time.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploaded_at")]
public string UploadedAt { get; set; }
/// <summary>
/// Gets or sets the URL that hosts the binary for this release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "download_url")]
public string DownloadUrl { get; set; }
/// <summary>
/// Gets or sets the href required to install a release on a mobile
/// device. On iOS devices will be prefixed with
/// `itms-services://?action=download-manifest&amp;amp;url=`. Possible
/// values include: 'group', 'store'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "install_url")]
public StoresReleaseDetailsInstallUrl? InstallUrl { get; set; }
/// <summary>
/// Gets or sets a list of distribution stores that are associated with
/// this release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_stores")]
public StoresBasicDetails[] DistributionStores { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class IntuneSecretDetails
{
public IntuneSecretDetails() { }
/// <summary>
/// Gets or sets the id token of user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id_token")]
public string IdToken { get; set; }
/// <summary>
/// Gets or sets the refresh token for user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "refresh_token")]
public string RefreshToken { get; set; }
/// <summary>
/// Gets or sets the expiry of refresh token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "refresh_token_expiry")]
public string RefreshTokenExpiry { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class IntuneTargetAudience
{
public IntuneTargetAudience() { }
/// <summary>
/// Gets or sets display name for the target audience/group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class IntuneAppCategory
{
public IntuneAppCategory() { }
/// <summary>
/// Gets or sets display name for the app category
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class IntuneStoreRequest
{
public IntuneStoreRequest() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "secret_json")]
public IntuneSecretDetails SecretJson { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "target_audience")]
public IntuneTargetAudience TargetAudience { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_category")]
public IntuneAppCategory AppCategory { get; set; }
/// <summary>
/// Gets or sets tenant id of the intune store
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tenant_id")]
public string TenantId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class WindowsSecretDetails
{
public WindowsSecretDetails() { }
/// <summary>
/// Gets or sets the id token of user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id_token")]
public string IdToken { get; set; }
/// <summary>
/// Gets or sets the refresh token for user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "refresh_token")]
public string RefreshToken { get; set; }
/// <summary>
/// Gets or sets the expiry of refresh token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "refresh_token_expiry")]
public string RefreshTokenExpiry { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class WindowsStoreRequest
{
public WindowsStoreRequest() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "secret_json")]
public WindowsSecretDetails SecretJson { get; set; }
/// <summary>
/// Gets or sets tenant id the user account belongs to
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tenant_id")]
public string TenantId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// ExternalStoreRequest
/// </summary>
public partial class ExternalStoreRequest
{
public ExternalStoreRequest() { }
/// <summary>
/// Gets or sets store Type. Possible values include: 'googleplay',
/// 'intune', 'windows', 'apple'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public ExternalStoreRequestType? Type { get; set; }
/// <summary>
/// Gets or sets name of the store. In case of googleplay, windows and
/// Apple store this is fixed to Production.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets track of the store. Can be production, alpha &amp;amp;
/// beta for googleplay. Can be production, testflight-internal
/// &amp;amp; testflight-external for Apple Store. Can be production
/// for Windows Store. Possible values include: 'production', 'alpha',
/// 'beta', 'testflight-internal', 'testflight-external'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "track")]
public ExternalStoreRequestTrack? Track { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "intune_details")]
public IntuneStoreRequest IntuneDetails { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "windows_details")]
public WindowsStoreRequest WindowsDetails { get; set; }
/// <summary>
/// Gets or sets id for the shared service connection. In case of Apple
/// AppStore, this connection will be used to create and connect to the
/// Apple AppStore in Mobile Center.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "service_connection_id")]
public string ServiceConnectionId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple Mapping Request Type
/// </summary>
public partial class AppleMappingRequest
{
public AppleMappingRequest() { }
/// <summary>
/// Gets or sets id for the shared service connection. In case of Apple
/// AppStore, this connection will be used to create and connect to the
/// Apple AppStore in Mobile Center.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "service_connection_id")]
public string ServiceConnectionId { get; set; }
/// <summary>
/// Gets or sets ID of the apple application in apple store, takes
/// precedence over bundle_identifier when both are provided
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "apple_id")]
public string AppleId { get; set; }
/// <summary>
/// Gets or sets bundle Identifier of the apple package
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "bundle_identifier")]
public string BundleIdentifier { get; set; }
/// <summary>
/// Gets or sets ID of the Team associated with the app in apple store
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "team_identifier")]
public string TeamIdentifier { get; set; }
public virtual void Validate()
{
if (ServiceConnectionId == null)
{
throw new System.Exception("Property 'ServiceConnectionId' is required/");
}
if (TeamIdentifier == null)
{
throw new System.Exception("Property 'TeamIdentifier' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple Mapping Request Type
/// </summary>
public partial class AppleMappingResponse
{
public AppleMappingResponse() { }
/// <summary>
/// Gets or sets ID of the apple application in Mobile Center
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets id for the shared service connection. In case of Apple
/// AppStore, this connection will be used to create and connect to the
/// Apple AppStore in Mobile Center.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "service_connection_id")]
public string ServiceConnectionId { get; set; }
/// <summary>
/// Gets or sets ID of the apple application in apple store
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "apple_id")]
public string AppleId { get; set; }
/// <summary>
/// Gets or sets ID of the Team associated with the app in apple store
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "team_identifier")]
public string TeamIdentifier { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple Test Flight Groups Response Type
/// </summary>
public partial class AppleTestFlightGroupsResponse
{
public AppleTestFlightGroupsResponse() { }
/// <summary>
/// Gets or sets id of the group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets provider id of the group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "providerId")]
public double? ProviderId { get; set; }
/// <summary>
/// Gets or sets apple id of the group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appleId")]
public double? AppleId { get; set; }
/// <summary>
/// Gets or sets name of the group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class PrivateIntuneStoreRequest
{
public PrivateIntuneStoreRequest() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "target_audience")]
public IntuneTargetAudience TargetAudience { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_category")]
public IntuneAppCategory AppCategory { get; set; }
/// <summary>
/// Gets or sets tenant id of the intune store
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tenant_id")]
public string TenantId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// create the store through private API. Used by UI.
/// </summary>
public partial class PrivateCreateStoreRequest
{
public PrivateCreateStoreRequest() { }
/// <summary>
/// Gets or sets store Type. Possible values include: 'intune',
/// 'windows'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public PrivateCreateStoreRequestType? Type { get; set; }
/// <summary>
/// Gets or sets name of the store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "intune_details")]
public PrivateIntuneStoreRequest IntuneDetails { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class IntuneCategoryValue
{
public IntuneCategoryValue() { }
/// <summary>
/// Gets or sets the id of the category
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the display name for the category
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets modified date for category
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "lastModifiedDateTime")]
public string LastModifiedDateTime { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class IntuneCategories
{
public IntuneCategories() { }
/// <summary>
/// Gets or sets context
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "odata.context")]
public string Odatacontext { get; set; }
/// <summary>
/// Gets or sets categories for intune app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public IntuneCategoryValue[] Value { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class IntuneGroupValue
{
public IntuneGroupValue() { }
/// <summary>
/// Gets or sets the id of the Group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the display name of the group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class IntuneGroups
{
public IntuneGroups() { }
/// <summary>
/// Gets or sets context
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "odata.context")]
public string Odatacontext { get; set; }
/// <summary>
/// Gets or sets categories for intune app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public IntuneGroupValue[] Value { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class SecretDetails
{
public SecretDetails() { }
/// <summary>
/// Gets or sets the id token of user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id_token")]
public string IdToken { get; set; }
/// <summary>
/// Gets or sets the refresh token for user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "refresh_token")]
public string RefreshToken { get; set; }
/// <summary>
/// Gets or sets the expiry of refresh token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "refresh_token_expiry")]
public string RefreshTokenExpiry { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CreateStoreSecretRequest
{
public CreateStoreSecretRequest() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "secret_json")]
public SecretDetails SecretJson { get; set; }
/// <summary>
/// Gets or sets the tenant id for user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tenant_id")]
public string TenantId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CreateStoreSecretResponse
{
public CreateStoreSecretResponse() { }
/// <summary>
/// Gets or sets the secret id for store secret
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "secret_id")]
public string SecretId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// ReleasePublishErrorResponse
/// </summary>
public partial class ReleasePublishErrorResponse
{
public ReleasePublishErrorResponse() { }
/// <summary>
/// Gets or sets error Details
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Status Data from store
/// </summary>
public partial class StatusData
{
public StatusData() { }
/// <summary>
/// Gets or sets status from store
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets store type
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "storetype")]
public string Storetype { get; set; }
/// <summary>
/// Gets or sets track information from store
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "track")]
public string Track { get; set; }
/// <summary>
/// Gets or sets version of the app from store
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// status of the app from store
/// </summary>
public partial class ReleaseRealTimeStatusResponse
{
public ReleaseRealTimeStatusResponse() { }
/// <summary>
/// Gets or sets release id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_id")]
public string ReleaseId { get; set; }
/// <summary>
/// Gets or sets app id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public StatusData Status { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// ExternalStoreResponse
/// </summary>
public partial class ExternalStoreResponse
{
public ExternalStoreResponse() { }
/// <summary>
/// Gets or sets store id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets store Name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets store Type
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public string Type { get; set; }
/// <summary>
/// Gets or sets store track. Possible values include: 'production',
/// 'alpha', 'beta', 'testflight-internal', 'testflight-external'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "track")]
public ExternalStoreResponseTrack? Track { get; set; }
/// <summary>
/// Gets or sets store details for intune
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "intune_details")]
public object IntuneDetails { get; set; }
/// <summary>
/// Gets or sets id for the shared service connection. In case of Apple
/// AppStore, this connection will be used to create and connect to the
/// Apple AppStore in Mobile Center.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "service_connection_id")]
public string ServiceConnectionId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// GooglePlayTestersResponse
/// </summary>
public partial class GooglePlayTestersResponse
{
public GooglePlayTestersResponse() { }
/// <summary>
/// Gets or sets email id of Google Groups or URL of the Google+
/// Communities
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tester")]
public string Tester { get; set; }
/// <summary>
/// Gets or sets type of testers i.e Google Groups or Google+
/// Communities. Possible values include: 'Google Group', 'Google+
/// Community'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public GooglePlayTestersResponseType? Type { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// StoreSecretResponse
/// </summary>
public partial class StoreSecretResponse
{
public StoreSecretResponse() { }
/// <summary>
/// Gets or sets store id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets store Name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets store Type
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public string Type { get; set; }
/// <summary>
/// Gets or sets secret Json
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "secret")]
public string Secret { get; set; }
/// <summary>
/// Gets or sets tenant Id for Intune
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tenant_id")]
public string TenantId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class IntuneTargetAudienceResponse
{
public IntuneTargetAudienceResponse() { }
/// <summary>
/// Gets or sets display name for the target audience/group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets ID for the target audience/group.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class IntuneAppCategoryResponse
{
public IntuneAppCategoryResponse() { }
/// <summary>
/// Gets or sets display name for the app category
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets ID for the category.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class IntuneStoreResponse
{
public IntuneStoreResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "target_audience")]
public IntuneTargetAudienceResponse TargetAudience { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_category")]
public IntuneAppCategoryResponse AppCategory { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class PatchReleaseRequest
{
public PatchReleaseRequest() { }
/// <summary>
/// Gets or sets updated status of release
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets destination Publish Id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "dest_publish_id")]
public string DestPublishId { get; set; }
/// <summary>
/// Gets or sets failure error details from store
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "error_details")]
public string ErrorDetails { get; set; }
/// <summary>
/// Gets or sets contextId for failed error message
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "error_contextId")]
public string ErrorContextId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class StoresDetails
{
public StoresDetails() { }
/// <summary>
/// Gets or sets ID identifying a unique distribution store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets a name identifying a unique distribution store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets a type identifying the type of distribution store.
/// Possible values include: 'googleplay', 'intune', 'windows', 'apple'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public StoresDetailsType? Type { get; set; }
/// <summary>
/// Gets or sets a status identifying the status of release in the
/// distribution store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "publishing_status")]
public string PublishingStatus { get; set; }
/// <summary>
/// Gets or sets is the containing release the latest one in this
/// distribution store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_latest")]
public bool? IsLatest { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Basic information on a release
/// </summary>
public partial class StoresBasicReleaseDetails
{
public StoresBasicReleaseDetails() { }
/// <summary>
/// Gets or sets ID identifying this unique release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public double? Id { get; set; }
/// <summary>
/// Gets or sets the release's version.
/// For iOS: CFBundleVersion from info.plist.
/// For Android: android:versionCode from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// Gets or sets the release's short version.
/// For iOS: CFBundleShortVersionString from info.plist.
/// For Android: android:versionName from AppManifest.xml.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "short_version")]
public string ShortVersion { get; set; }
/// <summary>
/// Gets or sets UTC time in ISO 8601 format of the uploaded time.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploaded_at")]
public string UploadedAt { get; set; }
/// <summary>
/// Gets or sets a list of distribution stores that are associated with
/// this release.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_stores")]
public StoresDetails[] DistributionStores { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class StoreDestinationDetails
{
public StoreDestinationDetails() { }
/// <summary>
/// Gets or sets destination ID identifying a unique id in distribution
/// store.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "dest_publish_id")]
public string DestPublishId { get; set; }
/// <summary>
/// Gets or sets type of store. Possible values include: 'intune',
/// 'windows'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "store_type")]
public StoreDestinationDetailsStoreType? StoreType { get; set; }
/// <summary>
/// Gets or sets app id of application.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appId")]
public string AppId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// IntuneAppsRequest
/// </summary>
public partial class IntuneAppsRequest
{
public IntuneAppsRequest() { }
/// <summary>
/// Gets or sets partitionKey year-month
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "created_month")]
public string CreatedMonth { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// IntuneAppsResponse
/// </summary>
public partial class IntuneAppsResponse
{
public IntuneAppsResponse() { }
/// <summary>
/// Gets or sets partitionKey year-month
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "created_month")]
public string CreatedMonth { get; set; }
/// <summary>
/// Gets or sets app id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets refresh Status
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "refreshStatus")]
public string RefreshStatus { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Symbol
{
public Symbol() { }
/// <summary>
/// Gets or sets the unique id for this symbol (uuid)
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "symbol_id")]
public string SymbolId { get; set; }
/// <summary>
/// Gets or sets the type of the symbol for the current symbol upload.
/// Possible values include: 'Apple', 'JavaScript', 'Breakpad',
/// 'AndroidProguard', 'UWP'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public SymbolType Type { get; set; }
/// <summary>
/// Gets or sets the application that this symbol belongs to
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets the platform that this symbol is associated with
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public string Platform { get; set; }
/// <summary>
/// Gets or sets the URL at which the client may download the symbol
/// file
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "url")]
public string Url { get; set; }
/// <summary>
/// Gets or sets the origin of the symbol file. Possible values
/// include: 'System', 'User'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "origin")]
public SymbolOrigin Origin { get; set; }
/// <summary>
/// Gets or sets the other symbols in the same file
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "alternate_symbol_ids")]
public string[] AlternateSymbolIds { get; set; }
/// <summary>
/// Gets or sets whether the symbol is ignored. Possible values
/// include: 'available', 'ignored'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public SymbolStatus Status { get; set; }
/// <summary>
/// Gets or sets the version number. Optional for Apple. Required for
/// Android.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// Gets or sets the build number. Optional for Apple. Required for
/// Android.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "build")]
public string Build { get; set; }
public virtual void Validate()
{
if (SymbolId == null)
{
throw new System.Exception("Property 'SymbolId' is required/");
}
if (AppId == null)
{
throw new System.Exception("Property 'AppId' is required/");
}
if (Platform == null)
{
throw new System.Exception("Property 'Platform' is required/");
}
if (Url == null)
{
throw new System.Exception("Property 'Url' is required/");
}
if (AlternateSymbolIds == null)
{
throw new System.Exception("Property 'AlternateSymbolIds' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A response containing information pertaining to a symbol status
/// </summary>
public partial class SymbolStatusResponse
{
public SymbolStatusResponse() { }
/// <summary>
/// Gets or sets the unique id for this symbol (uuid)
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "symbol_id")]
public string SymbolId { get; set; }
/// <summary>
/// Gets or sets the application that this symbol belongs to
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets whether the symbol is ignored. Possible values
/// include: 'available', 'ignored', 'missing'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public SymbolStatusResponseStatus Status { get; set; }
public virtual void Validate()
{
if (SymbolId == null)
{
throw new System.Exception("Property 'SymbolId' is required/");
}
if (AppId == null)
{
throw new System.Exception("Property 'AppId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class SymbolUploadUserInfo
{
public SymbolUploadUserInfo() { }
/// <summary>
/// Gets or sets the email of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "email")]
public string Email { get; set; }
/// <summary>
/// Gets or sets the full name of the user. Might for example be first
/// and last name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UploadedSymbolInfo
{
public UploadedSymbolInfo() { }
/// <summary>
/// Gets or sets the symbol id of the symbol binary
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "symbol_id")]
public string SymbolId { get; set; }
/// <summary>
/// Gets or sets the platform the symbol is associated with
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public string Platform { get; set; }
public virtual void Validate()
{
if (SymbolId == null)
{
throw new System.Exception("Property 'SymbolId' is required/");
}
if (Platform == null)
{
throw new System.Exception("Property 'Platform' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A single symbol upload entity
/// </summary>
public partial class SymbolUpload
{
public SymbolUpload() { }
/// <summary>
/// Gets or sets the id for the current symbol upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "symbol_upload_id")]
public string SymbolUploadId { get; set; }
/// <summary>
/// Gets or sets the application that this symbol upload belongs to
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets user information of the one who intitiated the symbol
/// upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user")]
public SymbolUploadUserInfo User { get; set; }
/// <summary>
/// Gets or sets the current status for the symbol upload. Possible
/// values include: 'created', 'committed', 'aborted', 'processing',
/// 'indexed', 'failed'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public SymbolUploadStatus Status { get; set; }
/// <summary>
/// Gets or sets the type of the symbol for the current symbol upload.
/// Possible values include: 'Apple', 'Breakpad', 'AndroidProguard',
/// 'UWP'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "symbol_type")]
public SymbolUploadSymbolType SymbolType { get; set; }
/// <summary>
/// Gets or sets the symbols found in the upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "symbols_uploaded")]
public UploadedSymbolInfo[] SymbolsUploaded { get; set; }
/// <summary>
/// Gets or sets the origin of the symbol upload. Possible values
/// include: 'User', 'System'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "origin")]
public SymbolUploadOrigin? Origin { get; set; }
/// <summary>
/// Gets or sets the file name for the symbol upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "file_name")]
public string FileName { get; set; }
/// <summary>
/// Gets or sets the size of the file in Mebibytes
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "file_size")]
public double? FileSize { get; set; }
/// <summary>
/// Gets or sets when the symbol upload was committed, or last
/// transaction time if not committed
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "timestamp")]
public System.DateTime? Timestamp { get; set; }
public virtual void Validate()
{
if (SymbolUploadId == null)
{
throw new System.Exception("Property 'SymbolUploadId' is required/");
}
if (AppId == null)
{
throw new System.Exception("Property 'AppId' is required/");
}
if (this.SymbolsUploaded != null)
{
foreach (var element in this.SymbolsUploaded)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Location for downloading symbol
/// </summary>
public partial class SymbolLocation
{
public SymbolLocation() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uri")]
public string Uri { get; set; }
public virtual void Validate()
{
if (Uri == null)
{
throw new System.Exception("Property 'Uri' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Location for downloading symbol upload
/// </summary>
public partial class SymbolUploadLocation
{
public SymbolUploadLocation() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uri")]
public string Uri { get; set; }
public virtual void Validate()
{
if (Uri == null)
{
throw new System.Exception("Property 'Uri' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A request containing information pertaining to starting a symbol upload
/// process
/// </summary>
public partial class SymbolUploadBeginRequest
{
public SymbolUploadBeginRequest() { }
/// <summary>
/// Gets or sets the type of the symbol for the current symbol upload.
/// Possible values include: 'Apple', 'Breakpad', 'AndroidProguard',
/// 'UWP'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "symbol_type")]
public SymbolUploadBeginRequestSymbolType SymbolType { get; set; }
/// <summary>
/// Gets or sets the callback URL that the client can optionally
/// provide to get status updates for the current symbol upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "client_callback")]
public string ClientCallback { get; set; }
/// <summary>
/// Gets or sets the file name for the symbol upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "file_name")]
public string FileName { get; set; }
/// <summary>
/// Gets or sets the build number. Optional for Apple. Required for
/// Android.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "build")]
public string Build { get; set; }
/// <summary>
/// Gets or sets the version number. Optional for Apple. Required for
/// Android.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
public virtual void Validate()
{
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A response containing information pertaining to starting a symbol
/// upload process
/// </summary>
public partial class SymbolUploadBeginResponse
{
public SymbolUploadBeginResponse() { }
/// <summary>
/// Gets or sets the id for the current upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "symbol_upload_id")]
public string SymbolUploadId { get; set; }
/// <summary>
/// Gets or sets the URL where the client needs to upload the symbol
/// blob to
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "upload_url")]
public string UploadUrl { get; set; }
/// <summary>
/// Gets or sets describes how long the upload_url is valid
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "expiration_date")]
public System.DateTime ExpirationDate { get; set; }
public virtual void Validate()
{
if (SymbolUploadId == null)
{
throw new System.Exception("Property 'SymbolUploadId' is required/");
}
if (UploadUrl == null)
{
throw new System.Exception("Property 'UploadUrl' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// A request containing information pertaining to completing a symbol
/// upload process
/// </summary>
public partial class SymbolUploadEndRequest
{
public SymbolUploadEndRequest() { }
/// <summary>
/// Gets or sets the desired operation for the symbol upload. Possible
/// values include: 'committed', 'aborted'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public SymbolUploadEndRequestStatus Status { get; set; }
public virtual void Validate()
{
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppFeatures
{
public AppFeatures() { }
/// <summary>
/// Gets or sets app supports modification of crashgroup status
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crashgroup_modify_status")]
public bool? CrashgroupModifyStatus { get; set; }
/// <summary>
/// Gets or sets app supports modification of crashgroup annotation
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crashgroup_modify_annotation")]
public bool? CrashgroupModifyAnnotation { get; set; }
/// <summary>
/// Gets or sets app supports search API
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "search")]
public bool? Search { get; set; }
/// <summary>
/// Gets or sets app supports the 'crash free user' metric
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crashgroup_analytics_crashfreeusers")]
public bool? CrashgroupAnalyticsCrashfreeusers { get; set; }
/// <summary>
/// Gets or sets app supports the 'impacted users' metric
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crashgroup_analytics_impactedusers")]
public bool? CrashgroupAnalyticsImpactedusers { get; set; }
/// <summary>
/// Gets or sets app supports download of raw crashes
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_download_raw")]
public bool? CrashDownloadRaw { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppCrashesInfo
{
public AppCrashesInfo() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "has_crashes")]
public bool HasCrashes { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "features")]
public AppFeatures Features { get; set; }
public virtual void Validate()
{
if (Features == null)
{
throw new System.Exception("Property 'Features' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AppVersion
{
public AppVersion() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_version_id")]
public string AppVersionId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_name")]
public string DisplayName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_version")]
public string AppVersionProperty { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "build_number")]
public string BuildNumber { get; set; }
public virtual void Validate()
{
if (AppVersionId == null)
{
throw new System.Exception("Property 'AppVersionId' is required/");
}
if (AppId == null)
{
throw new System.Exception("Property 'AppId' is required/");
}
if (DisplayName == null)
{
throw new System.Exception("Property 'DisplayName' is required/");
}
if (AppVersionProperty == null)
{
throw new System.Exception("Property 'AppVersionProperty' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// a single frame of a stack trace
/// </summary>
public partial class StackFrame
{
public StackFrame() { }
/// <summary>
/// Gets or sets address of the frame
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "address")]
public string Address { get; set; }
/// <summary>
/// Gets or sets name of the class
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "class_name")]
public string ClassName { get; set; }
/// <summary>
/// Gets or sets name of the method
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "method")]
public string Method { get; set; }
/// <summary>
/// Gets or sets is a class method
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "class_method")]
public bool? ClassMethod { get; set; }
/// <summary>
/// Gets or sets name of the file
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "file")]
public string File { get; set; }
/// <summary>
/// Gets or sets line number
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "line")]
public int? Line { get; set; }
/// <summary>
/// Gets or sets this line isn't from any framework
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_code")]
public bool AppCode { get; set; }
/// <summary>
/// Gets or sets name of the framework
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "framework_name")]
public string FrameworkName { get; set; }
/// <summary>
/// Gets or sets raw frame string
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code_raw")]
public string CodeRaw { get; set; }
/// <summary>
/// Gets or sets formatted frame string
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code_formatted")]
public string CodeFormatted { get; set; }
/// <summary>
/// Gets or sets programming language of the frame. Possible values
/// include: 'JavaScript', 'CSharp', 'Objective-C', 'Objective-Cpp',
/// 'Cpp', 'C', 'Swift', 'Java', 'Unknown'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "language")]
public StackFrameLanguage? Language { get; set; }
/// <summary>
/// Gets or sets frame should be shown always
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "relevant")]
public bool? Relevant { get; set; }
/// <summary>
/// Gets or sets parameters of the frames method
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "method_params")]
public string MethodParams { get; set; }
public virtual void Validate()
{
if (CodeRaw == null)
{
throw new System.Exception("Property 'CodeRaw' is required/");
}
if (CodeFormatted == null)
{
throw new System.Exception("Property 'CodeFormatted' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// a exception
/// </summary>
public partial class Exception
{
public Exception() { }
/// <summary>
/// Gets or sets reason of the exception
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "reason")]
public string Reason { get; set; }
/// <summary>
/// Gets or sets type of the exception (NSSomethingException,
/// NullPointerException)
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public string Type { get; set; }
/// <summary>
/// Gets or sets frames of the excetpion
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "frames")]
public StackFrame[] Frames { get; set; }
/// <summary>
/// Gets or sets relevant exception (crashed)
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "relevant")]
public bool? Relevant { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "inner_exceptions")]
public Exception[] InnerExceptions { get; set; }
/// <summary>
/// Gets or sets sDK/Platform this thread is beeing generated from.
/// Possible values include: 'ios', 'android', 'xamarin',
/// 'react-native', 'ndk', 'unity', 'other'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public ExceptionPlatform? Platform { get; set; }
public virtual void Validate()
{
if (Frames == null)
{
throw new System.Exception("Property 'Frames' is required/");
}
if (this.Frames != null)
{
foreach (var element in this.Frames)
{
if (element != null)
{
element.Validate();
}
}
}
if (this.InnerExceptions != null)
{
foreach (var element1 in this.InnerExceptions)
{
if (element1 != null)
{
element1.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// a thread representation
/// </summary>
public partial class Thread
{
public Thread() { }
/// <summary>
/// Gets or sets name of the thread
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "title")]
public string Title { get; set; }
/// <summary>
/// Gets or sets frames of that thread
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "frames")]
public StackFrame[] Frames { get; set; }
/// <summary>
/// Gets or sets potential additional exception happened in that thread
/// (Last Exception Backtrace)
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exception")]
public Exception Exception { get; set; }
/// <summary>
/// Gets or sets shows if a thread is relevant or not. Is false if all
/// frames are non relevant, otherwise true
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "relevant")]
public bool? Relevant { get; set; }
/// <summary>
/// Gets or sets sDK/Platform this thread is beeing generated from.
/// Possible values include: 'ios', 'android', 'xamarin',
/// 'react-native', 'ndk', 'unity', 'other'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public ThreadPlatform? Platform { get; set; }
/// <summary>
/// Gets or sets true if this thread crashed
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crashed")]
public bool? Crashed { get; set; }
public virtual void Validate()
{
if (Title == null)
{
throw new System.Exception("Property 'Title' is required/");
}
if (Frames == null)
{
throw new System.Exception("Property 'Frames' is required/");
}
if (this.Frames != null)
{
foreach (var element in this.Frames)
{
if (element != null)
{
element.Validate();
}
}
}
if (this.Exception != null)
{
this.Exception.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// a stacktrace in a processed and prettyfied way
/// </summary>
public partial class Stacktrace
{
public Stacktrace() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "title")]
public string Title { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "reason")]
public string Reason { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "threads")]
public Thread[] Threads { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exception")]
public Exception Exception { get; set; }
public virtual void Validate()
{
if (this.Threads != null)
{
foreach (var element in this.Threads)
{
if (element != null)
{
element.Validate();
}
}
}
if (this.Exception != null)
{
this.Exception.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// frame belonging to the reason of the crash
/// </summary>
public partial class ReasonStackFrame
{
public ReasonStackFrame() { }
/// <summary>
/// Gets or sets name of the class
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "class_name")]
public string ClassName { get; set; }
/// <summary>
/// Gets or sets name of the method
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "method")]
public string Method { get; set; }
/// <summary>
/// Gets or sets is a class method
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "class_method")]
public bool? ClassMethod { get; set; }
/// <summary>
/// Gets or sets name of the file
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "file")]
public string File { get; set; }
/// <summary>
/// Gets or sets line number
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "line")]
public int? Line { get; set; }
/// <summary>
/// Gets or sets this line isn't from any framework
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_code")]
public bool? AppCode { get; set; }
/// <summary>
/// Gets or sets name of the framework
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "framework_name")]
public string FrameworkName { get; set; }
/// <summary>
/// Gets or sets formatted frame string
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code_formatted")]
public string CodeFormatted { get; set; }
/// <summary>
/// Gets or sets unformatted Frame string
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code_raw")]
public string CodeRaw { get; set; }
/// <summary>
/// Gets or sets programming language of the frame. Possible values
/// include: 'JavaScript', 'CSharp', 'Objective-C', 'Objective-Cpp',
/// 'Cpp', 'C', 'Swift', 'Java', 'Unknown'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "language")]
public ReasonStackFrameLanguage? Language { get; set; }
/// <summary>
/// Gets or sets parameters of the frames method
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "method_params")]
public string MethodParams { get; set; }
/// <summary>
/// Gets or sets exception type.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exception_type")]
public string ExceptionType { get; set; }
/// <summary>
/// Gets or sets OS exception type. (aka. SIGNAL)
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_exception_type")]
public string OsExceptionType { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashAttachment
{
public CrashAttachment() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "attachment_id")]
public string AttachmentId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_id")]
public string CrashId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "blob_location")]
public string BlobLocation { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "content_type")]
public string ContentType { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "file_name")]
public string FileName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "created_time")]
public System.DateTime CreatedTime { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "size")]
public double Size { get; set; }
public virtual void Validate()
{
if (AppId == null)
{
throw new System.Exception("Property 'AppId' is required/");
}
if (AttachmentId == null)
{
throw new System.Exception("Property 'AttachmentId' is required/");
}
if (CrashId == null)
{
throw new System.Exception("Property 'CrashId' is required/");
}
if (BlobLocation == null)
{
throw new System.Exception("Property 'BlobLocation' is required/");
}
if (ContentType == null)
{
throw new System.Exception("Property 'ContentType' is required/");
}
if (FileName == null)
{
throw new System.Exception("Property 'FileName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Location for downloading crash raw
/// </summary>
public partial class CrashRawLocation
{
public CrashRawLocation() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uri")]
public string Uri { get; set; }
public virtual void Validate()
{
if (Uri == null)
{
throw new System.Exception("Property 'Uri' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Location for downloading crash attachment
/// </summary>
public partial class CrashAttachmentLocation
{
public CrashAttachmentLocation() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uri")]
public string Uri { get; set; }
public virtual void Validate()
{
if (Uri == null)
{
throw new System.Exception("Property 'Uri' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroup
{
public CrashGroup() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_group_id")]
public string CrashGroupId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_id")]
public string DisplayId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_version")]
public string AppVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "build")]
public string Build { get; set; }
/// <summary>
/// Gets or sets possible values include: 'open', 'closed', 'ignored'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public CrashGroupStatus Status { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public int Count { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "impacted_users")]
public int? ImpactedUsers { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "first_occurrence")]
public System.DateTime FirstOccurrence { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "last_occurrence")]
public System.DateTime LastOccurrence { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exception")]
public string Exception { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_reason")]
public string CrashReason { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "reason_frame")]
public ReasonStackFrame ReasonFrame { get; set; }
/// <summary>
/// Gets or sets crash or handled exception
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "fatal")]
public bool Fatal { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "annotation")]
public string Annotation { get; set; }
public virtual void Validate()
{
if (CrashGroupId == null)
{
throw new System.Exception("Property 'CrashGroupId' is required/");
}
if (DisplayId == null)
{
throw new System.Exception("Property 'DisplayId' is required/");
}
if (AppVersion == null)
{
throw new System.Exception("Property 'AppVersion' is required/");
}
if (Build == null)
{
throw new System.Exception("Property 'Build' is required/");
}
if (CrashReason == null)
{
throw new System.Exception("Property 'CrashReason' is required/");
}
if (Annotation == null)
{
throw new System.Exception("Property 'Annotation' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupsContainer
{
public CrashGroupsContainer() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "limited_result_set")]
public bool LimitedResultSet { get; set; }
/// <summary>
/// Gets or sets cassandra request continuation token. The token is
/// used for pagination.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "continuation_token")]
public string ContinuationToken { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_groups")]
public CrashGroup[] CrashGroups { get; set; }
public virtual void Validate()
{
if (CrashGroups == null)
{
throw new System.Exception("Property 'CrashGroups' is required/");
}
if (this.CrashGroups != null)
{
foreach (var element in this.CrashGroups)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupChange
{
public CrashGroupChange() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public object Status { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "annotation")]
public string Annotation { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashDetails
{
public CrashDetails() { }
/// <summary>
/// Gets or sets carrier country code (for mobile devices).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "carrier_country")]
public string CarrierCountry { get; set; }
/// <summary>
/// Gets or sets carrier name (for mobile devices).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "carrier_name")]
public string CarrierName { get; set; }
/// <summary>
/// Gets or sets language code (example: en_US).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "locale")]
public string Locale { get; set; }
/// <summary>
/// Gets or sets OS build code (example: LMY47X).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_build")]
public string OsBuild { get; set; }
/// <summary>
/// Gets or sets whether the device where the crash occurred is rooted
/// or jailbroken
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "rooted")]
public bool Rooted { get; set; }
/// <summary>
/// Gets or sets screen size of the device in pixels (example:
/// 640x480).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "screen_size")]
public string ScreenSize { get; set; }
/// <summary>
/// Gets or sets application launch timestamp (example:
/// 1985-04-12T23:20:50.52Z).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_start_timestamp")]
public System.DateTime? AppStartTimestamp { get; set; }
public virtual void Validate()
{
if (Locale == null)
{
throw new System.Exception("Property 'Locale' is required/");
}
if (ScreenSize == null)
{
throw new System.Exception("Property 'ScreenSize' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Crash
{
public Crash() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "details")]
public CrashDetails Details { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_id")]
public string CrashId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "display_id")]
public string DisplayId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "timestamp")]
public System.DateTime Timestamp { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "build")]
public string Build { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device")]
public string Device { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_name")]
public string DeviceName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_version")]
public string OsVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_type")]
public string OsType { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "stacktrace")]
public Stacktrace Stacktrace { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_name")]
public string UserName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_email")]
public string UserEmail { get; set; }
public virtual void Validate()
{
if (CrashId == null)
{
throw new System.Exception("Property 'CrashId' is required/");
}
if (Version == null)
{
throw new System.Exception("Property 'Version' is required/");
}
if (Build == null)
{
throw new System.Exception("Property 'Build' is required/");
}
if (Device == null)
{
throw new System.Exception("Property 'Device' is required/");
}
if (OsVersion == null)
{
throw new System.Exception("Property 'OsVersion' is required/");
}
if (UserName == null)
{
throw new System.Exception("Property 'UserName' is required/");
}
if (this.Details != null)
{
this.Details.Validate();
}
if (this.Stacktrace != null)
{
this.Stacktrace.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class HockeyAppCrashForwardingInfo
{
public HockeyAppCrashForwardingInfo() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "forwarding_enabled")]
public bool ForwardingEnabled { get; set; }
public virtual void Validate()
{
//Nothing to validate
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class HockeyAppCrashForwardingChange
{
public HockeyAppCrashForwardingChange() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "enable_forwarding")]
public bool? EnableForwarding { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AlertingCrashGroup
{
public AlertingCrashGroup() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "url")]
public string Url { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_display_name")]
public string AppDisplayName { get; set; }
/// <summary>
/// Gets or sets sDK/Platform this thread is beeing generated from.
/// Possible values include: 'ios', 'android', 'xamarin',
/// 'react-native', 'ndk', 'unity', 'other'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_platform")]
public AlertingCrashGroupAppPlatform? AppPlatform { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_version")]
public string AppVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "reason")]
public string Reason { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "stack_trace")]
public string[] StackTrace { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// missing symbol
/// </summary>
public partial class MissingSymbol
{
public MissingSymbol() { }
/// <summary>
/// Gets or sets symbol id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "symbol_id")]
public string SymbolId { get; set; }
/// <summary>
/// Gets or sets symbol name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets symbol plarform
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public string Platform { get; set; }
/// <summary>
/// Gets or sets symbol status. Possible values include: 'missing',
/// 'ignored', 'available'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public MissingSymbolStatus Status { get; set; }
public virtual void Validate()
{
if (SymbolId == null)
{
throw new System.Exception("Property 'SymbolId' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// crash location information
/// </summary>
public partial class CrashLocation
{
public CrashLocation() { }
/// <summary>
/// Gets or sets azure account
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "account")]
public string Account { get; set; }
/// <summary>
/// Gets or sets blob container
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "container")]
public string Container { get; set; }
/// <summary>
/// Gets or sets blob name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "blob")]
public string Blob { get; set; }
public virtual void Validate()
{
if (Account == null)
{
throw new System.Exception("Property 'Account' is required/");
}
if (Container == null)
{
throw new System.Exception("Property 'Container' is required/");
}
if (Blob == null)
{
throw new System.Exception("Property 'Blob' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// parked crash
/// </summary>
public partial class ParkedCrash
{
public ParkedCrash() { }
/// <summary>
/// Gets or sets application id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets application version
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_ver")]
public string AppVer { get; set; }
/// <summary>
/// Gets or sets application build
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_build")]
public string AppBuild { get; set; }
/// <summary>
/// Gets or sets list of missing symbols
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "missing_symbols")]
public MissingSymbol[] MissingSymbols { get; set; }
/// <summary>
/// Gets or sets id of the crash
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_id")]
public string CrashId { get; set; }
/// <summary>
/// Gets or sets platform of the sdk that sent crash
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sdk_platform")]
public string SdkPlatform { get; set; }
/// <summary>
/// Gets or sets name of the sdk wrapper that sent crash
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sdk_wrapper")]
public string SdkWrapper { get; set; }
/// <summary>
/// Gets or sets crash location
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "location")]
public CrashLocation Location { get; set; }
public virtual void Validate()
{
if (AppId == null)
{
throw new System.Exception("Property 'AppId' is required/");
}
if (AppVer == null)
{
throw new System.Exception("Property 'AppVer' is required/");
}
if (AppBuild == null)
{
throw new System.Exception("Property 'AppBuild' is required/");
}
if (MissingSymbols == null)
{
throw new System.Exception("Property 'MissingSymbols' is required/");
}
if (CrashId == null)
{
throw new System.Exception("Property 'CrashId' is required/");
}
if (SdkPlatform == null)
{
throw new System.Exception("Property 'SdkPlatform' is required/");
}
if (Location == null)
{
throw new System.Exception("Property 'Location' is required/");
}
if (this.MissingSymbols != null)
{
foreach (var element in this.MissingSymbols)
{
if (element != null)
{
element.Validate();
}
}
}
if (this.Location != null)
{
this.Location.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// symbol update message
/// </summary>
public partial class SymbolUpdateInfo
{
public SymbolUpdateInfo() { }
/// <summary>
/// Gets or sets UUID of the symbol
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "symbol_id")]
public string SymbolId { get; set; }
/// <summary>
/// Gets or sets application id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets symbol upload status. Possible values include:
/// 'missing', 'ignored', 'available'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public SymbolUpdateInfoStatus Status { get; set; }
public virtual void Validate()
{
if (SymbolId == null)
{
throw new System.Exception("Property 'SymbolId' is required/");
}
if (AppId == null)
{
throw new System.Exception("Property 'AppId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// missing symbol crash group object
/// </summary>
public partial class MissingSymbolCrashGroup
{
public MissingSymbolCrashGroup() { }
/// <summary>
/// Gets or sets id of the symbol group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "symbol_group_id")]
public string SymbolGroupId { get; set; }
/// <summary>
/// Gets or sets number of crashes that belong to this group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count")]
public int? CrashCount { get; set; }
/// <summary>
/// Gets or sets application id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_id")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets application version
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_ver")]
public string AppVer { get; set; }
/// <summary>
/// Gets or sets application build
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_build")]
public string AppBuild { get; set; }
/// <summary>
/// Gets or sets last update date for the group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "last_modified")]
public System.DateTime LastModified { get; set; }
/// <summary>
/// Gets or sets list of missing symbols
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "missing_symbols")]
public MissingSymbol[] MissingSymbols { get; set; }
/// <summary>
/// Gets or sets group status. Possible values include: 'active',
/// 'pending', 'closed'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public MissingSymbolCrashGroupStatus Status { get; set; }
public virtual void Validate()
{
if (SymbolGroupId == null)
{
throw new System.Exception("Property 'SymbolGroupId' is required/");
}
if (AppId == null)
{
throw new System.Exception("Property 'AppId' is required/");
}
if (AppVer == null)
{
throw new System.Exception("Property 'AppVer' is required/");
}
if (AppBuild == null)
{
throw new System.Exception("Property 'AppBuild' is required/");
}
if (MissingSymbols == null)
{
throw new System.Exception("Property 'MissingSymbols' is required/");
}
if (this.MissingSymbols != null)
{
foreach (var element in this.MissingSymbols)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// grouped by missing symbols crashes response object
/// </summary>
public partial class MissingSymbolCrashGroupsResponse
{
public MissingSymbolCrashGroupsResponse() { }
/// <summary>
/// Gets or sets total number of cashes for all the groups
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total_crash_count")]
public int TotalCrashCount { get; set; }
/// <summary>
/// Gets or sets list of crash groups formed by missing symbols
/// combination
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "groups")]
public MissingSymbolCrashGroup[] Groups { get; set; }
public virtual void Validate()
{
if (Groups == null)
{
throw new System.Exception("Property 'Groups' is required/");
}
if (this.Groups != null)
{
foreach (var element in this.Groups)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// missing symbol groups
/// </summary>
public partial class MissingSymbolCrashGroupsInfoResponse
{
public MissingSymbolCrashGroupsInfoResponse() { }
/// <summary>
/// Gets or sets total number of crashes for all missing symbol groups
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total_crash_count")]
public int TotalCrashCount { get; set; }
public virtual void Validate()
{
//Nothing to validate
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// failure response object
/// </summary>
public partial class FailureResponse
{
public FailureResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code")]
public string Code { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
public virtual void Validate()
{
if (Code == null)
{
throw new System.Exception("Property 'Code' is required/");
}
if (Message == null)
{
throw new System.Exception("Property 'Message' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashingAppDetail
{
public CrashingAppDetail() { }
/// <summary>
/// Gets or sets application identifier
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appId")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets application version
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appVersion")]
public string AppVersion { get; set; }
/// <summary>
/// Gets or sets crash group identifier
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crashGroupId")]
public string CrashGroupId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ActiveCrashingAppDetails
{
public ActiveCrashingAppDetails() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "nextLink")]
public string NextLink { get; set; }
/// <summary>
/// Gets or sets details of the apps with crashes
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appsWithCrashes")]
public CrashingAppDetail[] AppsWithCrashes { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class LogTraceDefinition
{
public LogTraceDefinition() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_secret")]
public string AppSecret { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "install_id")]
public string InstallId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "expiration")]
public System.DateTime? Expiration { get; set; }
public virtual void Validate()
{
if (AppSecret == null)
{
throw new System.Exception("Property 'AppSecret' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Device characteristics.
/// </summary>
public partial class Device
{
public Device() { }
/// <summary>
/// Gets or sets name of the SDK. Consists of the name of the SDK and
/// the platform, e.g. "appcenter.ios", "hockeysdk.android".
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sdk_name")]
public string SdkName { get; set; }
/// <summary>
/// Gets or sets version of the SDK in semver format, e.g. "1.2.0" or
/// "0.12.3-alpha.1".
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sdk_version")]
public string SdkVersion { get; set; }
/// <summary>
/// Gets or sets version of the wrapper SDK in semver format. When the
/// SDK is embedding another base SDK (for example Xamarin.Android
/// wraps Android), the Xamarin specific version is populated into this
/// field while sdkVersion refers to the original Android SDK.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "wrapper_sdk_version")]
public string WrapperSdkVersion { get; set; }
/// <summary>
/// Gets or sets name of the wrapper SDK. Consists of the name of the
/// SDK and the wrapper platform, e.g. "appcenter.xamarin",
/// "hockeysdk.cordova".
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "wrapper_sdk_name")]
public string WrapperSdkName { get; set; }
/// <summary>
/// Gets or sets device model (example: iPad2,3).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "model")]
public string Model { get; set; }
/// <summary>
/// Gets or sets device manufacturer (example: HTC).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "oem_name")]
public string OemName { get; set; }
/// <summary>
/// Gets or sets OS name (example: iOS). The following OS names are
/// standardized (non-exclusive): Android, iOS, macOS, tvOS, Windows.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_name")]
public string OsName { get; set; }
/// <summary>
/// Gets or sets OS version (example: 9.3.0).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_version")]
public string OsVersion { get; set; }
/// <summary>
/// Gets or sets OS build code (example: LMY47X).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_build")]
public string OsBuild { get; set; }
/// <summary>
/// Gets or sets API level when applicable like in Android (example:
/// 15).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_api_level")]
public int? OsApiLevel { get; set; }
/// <summary>
/// Gets or sets language code (example: en_US).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "locale")]
public string Locale { get; set; }
/// <summary>
/// Gets or sets the offset in minutes from UTC for the device time
/// zone, including daylight savings time.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "time_zone_offset")]
public int TimeZoneOffset { get; set; }
/// <summary>
/// Gets or sets screen size of the device in pixels (example:
/// 640x480).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "screen_size")]
public string ScreenSize { get; set; }
/// <summary>
/// Gets or sets application version name, e.g. 1.1.0
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_version")]
public string AppVersion { get; set; }
/// <summary>
/// Gets or sets carrier name (for mobile devices).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "carrier_name")]
public string CarrierName { get; set; }
/// <summary>
/// Gets or sets carrier country code (for mobile devices).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "carrier_code")]
public string CarrierCode { get; set; }
/// <summary>
/// Gets or sets carrier country.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "carrier_country")]
public string CarrierCountry { get; set; }
/// <summary>
/// Gets or sets the app's build number, e.g. 42.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_build")]
public string AppBuild { get; set; }
/// <summary>
/// Gets or sets the bundle identifier, package identifier, or
/// namespace, depending on what the individual plattforms use, .e.g
/// com.microsoft.example.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_namespace")]
public string AppNamespace { get; set; }
/// <summary>
/// Gets or sets label that is used to identify application code
/// 'version' released via Live Update beacon running on device
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "live_update_release_label")]
public string LiveUpdateReleaseLabel { get; set; }
/// <summary>
/// Gets or sets identifier of environment that current application
/// release belongs to, deployment key then maps to environment like
/// Production, Staging.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "live_update_deployment_key")]
public string LiveUpdateDeploymentKey { get; set; }
/// <summary>
/// Gets or sets hash of all files (ReactNative or Cordova) deployed to
/// device via LiveUpdate beacon. Helps identify the Release version on
/// device or need to download updates in future.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "live_update_package_hash")]
public string LiveUpdatePackageHash { get; set; }
/// <summary>
/// Gets or sets version of the wrapper technology framework (Xamarin
/// runtime version or ReactNative or Cordova etc...). See
/// wrapper_sdk_name to see if this version refers to Xamarin or
/// ReactNative or other.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "wrapper_runtime_version")]
public string WrapperRuntimeVersion { get; set; }
public virtual void Validate()
{
if (SdkName == null)
{
throw new System.Exception("Property 'SdkName' is required/");
}
if (SdkVersion == null)
{
throw new System.Exception("Property 'SdkVersion' is required/");
}
if (OsName == null)
{
throw new System.Exception("Property 'OsName' is required/");
}
if (OsVersion == null)
{
throw new System.Exception("Property 'OsVersion' is required/");
}
if (Locale == null)
{
throw new System.Exception("Property 'Locale' is required/");
}
if (AppVersion == null)
{
throw new System.Exception("Property 'AppVersion' is required/");
}
if (AppBuild == null)
{
throw new System.Exception("Property 'AppBuild' is required/");
}
if (this.TimeZoneOffset > 840)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'TimeZoneOffset', 840");
}
if (this.TimeZoneOffset < -840)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'TimeZoneOffset', -840");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Log
{
public Log() { }
/// <summary>
/// Gets or sets log creation timestamp.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "timestamp")]
public System.DateTime Timestamp { get; set; }
/// <summary>
/// Gets or sets install ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "install_id")]
public System.Guid InstallId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device")]
public Device Device { get; set; }
public virtual void Validate()
{
if (Device == null)
{
throw new System.Exception("Property 'Device' is required/");
}
if (this.Device != null)
{
this.Device.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class LogContainer
{
public LogContainer() { }
/// <summary>
/// Gets or sets indicates if the number of available logs are more
/// than the max allowed return limit(100).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exceeded_max_limit")]
public bool? ExceededMaxLimit { get; set; }
/// <summary>
/// Gets or sets the timestamp of the last log received. This value can
/// be used as the start time parameter in the consecutive API call.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "last_received_log_timestamp")]
public System.DateTime? LastReceivedLogTimestamp { get; set; }
/// <summary>
/// Gets or sets the list of logs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "logs")]
public Log[] Logs { get; set; }
public virtual void Validate()
{
if (Logs == null)
{
throw new System.Exception("Property 'Logs' is required/");
}
if (this.Logs != null)
{
if (this.Logs.Length < 0)
{
throw new System.Exception("Validation Failed: MinItems, 'Logs', 0");
}
foreach (var element in this.Logs)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Generic log.
/// </summary>
public partial class GenericLog
{
public GenericLog() { }
/// <summary>
/// Gets or sets log type.
/// . Possible values include: 'event', 'page', 'start_session',
/// 'error', 'push_installation', 'start_service', 'custom_properties'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public GenericLogType Type { get; set; }
/// <summary>
/// Gets or sets log creation timestamp.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "timestamp")]
public System.DateTime Timestamp { get; set; }
/// <summary>
/// Gets or sets install ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "install_id")]
public System.Guid InstallId { get; set; }
/// <summary>
/// Gets or sets session ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "session_id")]
public System.Guid? SessionId { get; set; }
/// <summary>
/// Gets or sets event ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "event_id")]
public string EventId { get; set; }
/// <summary>
/// Gets or sets event name.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "event_name")]
public string EventName { get; set; }
/// <summary>
/// Gets or sets message ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message_id")]
public string MessageId { get; set; }
/// <summary>
/// Gets or sets event specific properties.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "properties")]
public System.Collections.Generic.Dictionary<string, string> Properties { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device")]
public Device Device { get; set; }
public virtual void Validate()
{
if (Device == null)
{
throw new System.Exception("Property 'Device' is required/");
}
if (this.Device != null)
{
this.Device.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class GenericLogContainer
{
public GenericLogContainer() { }
/// <summary>
/// Gets or sets indicates if the number of available logs are more
/// than the max allowed return limit(100).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exceeded_max_limit")]
public bool? ExceededMaxLimit { get; set; }
/// <summary>
/// Gets or sets the timestamp of the last log received. This value can
/// be used as the start time parameter in the consecutive API call.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "last_received_log_timestamp")]
public System.DateTime? LastReceivedLogTimestamp { get; set; }
/// <summary>
/// Gets or sets the list of logs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "logs")]
public GenericLog[] Logs { get; set; }
public virtual void Validate()
{
if (Logs == null)
{
throw new System.Exception("Property 'Logs' is required/");
}
if (this.Logs != null)
{
if (this.Logs.Length < 0)
{
throw new System.Exception("Validation Failed: MinItems, 'Logs', 0");
}
foreach (var element in this.Logs)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class LogWithProperties : Log
{
public LogWithProperties() { }
/// <summary>
/// Gets or sets additional key/value pair parameters.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "properties")]
public System.Collections.Generic.Dictionary<string, string> Properties { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Required explicit begin session log (a marker event for analytics
/// service).
/// </summary>
[Newtonsoft.Json.JsonObject("start_session")]
public partial class StartSessionLog : Log
{
public StartSessionLog() { }
/// <summary>
/// Gets or sets session ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "session_id")]
public System.Guid SessionId { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Required explicit begin session log (a marker event for analytics
/// service).
/// </summary>
[Newtonsoft.Json.JsonObject("handled_error")]
public partial class HanledErrorLog : Log
{
public HanledErrorLog() { }
/// <summary>
/// Gets or sets error ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "error_id")]
public System.Guid ErrorId { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Describe a AppCenter.Start API call from the SDK.
/// </summary>
[Newtonsoft.Json.JsonObject("start_service")]
public partial class StartServiceLog : Log
{
public StartServiceLog() { }
/// <summary>
/// Gets or sets the list of services of the AppCenter Start API call.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "services")]
public string[] Services { get; set; }
public override void Validate()
{
base.Validate();
if (this.Services != null)
{
if (this.Services.Length < 1)
{
throw new System.Exception("Validation Failed: MinItems, 'Services', 1");
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CustomProperty
{
public CustomProperty() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (this.Name != null)
{
if (this.Name.Length > 128)
{
throw new System.Exception("Validation Failed: MaxLength, 'Name', 128");
}
if (!System.Text.RegularExpressions.Regex.IsMatch(this.Name, "^[a-zA-Z][a-zA-Z0-9\\-_]*$"))
{
throw new System.Exception("Validation Failed: Pattern, 'Name', ^[a - zA - Z][a - zA - Z0 - 9\\-_] * $");
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Set or remove custom properties.
/// </summary>
[Newtonsoft.Json.JsonObject("custom_properties")]
public partial class CustomPropertyLog : Log
{
public CustomPropertyLog() { }
/// <summary>
/// Gets or sets custom property changes.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "properties")]
public CustomProperty[] Properties { get; set; }
public override void Validate()
{
base.Validate();
if (this.Properties != null)
{
if (this.Properties.Length > 60)
{
throw new System.Exception("Validation Failed: MaxItems, 'Properties', 60");
}
if (this.Properties.Length < 1)
{
throw new System.Exception("Validation Failed: MinItems, 'Properties', 1");
}
foreach (var element in this.Properties)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// String property.
/// </summary>
[Newtonsoft.Json.JsonObject("string")]
public partial class StringProperty : CustomProperty
{
public StringProperty() { }
/// <summary>
/// Gets or sets string property value.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public string Value { get; set; }
public override void Validate()
{
base.Validate();
if (Value == null)
{
throw new System.Exception("Property 'Value' is required/");
}
if (this.Value != null)
{
if (this.Value.Length > 128)
{
throw new System.Exception("Validation Failed: MaxLength, 'Value', 128");
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Number property.
/// </summary>
[Newtonsoft.Json.JsonObject("number")]
public partial class NumberProperty : CustomProperty
{
public NumberProperty() { }
/// <summary>
/// Gets or sets number property value.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public double Value { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Boolean property.
/// </summary>
[Newtonsoft.Json.JsonObject("boolean")]
public partial class BooleanProperty : CustomProperty
{
public BooleanProperty() { }
/// <summary>
/// Gets or sets boolean property value.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public bool Value { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Date and time property.
/// </summary>
[Newtonsoft.Json.JsonObject("date_time")]
public partial class DateTimeProperty : CustomProperty
{
public DateTimeProperty() { }
/// <summary>
/// Gets or sets date time property value.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public System.DateTime Value { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Clear an existing property.
/// </summary>
[Newtonsoft.Json.JsonObject("clear")]
public partial class ClearProperty : CustomProperty
{
public ClearProperty() { }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Page view log (as in screens or activities).
/// </summary>
[Newtonsoft.Json.JsonObject("page")]
public partial class PageLog : LogWithProperties
{
public PageLog() { }
/// <summary>
/// Gets or sets session ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "session_id")]
public System.Guid SessionId { get; set; }
/// <summary>
/// Gets or sets name of the page.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public override void Validate()
{
base.Validate();
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Event log.
/// </summary>
[Newtonsoft.Json.JsonObject("event")]
public partial class EventLog : LogWithProperties
{
public EventLog() { }
/// <summary>
/// Gets or sets session ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "session_id")]
public System.Guid SessionId { get; set; }
/// <summary>
/// Gets or sets unique identifier for this event.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public System.Guid Id { get; set; }
/// <summary>
/// Gets or sets name of the event.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public override void Validate()
{
base.Validate();
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Push installation Information.
/// </summary>
[Newtonsoft.Json.JsonObject("push_installation")]
public partial class PushInstallationLog : Log
{
public PushInstallationLog() { }
/// <summary>
/// Gets or sets the PNS handle for this installation.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "push_token")]
public string PushToken { get; set; }
public override void Validate()
{
base.Validate();
if (PushToken == null)
{
throw new System.Exception("Property 'PushToken' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Error log.
/// </summary>
[Newtonsoft.Json.JsonObject("error")]
public partial class ErrorLog : Log
{
public ErrorLog() { }
/// <summary>
/// Gets or sets session ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "session_id")]
public System.Guid SessionId { get; set; }
/// <summary>
/// Gets or sets error identifier.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public System.Guid Id { get; set; }
/// <summary>
/// Gets or sets corresponds to the number of milliseconds elapsed
/// between the time the error occurred and the app was launched.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_launch_toffset")]
public long? AppLaunchToffset { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Audience definition.
/// </summary>
public partial class AudienceSummary
{
public AudienceSummary() { }
/// <summary>
/// Gets or sets audience name.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets audience description.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets estimated audience size.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "estimated_count")]
public long? EstimatedCount { get; set; }
/// <summary>
/// Gets or sets audience definition in OData format.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "definition")]
public string Definition { get; set; }
/// <summary>
/// Gets or sets audience state. Possible values include:
/// 'Calculating', 'Ready', 'Disabled'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state")]
public AudienceProcessingState? State { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// List of audiences.
/// </summary>
public partial class AudienceListResult
{
public AudienceListResult() { }
/// <summary>
/// Gets or sets list of audiences.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "values")]
public AudienceSummary[] Values { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "nextLink")]
public string NextLink { get; set; }
public virtual void Validate()
{
if (Values == null)
{
throw new System.Exception("Property 'Values' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Audience with details.
/// </summary>
public partial class Audience : AudienceSummary
{
public Audience() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "enabled")]
public bool? Enabled { get; set; }
/// <summary>
/// Gets or sets custom properties used in the definition.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "custom_properties")]
public System.Collections.Generic.Dictionary<string, DevicePropertyType?> CustomProperties { get; set; }
/// <summary>
/// Gets or sets estimated total audience size.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "estimated_total_count")]
public long? EstimatedTotalCount { get; set; }
/// <summary>
/// Gets or sets date the audience was last refreshed.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "timestamp")]
public System.DateTime? Timestamp { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Audience test result.
/// </summary>
public partial class AudienceTestResult
{
public AudienceTestResult() { }
/// <summary>
/// Gets or sets audience definition in OData format.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "definition")]
public string Definition { get; set; }
/// <summary>
/// Gets or sets custom properties used in the definition.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "custom_properties")]
public System.Collections.Generic.Dictionary<string, DevicePropertyType?> CustomProperties { get; set; }
/// <summary>
/// Gets or sets estimated audience size.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "estimated_count")]
public long? EstimatedCount { get; set; }
/// <summary>
/// Gets or sets estimated total audience size.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "estimated_total_count")]
public long? EstimatedTotalCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Audience definition.
/// </summary>
public partial class AudienceDefinition
{
public AudienceDefinition() { }
/// <summary>
/// Gets or sets audience description.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// Gets or sets audience definition in OData format.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "definition")]
public string Definition { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "enabled")]
public bool? Enabled { get; set; }
/// <summary>
/// Gets or sets custom properties used in the definition.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "custom_properties")]
public System.Collections.Generic.Dictionary<string, DevicePropertyType?> CustomProperties { get; set; }
public virtual void Validate()
{
if (Definition == null)
{
throw new System.Exception("Property 'Definition' is required/");
}
if (this.Description != null)
{
if (this.Description.Length > 128)
{
throw new System.Exception("Validation Failed: MaxLength, 'Description', 128");
}
}
if (this.Definition != null)
{
if (this.Definition.Length > 2000)
{
throw new System.Exception("Validation Failed: MaxLength, 'Definition', 2000");
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Audience definition.
/// </summary>
public partial class AudienceBlobResult
{
public AudienceBlobResult() { }
/// <summary>
/// Gets or sets location of the audience blob.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "url")]
public string Url { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// List of device properties.
/// </summary>
public partial class AudienceDevicePropertiesListResult
{
public AudienceDevicePropertiesListResult() { }
/// <summary>
/// Gets or sets list of device properties.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "values")]
public System.Collections.Generic.Dictionary<string, DevicePropertyType?> Values { get; set; }
public virtual void Validate()
{
if (Values == null)
{
throw new System.Exception("Property 'Values' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// List of device property values.
/// </summary>
public partial class AudienceDevicePropertyValuesListResult
{
public AudienceDevicePropertyValuesListResult() { }
/// <summary>
/// Gets or sets list of device property values.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "values")]
public string[] Values { get; set; }
public virtual void Validate()
{
if (Values == null)
{
throw new System.Exception("Property 'Values' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DateTimeCounts
{
public DateTimeCounts() { }
/// <summary>
/// Gets or sets the ISO 8601 datetime
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "datetime")]
public string Datetime { get; set; }
/// <summary>
/// Gets or sets count of the object
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashCounts
{
public CrashCounts() { }
/// <summary>
/// Gets or sets total crash count
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
/// <summary>
/// Gets or sets the total crash count for day
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crashes")]
public DateTimeCounts[] Crashes { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorCounts
{
public ErrorCounts() { }
/// <summary>
/// Gets or sets total error count
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
/// <summary>
/// Gets or sets the total error count for day
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "errors")]
public DateTimeCounts[] Errors { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ActiveDeviceCounts
{
public ActiveDeviceCounts() { }
/// <summary>
/// Gets or sets the active device count for each interval
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "daily")]
public DateTimeCounts[] Daily { get; set; }
/// <summary>
/// Gets or sets the active device count for each interval with a
/// week's retention
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "weekly")]
public DateTimeCounts[] Weekly { get; set; }
/// <summary>
/// Gets or sets the active device count for each interval with a
/// month's retention
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "monthly")]
public DateTimeCounts[] Monthly { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// The place code and the count
/// </summary>
public partial class Place
{
public Place() { }
/// <summary>
/// Gets or sets the place code
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code")]
public string Code { get; set; }
/// <summary>
/// Gets or sets the count of the this place
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
/// <summary>
/// Gets or sets the count of previous time range of the place
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_count")]
public long? PreviousCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Places and count during the time range in descending order
/// </summary>
public partial class Places
{
public Places() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public long? Total { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "places")]
public Place[] PlacesProperty { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorError
{
public ErrorError() { }
/// <summary>
/// Gets or sets the status code return by the API. It can be 400 or
/// 403 or 500.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code")]
public int? Code { get; set; }
/// <summary>
/// Gets or sets the reason for the request failed
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Error
/// </summary>
public partial class Error
{
public Error() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "error")]
public ErrorError ErrorProperty { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class SessionDurationsDistributionDistributionItem
{
public SessionDurationsDistributionDistributionItem() { }
/// <summary>
/// Gets or sets the bucket name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "bucket")]
public string Bucket { get; set; }
/// <summary>
/// Gets or sets the count of sessions in current bucket
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class SessionDurationsDistribution
{
public SessionDurationsDistribution() { }
/// <summary>
/// Gets or sets the count of sessions in these buckets
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution")]
public SessionDurationsDistributionDistributionItem[] Distribution { get; set; }
/// <summary>
/// Gets or sets the previous average session duration for previous
/// time range
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_average_duration")]
public string PreviousAverageDuration { get; set; }
/// <summary>
/// Gets or sets the average session duration for current time range
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "average_duration")]
public string AverageDuration { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Version
{
public Version() { }
/// <summary>
/// Gets or sets version
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string VersionProperty { get; set; }
/// <summary>
/// Gets or sets version count
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
/// <summary>
/// Gets or sets the count of previous time range of the version
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_count")]
public long? PreviousCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Versions
{
public Versions() { }
/// <summary>
/// Gets or sets list of version count
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "versions")]
public Version[] VersionsProperty { get; set; }
/// <summary>
/// Gets or sets the total count of versions
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public long? Total { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class SessionsPerDeviceSessionsPerUserItem
{
public SessionsPerDeviceSessionsPerUserItem() { }
/// <summary>
/// Gets or sets the ISO 8601 datetime
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "datetime")]
public string Datetime { get; set; }
/// <summary>
/// Gets or sets count
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public double? Count { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class SessionsPerDevice
{
public SessionsPerDevice() { }
/// <summary>
/// Gets or sets average seesion per user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "average_sessions_per_user")]
public double? AverageSessionsPerUser { get; set; }
/// <summary>
/// Gets or sets previous average session per user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_average_sessions_per_user")]
public double? PreviousAverageSessionsPerUser { get; set; }
/// <summary>
/// Gets or sets total session per device count
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total_count")]
public long? TotalCount { get; set; }
/// <summary>
/// Gets or sets previous total count
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_total_count")]
public long? PreviousTotalCount { get; set; }
/// <summary>
/// Gets or sets the session count for each interval per device
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sessions_per_user")]
public SessionsPerDeviceSessionsPerUserItem[] SessionsPerUser { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Model
{
public Model() { }
/// <summary>
/// Gets or sets model's name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "model_name")]
public string ModelName { get; set; }
/// <summary>
/// Gets or sets count current of model
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
/// <summary>
/// Gets or sets count of previous model
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_count")]
public long? PreviousCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AnalyticsModels
{
public AnalyticsModels() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public long? Total { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "models")]
public Model[] ModelsProperty { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Language
{
public Language() { }
/// <summary>
/// Gets or sets language's name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "language_name")]
public string LanguageName { get; set; }
/// <summary>
/// Gets or sets count current of language
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
/// <summary>
/// Gets or sets count of previous lanugage
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_count")]
public long? PreviousCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Languages
{
public Languages() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public long? Total { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "languages")]
public Language[] LanguagesProperty { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OS
{
public OS() { }
/// <summary>
/// Gets or sets OS name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_name")]
public string OsName { get; set; }
/// <summary>
/// Gets or sets count current of OS
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
/// <summary>
/// Gets or sets count of previous OS
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_count")]
public long? PreviousCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class OSes
{
public OSes() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public long? Total { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "oses")]
public OS[] Oses { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DateTimeDecimalCounts
{
public DateTimeDecimalCounts() { }
/// <summary>
/// Gets or sets the ISO 8601 datetime
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "datetime")]
public string Datetime { get; set; }
/// <summary>
/// Gets or sets decimal count of the object
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public double? Count { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AvailableVersions
{
public AvailableVersions() { }
/// <summary>
/// Gets or sets list of available versions.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "versions")]
public string[] Versions { get; set; }
/// <summary>
/// Gets or sets the full number of versions across all pages.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total_count")]
public long? TotalCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DateTimePercentages
{
public DateTimePercentages() { }
/// <summary>
/// Gets or sets the ISO 8601 datetime
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "datetime")]
public string Datetime { get; set; }
/// <summary>
/// Gets or sets percentage of the object
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "percentage")]
public double? Percentage { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashFreeDevicePercentages
{
public CrashFreeDevicePercentages() { }
/// <summary>
/// Gets or sets average percentage
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "average_percentage")]
public double? AveragePercentage { get; set; }
/// <summary>
/// Gets or sets the crash-free percentage per day.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "daily_percentages")]
public DateTimePercentages[] DailyPercentages { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Modules
{
public Modules() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "modules")]
public System.Collections.Generic.Dictionary<string, System.Collections.Generic.Dictionary<string, bool?>> ModulesProperty { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashOverall
{
public CrashOverall() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count")]
public long? CrashCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_count")]
public long? DeviceCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashesOverallItem
{
public CrashesOverallItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_group_id")]
public string CrashGroupId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_version")]
public string AppVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "overall")]
public CrashOverall Overall { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupModel
{
public CrashGroupModel() { }
/// <summary>
/// Gets or sets model's name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "model_name")]
public string ModelName { get; set; }
/// <summary>
/// Gets or sets count of model
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count")]
public long? CrashCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupModels
{
public CrashGroupModels() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count")]
public long? CrashCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "models")]
public CrashGroupModel[] ModelsProperty { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorGroupListItem : ErrorGroupState
{
public ErrorGroupListItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "errorGroupId")]
public string ErrorGroupId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appVersion")]
public string AppVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long Count { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "deviceCount")]
public long DeviceCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "lastOccurrence")]
public System.DateTime LastOccurrence { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exceptionType")]
public string ExceptionType { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exceptionMessage")]
public string ExceptionMessage { get; set; }
public override void Validate()
{
base.Validate();
if (ErrorGroupId == null)
{
throw new System.Exception("Property 'ErrorGroupId' is required/");
}
if (AppVersion == null)
{
throw new System.Exception("Property 'AppVersion' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorGroups
{
public ErrorGroups() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "nextLink")]
public string NextLink { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "errorGroups")]
public ErrorGroupListItem[] ErrorGroupsProperty { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class HandledErrorReasonFrame
{
public HandledErrorReasonFrame() { }
/// <summary>
/// Gets or sets name of the class
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "className")]
public string ClassName { get; set; }
/// <summary>
/// Gets or sets name of the method
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "method")]
public string Method { get; set; }
/// <summary>
/// Gets or sets is a class method
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "classMethod")]
public bool? ClassMethod { get; set; }
/// <summary>
/// Gets or sets name of the file
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "file")]
public string File { get; set; }
/// <summary>
/// Gets or sets line number
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "line")]
public int? Line { get; set; }
/// <summary>
/// Gets or sets this line isn't from any framework
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appCode")]
public bool? AppCode { get; set; }
/// <summary>
/// Gets or sets name of the framework
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "frameworkName")]
public string FrameworkName { get; set; }
/// <summary>
/// Gets or sets formatted frame string
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "codeFormatted")]
public string CodeFormatted { get; set; }
/// <summary>
/// Gets or sets unformatted Frame string
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "codeRaw")]
public string CodeRaw { get; set; }
/// <summary>
/// Gets or sets programming language of the frame. Possible values
/// include: 'JavaScript', 'CSharp', 'Objective-C', 'Objective-Cpp',
/// 'Cpp', 'C', 'Swift', 'Java', 'Unknown'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "language")]
public HandledErrorReasonFrameLanguage? Language { get; set; }
/// <summary>
/// Gets or sets parameters of the frames method
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "methodParams")]
public string MethodParams { get; set; }
/// <summary>
/// Gets or sets exception type.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exceptionType")]
public string ExceptionType { get; set; }
/// <summary>
/// Gets or sets OS exception type. (aka. SIGNAL)
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "osExceptionType")]
public string OsExceptionType { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorGroup : ErrorGroupState
{
public ErrorGroup() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "errorGroupId")]
public string ErrorGroupId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appVersion")]
public string AppVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long Count { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "deviceCount")]
public long DeviceCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "firstOccurrence")]
public System.DateTime FirstOccurrence { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "lastOccurrence")]
public System.DateTime LastOccurrence { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exceptionType")]
public string ExceptionType { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exceptionMessage")]
public string ExceptionMessage { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exceptionFile")]
public string ExceptionFile { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exceptionLine")]
public string ExceptionLine { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "reasonFrames")]
public HandledErrorReasonFrame[] ReasonFrames { get; set; }
public override void Validate()
{
base.Validate();
if (ErrorGroupId == null)
{
throw new System.Exception("Property 'ErrorGroupId' is required/");
}
if (AppVersion == null)
{
throw new System.Exception("Property 'AppVersion' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorGroupState
{
public ErrorGroupState() { }
/// <summary>
/// Gets or sets possible values include: 'open', 'closed', 'ignored'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state")]
public ErrorGroupStateState State { get; set; }
public virtual void Validate()
{
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorDownloadLink
{
public ErrorDownloadLink() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "link")]
public string Link { get; set; }
public virtual void Validate()
{
if (Link == null)
{
throw new System.Exception("Property 'Link' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorFreeDevicePercentages
{
public ErrorFreeDevicePercentages() { }
/// <summary>
/// Gets or sets average percentage
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "averagePercentage")]
public double? AveragePercentage { get; set; }
/// <summary>
/// Gets or sets the error-free percentage per day.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "dailyPercentages")]
public DateTimePercentages[] DailyPercentages { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class HandledError
{
public HandledError() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "errorId")]
public string ErrorId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "timestamp")]
public System.DateTime? Timestamp { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "deviceName")]
public string DeviceName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "osVersion")]
public string OsVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "osType")]
public string OsType { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "country")]
public string Country { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "language")]
public string Language { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class HandledErrors
{
public HandledErrors() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "nextLink")]
public string NextLink { get; set; }
/// <summary>
/// Gets or sets errors list.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "errors")]
public HandledError[] Errors { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class HandledErrorDetails : HandledError
{
public HandledErrorDetails() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "reasonFrames")]
public HandledErrorReasonFrame[] ReasonFrames { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "properties")]
public System.Collections.Generic.Dictionary<string, string> Properties { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorGroupModel
{
public ErrorGroupModel() { }
/// <summary>
/// Gets or sets model name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "modelName")]
public string ModelName { get; set; }
/// <summary>
/// Gets or sets model code
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "modelCode")]
public string ModelCode { get; set; }
/// <summary>
/// Gets or sets count of errors in a model
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "errorCount")]
public long? ErrorCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorGroupModels
{
public ErrorGroupModels() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "errorCount")]
public long? ErrorCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "models")]
public ErrorGroupModel[] ModelsProperty { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorGroupOperatingSystem
{
public ErrorGroupOperatingSystem() { }
/// <summary>
/// Gets or sets OS name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "operatingSystemName")]
public string OperatingSystemName { get; set; }
/// <summary>
/// Gets or sets count of OS
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "errorCount")]
public long? ErrorCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ErrorGroupOperatingSystems
{
public ErrorGroupOperatingSystems() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "errorCount")]
public long? ErrorCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "operatingSystems")]
public ErrorGroupOperatingSystem[] OperatingSystems { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupOperatingSystem
{
public CrashGroupOperatingSystem() { }
/// <summary>
/// Gets or sets OS name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "operating_system_name")]
public string OperatingSystemName { get; set; }
/// <summary>
/// Gets or sets count of OS
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count")]
public long? CrashCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupOperatingSystems
{
public CrashGroupOperatingSystems() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count")]
public long? CrashCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "operating_systems")]
public CrashGroupOperatingSystem[] OperatingSystems { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupPlace
{
public CrashGroupPlace() { }
/// <summary>
/// Gets or sets place name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "place_name")]
public string PlaceName { get; set; }
/// <summary>
/// Gets or sets count of places
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count")]
public long? CrashCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupPlaces
{
public CrashGroupPlaces() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count")]
public long? CrashCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "places")]
public CrashGroupPlace[] Places { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupLanguage
{
public CrashGroupLanguage() { }
/// <summary>
/// Gets or sets language name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "language_name")]
public string LanguageName { get; set; }
/// <summary>
/// Gets or sets count of languages
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count")]
public long? CrashCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupLanguages
{
public CrashGroupLanguages() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count")]
public long? CrashCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "languages")]
public CrashGroupLanguage[] Languages { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupCarrier
{
public CrashGroupCarrier() { }
/// <summary>
/// Gets or sets carrier name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "carrier_name")]
public string CarrierName { get; set; }
/// <summary>
/// Gets or sets crash count of carrier
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count")]
public long? CrashCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupCarriers
{
public CrashGroupCarriers() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count")]
public long? CrashCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "carriers")]
public CrashGroupCarrier[] Carriers { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupAndVersion
{
public CrashGroupAndVersion() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_group_id")]
public string CrashGroupId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_version")]
public string AppVersion { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CrashGroupContainer
{
public CrashGroupContainer() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_groups")]
public CrashGroupAndVersion[] CrashGroups { get; set; }
public virtual void Validate()
{
if (CrashGroups == null)
{
throw new System.Exception("Property 'CrashGroups' is required/");
}
if (this.CrashGroups != null)
{
if (this.CrashGroups.Length < 1)
{
throw new System.Exception("Validation Failed: MinItems, 'CrashGroups', 1");
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class EventModel
{
public EventModel() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_count")]
public long? DeviceCount { get; set; }
/// <summary>
/// Gets or sets the device count of previous time range of the event
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_device_count")]
public long? PreviousDeviceCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
/// <summary>
/// Gets or sets the event count of previous time range of the event
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_count")]
public long? PreviousCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count_per_device")]
public double? CountPerDevice { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count_per_session")]
public double? CountPerSession { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Events
{
public Events() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "events")]
public EventModel[] EventsProperty { get; set; }
/// <summary>
/// Gets or sets the total count of events
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public long? Total { get; set; }
/// <summary>
/// Gets or sets the active device over this period
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total_devices")]
public long? TotalDevices { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class EventCount
{
public EventCount() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total_count")]
public long? TotalCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_total_count")]
public long? PreviousTotalCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public DateTimeCounts[] Count { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class EventDeviceCount
{
public EventDeviceCount() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total_devices")]
public long? TotalDevices { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total_devices_with_event")]
public long? TotalDevicesWithEvent { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_total_devices_with_event")]
public long? PreviousTotalDevicesWithEvent { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devices_count")]
public DateTimeCounts[] DevicesCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class EventCountPerDevice
{
public EventCountPerDevice() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "avg_count_per_device")]
public double? AvgCountPerDevice { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_avg_count_per_device")]
public double? PreviousAvgCountPerDevice { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count_per_device")]
public DateTimeDecimalCounts[] CountPerDevice { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class EventCountPerSession
{
public EventCountPerSession() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "avg_count_per_session")]
public double? AvgCountPerSession { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_avg_count_per_session")]
public double? PreviousAvgCountPerSession { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count_per_session")]
public DateTimeDecimalCounts[] CountPerSession { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Event properties during the time range
/// </summary>
public partial class EventProperties
{
public EventProperties() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "event_properties")]
public string[] EventPropertiesProperty { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// An event property value with counts
/// </summary>
public partial class EventPropertyValue
{
public EventPropertyValue() { }
/// <summary>
/// Gets or sets the event property value name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the count of the the event property value
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
/// <summary>
/// Gets or sets the count of previous time range of the event property
/// value
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_count")]
public long? PreviousCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Event property value counts during the time range in descending order
/// </summary>
public partial class EventPropertyValues
{
public EventPropertyValues() { }
/// <summary>
/// Gets or sets the total property value counts
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public long? Total { get; set; }
/// <summary>
/// Gets or sets the event property values
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "values")]
public EventPropertyValue[] Values { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ReleaseWithDistributionGroupAndUserId : ReleaseWithDistributionGroup
{
public ReleaseWithDistributionGroupAndUserId() { }
/// <summary>
/// Gets or sets unique user Id. Will generate a new user Id if not
/// provided.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_id")]
public System.Guid? UserId { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class NotifyReleasesContainer
{
public NotifyReleasesContainer() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "releases")]
public ReleaseWithDistributionGroupAndUserId[] Releases { get; set; }
public virtual void Validate()
{
if (Releases == null)
{
throw new System.Exception("Property 'Releases' is required/");
}
if (this.Releases != null)
{
if (this.Releases.Length < 1)
{
throw new System.Exception("Validation Failed: MinItems, 'Releases', 1");
}
foreach (var element in this.Releases)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Release
{
public Release() { }
/// <summary>
/// Gets or sets release Id.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release")]
public string ReleaseProperty { get; set; }
public virtual void Validate()
{
if (ReleaseProperty == null)
{
throw new System.Exception("Property 'ReleaseProperty' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DeleteReleasesContainer
{
public DeleteReleasesContainer() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "releases")]
public Release[] Releases { get; set; }
public virtual void Validate()
{
if (Releases == null)
{
throw new System.Exception("Property 'Releases' is required/");
}
if (this.Releases != null)
{
if (this.Releases.Length < 1)
{
throw new System.Exception("Validation Failed: MinItems, 'Releases', 1");
}
foreach (var element in this.Releases)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ReleaseWithDistributionGroup : Release
{
public ReleaseWithDistributionGroup() { }
/// <summary>
/// Gets or sets distribution group Id.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_group")]
public string DistributionGroup { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class GetReleasesContainer
{
public GetReleasesContainer() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "releases")]
public ReleaseWithDistributionGroup[] Releases { get; set; }
public virtual void Validate()
{
if (Releases == null)
{
throw new System.Exception("Property 'Releases' is required/");
}
if (this.Releases != null)
{
if (this.Releases.Length < 1)
{
throw new System.Exception("Validation Failed: MinItems, 'Releases', 1");
}
foreach (var element in this.Releases)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class FilterReleasesContainer
{
public FilterReleasesContainer() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "releases")]
public Release[] Releases { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class FilterVersionsContainerVersionsItem
{
public FilterVersionsContainerVersionsItem() { }
/// <summary>
/// Gets or sets app version
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// Gets or sets app build number
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "build")]
public string Build { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class FilterVersionsContainer
{
public FilterVersionsContainer() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "versions")]
public FilterVersionsContainerVersionsItem[] Versions { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ReleaseCount
{
public ReleaseCount() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_id")]
public string ReleaseId { get; set; }
/// <summary>
/// Gets or sets distribution group queried.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_group")]
public string DistributionGroup { get; set; }
/// <summary>
/// Gets or sets count of unique downloads against user id.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "unique_count")]
public long UniqueCount { get; set; }
/// <summary>
/// Gets or sets total count of downloads.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total_count")]
public long TotalCount { get; set; }
public virtual void Validate()
{
if (ReleaseId == null)
{
throw new System.Exception("Property 'ReleaseId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ReleaseCounts
{
public ReleaseCounts() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public long? Total { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "counts")]
public ReleaseCount[] Counts { get; set; }
public virtual void Validate()
{
if (Counts == null)
{
throw new System.Exception("Property 'Counts' is required/");
}
if (this.Counts != null)
{
foreach (var element in this.Counts)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DailySession
{
public DailySession() { }
/// <summary>
/// Gets or sets the ISO 8601 datetime
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "datetime")]
public string Datetime { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class ReleaseDailySessions
{
public ReleaseDailySessions() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "totalSessionCounts")]
public long? TotalSessionCounts { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "avgSessionsPerDay")]
public double? AvgSessionsPerDay { get; set; }
/// <summary>
/// Gets or sets sessions per day
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sessions")]
public DailySession[] Sessions { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DateTimeDownloadReleaseCount
{
public DateTimeDownloadReleaseCount() { }
/// <summary>
/// Gets or sets the ISO 8601 datetime
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "datetime")]
public string Datetime { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public long? Total { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "unique")]
public long? Unique { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DateTimeDownloadReleaseCounts
{
public DateTimeDownloadReleaseCounts() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public long? Total { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "unique")]
public long? Unique { get; set; }
/// <summary>
/// Gets or sets release Counts per day
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "counts")]
public DateTimeDownloadReleaseCount[] Counts { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Device characteristics.
/// </summary>
public partial class LogFlowDevice
{
public LogFlowDevice() { }
/// <summary>
/// Gets or sets name of the SDK. Consists of the name of the SDK and
/// the platform, e.g. "appcenter.ios", "hockeysdk.android".
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sdk_name")]
public string SdkName { get; set; }
/// <summary>
/// Gets or sets version of the SDK in semver format, e.g. "1.2.0" or
/// "0.12.3-alpha.1".
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "sdk_version")]
public string SdkVersion { get; set; }
/// <summary>
/// Gets or sets version of the wrapper SDK in semver format. When the
/// SDK is embedding another base SDK (for example Xamarin.Android
/// wraps Android), the Xamarin specific version is populated into this
/// field while sdkVersion refers to the original Android SDK.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "wrapper_sdk_version")]
public string WrapperSdkVersion { get; set; }
/// <summary>
/// Gets or sets name of the wrapper SDK. Consists of the name of the
/// SDK and the wrapper platform, e.g. "appcenter.xamarin",
/// "hockeysdk.cordova".
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "wrapper_sdk_name")]
public string WrapperSdkName { get; set; }
/// <summary>
/// Gets or sets device model (example: iPad2,3).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "model")]
public string Model { get; set; }
/// <summary>
/// Gets or sets device manufacturer (example: HTC).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "oem_name")]
public string OemName { get; set; }
/// <summary>
/// Gets or sets OS name (example: iOS). The following OS names are
/// standardized (non-exclusive): Android, iOS, macOS, tvOS, Windows.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_name")]
public string OsName { get; set; }
/// <summary>
/// Gets or sets OS version (example: 9.3.0).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_version")]
public string OsVersion { get; set; }
/// <summary>
/// Gets or sets OS build code (example: LMY47X).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_build")]
public string OsBuild { get; set; }
/// <summary>
/// Gets or sets API level when applicable like in Android (example:
/// 15).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os_api_level")]
public int? OsApiLevel { get; set; }
/// <summary>
/// Gets or sets language code (example: en_US).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "locale")]
public string Locale { get; set; }
/// <summary>
/// Gets or sets the offset in minutes from UTC for the device time
/// zone, including daylight savings time.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "time_zone_offset")]
public int TimeZoneOffset { get; set; }
/// <summary>
/// Gets or sets screen size of the device in pixels (example:
/// 640x480).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "screen_size")]
public string ScreenSize { get; set; }
/// <summary>
/// Gets or sets application version name, e.g. 1.1.0
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_version")]
public string AppVersion { get; set; }
/// <summary>
/// Gets or sets carrier name (for mobile devices).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "carrier_name")]
public string CarrierName { get; set; }
/// <summary>
/// Gets or sets carrier country code (for mobile devices).
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "carrier_code")]
public string CarrierCode { get; set; }
/// <summary>
/// Gets or sets carrier country.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "carrier_country")]
public string CarrierCountry { get; set; }
/// <summary>
/// Gets or sets the app's build number, e.g. 42.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_build")]
public string AppBuild { get; set; }
/// <summary>
/// Gets or sets the bundle identifier, package identifier, or
/// namespace, depending on what the individual plattforms use, .e.g
/// com.microsoft.example.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_namespace")]
public string AppNamespace { get; set; }
/// <summary>
/// Gets or sets label that is used to identify application code
/// 'version' released via Live Update beacon running on device
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "live_update_release_label")]
public string LiveUpdateReleaseLabel { get; set; }
/// <summary>
/// Gets or sets identifier of environment that current application
/// release belongs to, deployment key then maps to environment like
/// Production, Staging.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "live_update_deployment_key")]
public string LiveUpdateDeploymentKey { get; set; }
/// <summary>
/// Gets or sets hash of all files (ReactNative or Cordova) deployed to
/// device via LiveUpdate beacon. Helps identify the Release version on
/// device or need to download updates in future.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "live_update_package_hash")]
public string LiveUpdatePackageHash { get; set; }
/// <summary>
/// Gets or sets version of the wrapper technology framework (Xamarin
/// runtime version or ReactNative or Cordova etc...). See
/// wrapper_sdk_name to see if this version refers to Xamarin or
/// ReactNative or other.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "wrapper_runtime_version")]
public string WrapperRuntimeVersion { get; set; }
public virtual void Validate()
{
if (SdkName == null)
{
throw new System.Exception("Property 'SdkName' is required/");
}
if (SdkVersion == null)
{
throw new System.Exception("Property 'SdkVersion' is required/");
}
if (OsName == null)
{
throw new System.Exception("Property 'OsName' is required/");
}
if (OsVersion == null)
{
throw new System.Exception("Property 'OsVersion' is required/");
}
if (Locale == null)
{
throw new System.Exception("Property 'Locale' is required/");
}
if (AppVersion == null)
{
throw new System.Exception("Property 'AppVersion' is required/");
}
if (AppBuild == null)
{
throw new System.Exception("Property 'AppBuild' is required/");
}
if (this.TimeZoneOffset > 840)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'TimeZoneOffset', 840");
}
if (this.TimeZoneOffset < -840)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'TimeZoneOffset', -840");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class LogFlowLog
{
public LogFlowLog() { }
/// <summary>
/// Gets or sets log creation timestamp.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "timestamp")]
public System.DateTime Timestamp { get; set; }
/// <summary>
/// Gets or sets install ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "install_id")]
public System.Guid InstallId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device")]
public LogFlowDevice Device { get; set; }
public virtual void Validate()
{
if (Device == null)
{
throw new System.Exception("Property 'Device' is required/");
}
if (this.Device != null)
{
this.Device.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class LogFlowLogContainer
{
public LogFlowLogContainer() { }
/// <summary>
/// Gets or sets indicates if the number of available logs are more
/// than the max allowed return limit(100).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exceeded_max_limit")]
public bool? ExceededMaxLimit { get; set; }
/// <summary>
/// Gets or sets the timestamp of the last log received. This value can
/// be used as the start time parameter in the consecutive API call.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "last_received_log_timestamp")]
public System.DateTime? LastReceivedLogTimestamp { get; set; }
/// <summary>
/// Gets or sets the list of logs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "logs")]
public LogFlowLog[] Logs { get; set; }
public virtual void Validate()
{
if (Logs == null)
{
throw new System.Exception("Property 'Logs' is required/");
}
if (this.Logs != null)
{
if (this.Logs.Length < 0)
{
throw new System.Exception("Validation Failed: MinItems, 'Logs', 0");
}
foreach (var element in this.Logs)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Generic log.
/// </summary>
public partial class LogFlowGenericLog
{
public LogFlowGenericLog() { }
/// <summary>
/// Gets or sets log type.
/// . Possible values include: 'event', 'page', 'start_session',
/// 'error', 'push_installation', 'start_service', 'custom_properties'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public LogFlowGenericLogType Type { get; set; }
/// <summary>
/// Gets or sets log creation timestamp.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "timestamp")]
public System.DateTime Timestamp { get; set; }
/// <summary>
/// Gets or sets install ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "install_id")]
public System.Guid InstallId { get; set; }
/// <summary>
/// Gets or sets session ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "session_id")]
public System.Guid? SessionId { get; set; }
/// <summary>
/// Gets or sets event ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "event_id")]
public string EventId { get; set; }
/// <summary>
/// Gets or sets event name.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "event_name")]
public string EventName { get; set; }
/// <summary>
/// Gets or sets message ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message_id")]
public string MessageId { get; set; }
/// <summary>
/// Gets or sets event specific properties.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "properties")]
public System.Collections.Generic.Dictionary<string, string> Properties { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device")]
public LogFlowDevice Device { get; set; }
public virtual void Validate()
{
if (Device == null)
{
throw new System.Exception("Property 'Device' is required/");
}
if (this.Device != null)
{
this.Device.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class LogFlowGenericLogContainer
{
public LogFlowGenericLogContainer() { }
/// <summary>
/// Gets or sets indicates if the number of available logs are more
/// than the max allowed return limit(100).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exceeded_max_limit")]
public bool? ExceededMaxLimit { get; set; }
/// <summary>
/// Gets or sets the timestamp of the last log received. This value can
/// be used as the start time parameter in the consecutive API call.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "last_received_log_timestamp")]
public System.DateTime? LastReceivedLogTimestamp { get; set; }
/// <summary>
/// Gets or sets the list of logs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "logs")]
public LogFlowGenericLog[] Logs { get; set; }
public virtual void Validate()
{
if (Logs == null)
{
throw new System.Exception("Property 'Logs' is required/");
}
if (this.Logs != null)
{
if (this.Logs.Length < 0)
{
throw new System.Exception("Validation Failed: MinItems, 'Logs', 0");
}
foreach (var element in this.Logs)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class LogFlowLogWithProperties : LogFlowLog
{
public LogFlowLogWithProperties() { }
/// <summary>
/// Gets or sets additional key/value pair parameters.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "properties")]
public System.Collections.Generic.Dictionary<string, string> Properties { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Required explicit begin session log (a marker event for analytics
/// service).
/// </summary>
[Newtonsoft.Json.JsonObject("start_session")]
public partial class LogFlowStartSessionLog : LogFlowLog
{
public LogFlowStartSessionLog() { }
/// <summary>
/// Gets or sets session ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "session_id")]
public System.Guid SessionId { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Describe a AppCenter.Start API call from the SDK.
/// </summary>
[Newtonsoft.Json.JsonObject("start_service")]
public partial class LogFlowStartServiceLog : LogFlowLog
{
public LogFlowStartServiceLog() { }
/// <summary>
/// Gets or sets the list of services of the AppCenter Start API call.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "services")]
public string[] Services { get; set; }
public override void Validate()
{
base.Validate();
if (this.Services != null)
{
if (this.Services.Length < 1)
{
throw new System.Exception("Validation Failed: MinItems, 'Services', 1");
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class LogFlowCustomProperty
{
public LogFlowCustomProperty() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (this.Name != null)
{
if (this.Name.Length > 128)
{
throw new System.Exception("Validation Failed: MaxLength, 'Name', 128");
}
if (!System.Text.RegularExpressions.Regex.IsMatch(this.Name, "^[a-zA-Z][a-zA-Z0-9\\-_]*$"))
{
throw new System.Exception("Validation Failed: Pattern, 'Name', ^[a - zA - Z][a - zA - Z0 - 9\\-_] * $");
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Set or remove custom properties.
/// </summary>
[Newtonsoft.Json.JsonObject("custom_properties")]
public partial class LogFlowCustomPropertyLog : LogFlowLog
{
public LogFlowCustomPropertyLog() { }
/// <summary>
/// Gets or sets custom property changes.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "properties")]
public LogFlowCustomProperty[] Properties { get; set; }
public override void Validate()
{
base.Validate();
if (this.Properties != null)
{
if (this.Properties.Length > 60)
{
throw new System.Exception("Validation Failed: MaxItems, 'Properties', 60");
}
if (this.Properties.Length < 1)
{
throw new System.Exception("Validation Failed: MinItems, 'Properties', 1");
}
foreach (var element in this.Properties)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// String property.
/// </summary>
[Newtonsoft.Json.JsonObject("string")]
public partial class LogFlowStringProperty : LogFlowCustomProperty
{
public LogFlowStringProperty() { }
/// <summary>
/// Gets or sets string property value.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public string Value { get; set; }
public override void Validate()
{
base.Validate();
if (Value == null)
{
throw new System.Exception("Property 'Value' is required/");
}
if (this.Value != null)
{
if (this.Value.Length > 128)
{
throw new System.Exception("Validation Failed: MaxLength, 'Value', 128");
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Number property.
/// </summary>
[Newtonsoft.Json.JsonObject("number")]
public partial class LogFlowNumberProperty : LogFlowCustomProperty
{
public LogFlowNumberProperty() { }
/// <summary>
/// Gets or sets number property value.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public double Value { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Boolean property.
/// </summary>
[Newtonsoft.Json.JsonObject("boolean")]
public partial class LogFlowBooleanProperty : LogFlowCustomProperty
{
public LogFlowBooleanProperty() { }
/// <summary>
/// Gets or sets boolean property value.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public bool Value { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Date and time property.
/// </summary>
[Newtonsoft.Json.JsonObject("date_time")]
public partial class LogFlowDateTimeProperty : LogFlowCustomProperty
{
public LogFlowDateTimeProperty() { }
/// <summary>
/// Gets or sets date time property value.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public System.DateTime Value { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Clear an existing property.
/// </summary>
[Newtonsoft.Json.JsonObject("clear")]
public partial class LogFlowClearProperty : LogFlowCustomProperty
{
public LogFlowClearProperty() { }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Page view log (as in screens or activities).
/// </summary>
[Newtonsoft.Json.JsonObject("page")]
public partial class LogFlowPageLog : LogFlowLogWithProperties
{
public LogFlowPageLog() { }
/// <summary>
/// Gets or sets session ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "session_id")]
public System.Guid SessionId { get; set; }
/// <summary>
/// Gets or sets name of the page.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public override void Validate()
{
base.Validate();
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Event log.
/// </summary>
[Newtonsoft.Json.JsonObject("event")]
public partial class LogFlowEventLog : LogFlowLogWithProperties
{
public LogFlowEventLog() { }
/// <summary>
/// Gets or sets session ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "session_id")]
public System.Guid SessionId { get; set; }
/// <summary>
/// Gets or sets unique identifier for this event.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public System.Guid Id { get; set; }
/// <summary>
/// Gets or sets name of the event.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public override void Validate()
{
base.Validate();
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Push installation Information.
/// </summary>
[Newtonsoft.Json.JsonObject("push_installation")]
public partial class LogFlowPushInstallationLog : LogFlowLog
{
public LogFlowPushInstallationLog() { }
/// <summary>
/// Gets or sets the PNS handle for this installation.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "push_token")]
public string PushToken { get; set; }
public override void Validate()
{
base.Validate();
if (PushToken == null)
{
throw new System.Exception("Property 'PushToken' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Error log.
/// </summary>
[Newtonsoft.Json.JsonObject("error")]
public partial class LogFlowErrorLog : LogFlowLog
{
public LogFlowErrorLog() { }
/// <summary>
/// Gets or sets session ID.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "session_id")]
public System.Guid SessionId { get; set; }
/// <summary>
/// Gets or sets error identifier.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public System.Guid Id { get; set; }
/// <summary>
/// Gets or sets corresponds to the number of milliseconds elapsed
/// between the time the error occurred and the app was launched.
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_launch_toffset")]
public long? AppLaunchToffset { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Export configuration
/// </summary>
public partial class ExportConfiguration
{
public ExportConfiguration() { }
/// <summary>
/// Gets or sets the resource name on azure
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "resource_name")]
public string ResourceName { get; set; }
/// <summary>
/// Gets or sets the resource group name on azure
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "resource_group")]
public string ResourceGroup { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Configuration for export to Blob Storage with customer provided
/// connection string
/// </summary>
[Newtonsoft.Json.JsonObject("blob_storage_connection_string")]
public partial class ExportConfigurationBlobStorageConnectionString : ExportConfiguration
{
public ExportConfigurationBlobStorageConnectionString() { }
/// <summary>
/// Gets or sets connection string for blob storage account
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "connection_string")]
public string ConnectionString { get; set; }
public virtual void Validate()
{
if (ConnectionString == null)
{
throw new System.Exception("Property 'ConnectionString' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Configuration for export to Application Insights resource with customer
/// provided intrumentation key
/// </summary>
[Newtonsoft.Json.JsonObject("application_insights_instrumentation_key")]
public partial class ExportConfigurationAppInsightsKey : ExportConfiguration
{
public ExportConfigurationAppInsightsKey() { }
/// <summary>
/// Gets or sets instrumentation key for Application Insights resource
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "instrumentation_key")]
public string InstrumentationKey { get; set; }
public virtual void Validate()
{
if (InstrumentationKey == null)
{
throw new System.Exception("Property 'InstrumentationKey' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Configuration for export to Blob Storage with customer linked
/// subscription.
/// </summary>
[Newtonsoft.Json.JsonObject("blob_storage_linked_subscription")]
public partial class ExportConfigurationBlobStorageLinkedSubscription : ExportConfiguration
{
public ExportConfigurationBlobStorageLinkedSubscription() { }
/// <summary>
/// Gets or sets id of customer subscription linked in App Center
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "subscription_id")]
public string SubscriptionId { get; set; }
public virtual void Validate()
{
if (SubscriptionId == null)
{
throw new System.Exception("Property 'SubscriptionId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Configuration for export to Application Insights resource with customer
/// linked subscription.
/// </summary>
[Newtonsoft.Json.JsonObject("application_insights_linked_subscription")]
public partial class ExportConfigurationAppInsightsLinkedSubscription : ExportConfiguration
{
public ExportConfigurationAppInsightsLinkedSubscription() { }
/// <summary>
/// Gets or sets id of customer subscription linked in App Center
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "subscription_id")]
public string SubscriptionId { get; set; }
public virtual void Validate()
{
if (SubscriptionId == null)
{
throw new System.Exception("Property 'SubscriptionId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Export configuration result
/// </summary>
public partial class ExportConfigurationResult
{
public ExportConfigurationResult() { }
/// <summary>
/// Gets or sets export configuration id
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets target resource type of export configuration. Possible
/// values include: 'BlobStorage', 'AppInsights'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "export_type")]
public ExportType ExportType { get; set; }
/// <summary>
/// Gets or sets creation time in ISO 8601 format
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "creation_time")]
public string CreationTime { get; set; }
/// <summary>
/// Gets or sets latest time in ISO 8601 format when export completed
/// successfully
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "last_run_time")]
public string LastRunTime { get; set; }
/// <summary>
/// Gets or sets state of the export job. Possible values include:
/// 'Enabled', 'Disabled', 'Pending', 'Deleted', 'Invalid'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state")]
public ExportState State { get; set; }
/// <summary>
/// Gets or sets additional information about export configuration
/// state
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state_info")]
public string StateInfo { get; set; }
/// <summary>
/// Gets or sets resource group for the storage account/App Insights
/// resource
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "resource_group")]
public string ResourceGroup { get; set; }
/// <summary>
/// Gets or sets storage accout or Appinsights resource name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "resource_name")]
public string ResourceName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "export_configuration")]
public ExportConfiguration ExportConfiguration { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (CreationTime == null)
{
throw new System.Exception("Property 'CreationTime' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// List of export configurations
/// </summary>
public partial class ExportConfigurationListResult
{
public ExportConfigurationListResult() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "values")]
public ExportConfigurationResult[] Values { get; set; }
/// <summary>
/// Gets or sets the total count of exports
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public long? Total { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "nextLink")]
public string NextLink { get; set; }
public virtual void Validate()
{
if (Values == null)
{
throw new System.Exception("Property 'Values' is required/");
}
if (this.Values != null)
{
foreach (var element in this.Values)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Generic notification target.
/// </summary>
public partial class NotificationTarget
{
public NotificationTarget() { }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Notification statistics
/// </summary>
public partial class NotificationOverviewResult
{
public NotificationOverviewResult() { }
/// <summary>
/// Gets or sets notification id.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "notification_id")]
public string NotificationId { get; set; }
/// <summary>
/// Gets or sets notification name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "notification_target")]
public NotificationTarget NotificationTarget { get; set; }
/// <summary>
/// Gets or sets notification send time
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "send_time")]
public System.DateTime? SendTime { get; set; }
/// <summary>
/// Gets or sets number of the notifications failed to send to the push
/// provider.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "pns_send_failure")]
public int? PnsSendFailure { get; set; }
/// <summary>
/// Gets or sets number of the notifications successfully sent to push
/// the provider.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "pns_send_success")]
public int? PnsSendSuccess { get; set; }
/// <summary>
/// Gets or sets state of the notification. Possible values include:
/// 'Cancelled', 'Completed', 'Enqueued', 'Processing', 'Unknown'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state")]
public string State { get; set; }
public virtual void Validate()
{
if (NotificationId == null)
{
throw new System.Exception("Property 'NotificationId' is required/");
}
if (State == null)
{
throw new System.Exception("Property 'State' is required/");
}
if (this.Name != null)
{
if (this.Name.Length > 64)
{
throw new System.Exception("Validation Failed: MaxLength, 'Name', 64");
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// List of notifications
/// </summary>
public partial class NotificationsListResult
{
public NotificationsListResult() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "values")]
public NotificationOverviewResult[] Values { get; set; }
/// <summary>
/// Gets or sets the total count of notifications
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public long? Total { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "nextLink")]
public string NextLink { get; set; }
public virtual void Validate()
{
if (Values == null)
{
throw new System.Exception("Property 'Values' is required/");
}
if (this.Values != null)
{
foreach (var element in this.Values)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Notification definition object
/// </summary>
public partial class NotificationContent
{
public NotificationContent() { }
/// <summary>
/// Gets or sets notification name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets notification title
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "title")]
public string Title { get; set; }
/// <summary>
/// Gets or sets notification body
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "body")]
public string Body { get; set; }
/// <summary>
/// Gets or sets notification custom data(priority, expiration, etc.)
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "custom_data")]
public System.Collections.Generic.Dictionary<string, string> CustomData { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (Body == null)
{
throw new System.Exception("Property 'Body' is required/");
}
if (this.Name != null)
{
if (this.Name.Length > 64)
{
throw new System.Exception("Validation Failed: MaxLength, 'Name', 64");
}
if (this.Name.Length < 3)
{
throw new System.Exception("Validation Failed: MinLength, 'Name', 3");
}
}
if (this.Title != null)
{
if (this.Title.Length > 128)
{
throw new System.Exception("Validation Failed: MaxLength, 'Title', 128");
}
}
if (this.Body != null)
{
if (this.Body.Length > 4000)
{
throw new System.Exception("Validation Failed: MaxLength, 'Body', 4000");
}
if (this.Body.Length < 1)
{
throw new System.Exception("Validation Failed: MinLength, 'Body', 1");
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Notification failure outcome count
/// </summary>
public partial class NotificationFailureOutcomeCount
{
public NotificationFailureOutcomeCount() { }
/// <summary>
/// Gets or sets the reason of the notification failure
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "failure_reason")]
public string FailureReason { get; set; }
/// <summary>
/// Gets or sets count of this type of failure
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public long? Count { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Notification statistics
/// </summary>
public partial class NotificationDetailsResult : NotificationOverviewResult
{
public NotificationDetailsResult() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "notification_content")]
public NotificationContent NotificationContent { get; set; }
/// <summary>
/// Gets or sets failture outcome counts
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "failure_outcomes")]
public NotificationFailureOutcomeCount[] FailureOutcomes { get; set; }
public override void Validate()
{
base.Validate();
if (NotificationContent == null)
{
throw new System.Exception("Property 'NotificationContent' is required/");
}
if (this.NotificationContent != null)
{
this.NotificationContent.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// List of notification Ids
/// </summary>
public partial class NotificationIdList
{
public NotificationIdList() { }
/// <summary>
/// Gets or sets list of notification Ids.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "values")]
public string[] Values { get; set; }
public virtual void Validate()
{
if (Values == null)
{
throw new System.Exception("Property 'Values' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Notification definition object
/// </summary>
public partial class NotificationDefinition
{
public NotificationDefinition() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "notification_target")]
public NotificationTarget NotificationTarget { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "notification_content")]
public NotificationContent NotificationContent { get; set; }
public virtual void Validate()
{
if (NotificationContent == null)
{
throw new System.Exception("Property 'NotificationContent' is required/");
}
if (this.NotificationContent != null)
{
this.NotificationContent.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Notification send succeeded.
/// </summary>
public partial class NotificationSendSucceededResult
{
public NotificationSendSucceededResult() { }
/// <summary>
/// Gets or sets the unique notification identifier.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "notification_id")]
public string NotificationId { get; set; }
public virtual void Validate()
{
if (NotificationId == null)
{
throw new System.Exception("Property 'NotificationId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Notification target audiences.
/// </summary>
[Newtonsoft.Json.JsonObject("audiences_target")]
public partial class NotificationTargetAudiences : NotificationTarget
{
public NotificationTargetAudiences() { }
/// <summary>
/// Gets or sets list of target audiences.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "audiences")]
public string[] Audiences { get; set; }
public virtual void Validate()
{
if (Audiences == null)
{
throw new System.Exception("Property 'Audiences' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Notification target devices. If null, all devices will be
/// targeted(broadcast).
/// </summary>
[Newtonsoft.Json.JsonObject("devices_target")]
public partial class NotificationTargetDevices : NotificationTarget
{
public NotificationTargetDevices() { }
/// <summary>
/// Gets or sets list of target devices.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devices")]
public System.Guid?[] Devices { get; set; }
public virtual void Validate()
{
if (Devices == null)
{
throw new System.Exception("Property 'Devices' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Generic notification configuration.
/// </summary>
public partial class NotificationConfig
{
public NotificationConfig() { }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple notification certificate configuration.
/// </summary>
[Newtonsoft.Json.JsonObject("apns_config")]
public partial class NotificationConfigApple : NotificationConfig
{
public NotificationConfigApple() { }
/// <summary>
/// Gets or sets possible values include: 'production', 'sandbox'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "endpoint_type")]
public string EndpointType { get; set; }
/// <summary>
/// Gets or sets base64 encoded certificate string.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "cert_encoded")]
public string CertEncoded { get; set; }
/// <summary>
/// Gets or sets certificate file name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "cert_filename")]
public string CertFilename { get; set; }
/// <summary>
/// Gets or sets certificate password
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "cert_key")]
public string CertKey { get; set; }
public virtual void Validate()
{
if (EndpointType == null)
{
throw new System.Exception("Property 'EndpointType' is required/");
}
if (CertEncoded == null)
{
throw new System.Exception("Property 'CertEncoded' is required/");
}
if (CertFilename == null)
{
throw new System.Exception("Property 'CertFilename' is required/");
}
if (CertKey == null)
{
throw new System.Exception("Property 'CertKey' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple notification auth token configuration.
/// </summary>
[Newtonsoft.Json.JsonObject("apns_token_config")]
public partial class NotificationConfigAppleToken : NotificationConfig
{
public NotificationConfigAppleToken() { }
/// <summary>
/// Gets or sets a 10-character key identifier (kid).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "key_id")]
public string KeyId { get; set; }
/// <summary>
/// Gets or sets application ID.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets application prefix.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "prefix")]
public string Prefix { get; set; }
/// <summary>
/// Gets or sets provider Authentication Token.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "token")]
public string Token { get; set; }
/// <summary>
/// Gets or sets possible values include: 'production', 'sandbox'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "endpoint_type")]
public string EndpointType { get; set; }
public virtual void Validate()
{
if (KeyId == null)
{
throw new System.Exception("Property 'KeyId' is required/");
}
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (Prefix == null)
{
throw new System.Exception("Property 'Prefix' is required/");
}
if (Token == null)
{
throw new System.Exception("Property 'Token' is required/");
}
if (EndpointType == null)
{
throw new System.Exception("Property 'EndpointType' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Google notification configuration.
/// </summary>
[Newtonsoft.Json.JsonObject("gcm_config")]
public partial class NotificationConfigGoogle : NotificationConfig
{
public NotificationConfigGoogle() { }
/// <summary>
/// Gets or sets GCM API key.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "google_api_key")]
public string GoogleApiKey { get; set; }
public virtual void Validate()
{
if (GoogleApiKey == null)
{
throw new System.Exception("Property 'GoogleApiKey' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// WNS notification configuration.
/// </summary>
[Newtonsoft.Json.JsonObject("wns_config")]
public partial class NotificationConfigWindows : NotificationConfig
{
public NotificationConfigWindows() { }
/// <summary>
/// Gets or sets package security identifier (SID).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "package_sid")]
public string PackageSid { get; set; }
/// <summary>
/// Gets or sets secret key.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "secret_key")]
public string SecretKey { get; set; }
public virtual void Validate()
{
if (PackageSid == null)
{
throw new System.Exception("Property 'PackageSid' is required/");
}
if (SecretKey == null)
{
throw new System.Exception("Property 'SecretKey' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Generic notification configuration result.
/// </summary>
public partial class NotificationConfigResult
{
public NotificationConfigResult() { }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple notification certificate configuration result.
/// </summary>
[Newtonsoft.Json.JsonObject("apns_config")]
public partial class NotificationConfigAppleResult : NotificationConfigResult
{
public NotificationConfigAppleResult() { }
/// <summary>
/// Gets or sets possible values include: 'production', 'sandbox'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "endpoint_type")]
public string EndpointType { get; set; }
/// <summary>
/// Gets or sets certificate expiration date.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "cert_expiration")]
public System.DateTime CertExpiration { get; set; }
/// <summary>
/// Gets or sets certificate file name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "cert_filename")]
public string CertFilename { get; set; }
public virtual void Validate()
{
if (EndpointType == null)
{
throw new System.Exception("Property 'EndpointType' is required/");
}
if (CertFilename == null)
{
throw new System.Exception("Property 'CertFilename' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Apple notification auth token configuration result.
/// </summary>
[Newtonsoft.Json.JsonObject("apns_token_config")]
public partial class NotificationConfigAppleTokenResult : NotificationConfigResult
{
public NotificationConfigAppleTokenResult() { }
/// <summary>
/// Gets or sets a 10-character key identifier (kid).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "key_id")]
public string KeyId { get; set; }
/// <summary>
/// Gets or sets application ID.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets application Prefix.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "prefix")]
public string Prefix { get; set; }
/// <summary>
/// Gets or sets possible values include: 'production', 'sandbox'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "endpoint_type")]
public string EndpointType { get; set; }
public virtual void Validate()
{
if (KeyId == null)
{
throw new System.Exception("Property 'KeyId' is required/");
}
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (Prefix == null)
{
throw new System.Exception("Property 'Prefix' is required/");
}
if (EndpointType == null)
{
throw new System.Exception("Property 'EndpointType' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Google notification configuration result.
/// </summary>
[Newtonsoft.Json.JsonObject("gcm_config")]
public partial class NotificationConfigGoogleResult : NotificationConfigResult
{
public NotificationConfigGoogleResult() { }
/// <summary>
/// Gets or sets GCM API key.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "google_api_key")]
public string GoogleApiKey { get; set; }
public virtual void Validate()
{
if (GoogleApiKey == null)
{
throw new System.Exception("Property 'GoogleApiKey' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// WNS notification configuration result.
/// </summary>
[Newtonsoft.Json.JsonObject("wns_config")]
public partial class NotificationConfigWindowsResult : NotificationConfigResult
{
public NotificationConfigWindowsResult() { }
/// <summary>
/// Gets or sets package security identifier (SID).
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "package_sid")]
public string PackageSid { get; set; }
/// <summary>
/// Gets or sets windows push configuration secret key.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "secret_key")]
public string SecretKey { get; set; }
public virtual void Validate()
{
if (PackageSid == null)
{
throw new System.Exception("Property 'PackageSid' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DeviceConfigurationImage
{
public DeviceConfigurationImage() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "full")]
public string Full { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "thumb")]
public string Thumb { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Physical device dimensions
/// </summary>
public partial class DeviceDimensions
{
public DeviceDimensions() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "depth")]
public object Depth { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "height")]
public object Height { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "width")]
public object Width { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Device screen resolution
/// </summary>
public partial class DeviceResolution
{
public DeviceResolution() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "height")]
public string Height { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "width")]
public string Width { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "ppi")]
public string Ppi { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Physical device screen dimensions
/// </summary>
public partial class DeviceScreenSize
{
public DeviceScreenSize() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "cm")]
public string Cm { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "in")]
public string InProperty { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// CPU data for device
/// </summary>
public partial class DeviceCpu
{
public DeviceCpu() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "frequency")]
public string Frequency { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "core")]
public string Core { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Memory data for device
/// </summary>
public partial class DeviceMemory
{
public DeviceMemory() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "formattedSize")]
public string FormattedSize { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DeviceFrameDefinition
{
public DeviceFrameDefinition() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "width")]
public double? Width { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "height")]
public double? Height { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "frameUrl")]
public string FrameUrl { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "screen")]
public double?[] Screen { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DeviceFrame
{
public DeviceFrame() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "grid")]
public DeviceFrameDefinition Grid { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "full")]
public DeviceFrameDefinition Full { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DeviceModel
{
public DeviceModel() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "manufacturer")]
public string Manufacturer { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "model")]
public string Model { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public string Platform { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "dimensions")]
public DeviceDimensions Dimensions { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "resolution")]
public DeviceResolution Resolution { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "releaseDate")]
public string ReleaseDate { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "formFactor")]
public string FormFactor { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "screenSize")]
public DeviceScreenSize ScreenSize { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "cpu")]
public DeviceCpu Cpu { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "memory")]
public DeviceMemory Memory { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "screenRotation")]
public double? ScreenRotation { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "deviceFrame")]
public DeviceFrame DeviceFrame { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "availabilityCount")]
public double? AvailabilityCount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DeviceConfiguration
{
public DeviceConfiguration() { }
/// <summary>
/// Gets or sets the name of the device model and OS version
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets the unique id of the device configuration
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public System.Guid? Id { get; set; }
/// <summary>
/// Gets or sets the tier
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tier")]
public double? Tier { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "image")]
public DeviceConfigurationImage Image { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "model")]
public DeviceModel Model { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os")]
public string Os { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "osName")]
public string OsName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "marketShare")]
public double? MarketShare { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DeviceSetConfigurationImage
{
public DeviceSetConfigurationImage() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "thumb")]
public string Thumb { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DeviceSetModel
{
public DeviceSetModel() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "manufacturer")]
public string Manufacturer { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "releaseDate")]
public string ReleaseDate { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "formFactor")]
public string FormFactor { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DeviceSetConfiguration
{
public DeviceSetConfiguration() { }
/// <summary>
/// Gets or sets the unique id of the device configuration
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public System.Guid? Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "image")]
public DeviceSetConfigurationImage Image { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "model")]
public DeviceSetModel Model { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os")]
public string Os { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "osName")]
public string OsName { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Test Run Statistics
/// </summary>
/// <remarks>
/// Summary single test run on Xamarin Test Cloud
/// </remarks>
public partial class TestRunStatistics
{
public TestRunStatistics() { }
/// <summary>
/// Gets or sets number of devices running the test
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devices")]
public double? Devices { get; set; }
/// <summary>
/// Gets or sets number of finished devices
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devicesFinished")]
public double? DevicesFinished { get; set; }
/// <summary>
/// Gets or sets number of failed devices
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devicesFailed")]
public double? DevicesFailed { get; set; }
/// <summary>
/// Gets or sets number of tests in total
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public double? Total { get; set; }
/// <summary>
/// Gets or sets number of passed tests
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "passed")]
public double? Passed { get; set; }
/// <summary>
/// Gets or sets number of failed tests
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "failed")]
public double? Failed { get; set; }
/// <summary>
/// Gets or sets number of skipped tests
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "skipped")]
public double? Skipped { get; set; }
/// <summary>
/// Gets or sets the max amount of MB used during the test run
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "peakMemory")]
public double? PeakMemory { get; set; }
/// <summary>
/// Gets or sets the number of minutes of device time the test has been
/// runnign
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "totalDeviceMinutes")]
public double? TotalDeviceMinutes { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Test Run
/// </summary>
/// <remarks>
/// Summary single test run on Xamarin Test Cloud
/// </remarks>
public partial class TestRun
{
public TestRun() { }
/// <summary>
/// Gets or sets the unique id of the test upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public System.Guid? Id { get; set; }
/// <summary>
/// Gets or sets the date and time the test was uploaded
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "date")]
public string Date { get; set; }
/// <summary>
/// Gets or sets the compiled version of the app binary
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appVersion")]
public string AppVersion { get; set; }
/// <summary>
/// Gets or sets the name of the test series with which this test
/// upload is associated
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "testSeries")]
public string TestSeries { get; set; }
/// <summary>
/// Gets or sets the device platform targeted by the test. Possible
/// values are 'ios' or 'android'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public string Platform { get; set; }
/// <summary>
/// Gets or sets the current status of the test run, in relation to the
/// various phases
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "runStatus")]
public string RunStatus { get; set; }
/// <summary>
/// Gets or sets the passed/failed state
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "resultStatus")]
public string ResultStatus { get; set; }
/// <summary>
/// Gets or sets deprecated. Use runStatus instead.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state")]
public string State { get; set; }
/// <summary>
/// Gets or sets deprecated. Use resultStatus instead.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets human readable explanation of the current test status
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "stats")]
public TestRunStatistics Stats { get; set; }
/// <summary>
/// Gets or sets the name of the test framework used to run this test
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "testType")]
public string TestType { get; set; }
/// <summary>
/// Gets or sets the name of the user who uploaded the test
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploadedBy")]
public string UploadedBy { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Test Run Summary
/// </summary>
/// <remarks>
/// Most important information about a test run.
/// </remarks>
public partial class TestRunSummary
{
public TestRunSummary() { }
/// <summary>
/// Gets or sets date of the test run.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "date")]
public string Date { get; set; }
/// <summary>
/// Gets or sets human-readable status of the test run.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "statusDescription")]
public string StatusDescription { get; set; }
/// <summary>
/// Gets or sets number of failed tests
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "failed")]
public double? Failed { get; set; }
/// <summary>
/// Gets or sets number of passed tests
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "passed")]
public double? Passed { get; set; }
/// <summary>
/// Gets or sets tells whether the test run has completed
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "completed")]
public bool? Completed { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Test Series
/// </summary>
/// <remarks>
/// Summary of a single test series
/// </remarks>
public partial class TestSeries
{
public TestSeries() { }
/// <summary>
/// Gets or sets unique, human-readable identifier of the test series
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "slug")]
public string Slug { get; set; }
/// <summary>
/// Gets or sets name of the test series
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets date of the latest test run that used this test series
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "mostRecentActivity")]
public string MostRecentActivity { get; set; }
/// <summary>
/// Gets or sets most recent test runs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "testRuns")]
public TestRunSummary[] TestRuns { get; set; }
public virtual void Validate()
{
if (Slug == null)
{
throw new System.Exception("Property 'Slug' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Name of the test series
/// </summary>
public partial class TestSeriesName
{
public TestSeriesName() { }
/// <summary>
/// Gets or sets name of the new test series
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Device List
/// </summary>
/// <remarks>
/// A list of device IDs
/// </remarks>
public partial class DeviceList
{
public DeviceList() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devices")]
public string[] Devices { get; set; }
public virtual void Validate()
{
if (Devices == null)
{
throw new System.Exception("Property 'Devices' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Device Selection
/// </summary>
/// <remarks>
/// Short ID for a list of device IDs
/// </remarks>
public partial class DeviceSelection
{
public DeviceSelection() { }
/// <summary>
/// Gets or sets identifier of the device selection
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "shortId")]
public string ShortId { get; set; }
public virtual void Validate()
{
if (ShortId == null)
{
throw new System.Exception("Property 'ShortId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Device Set update information
/// </summary>
/// <remarks>
/// The name of the device set and the list of device IDs
/// </remarks>
public partial class DeviceSetUpdate
{
public DeviceSetUpdate() { }
/// <summary>
/// Gets or sets list of device IDs
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devices")]
public string[] Devices { get; set; }
/// <summary>
/// Gets or sets the name of the device set
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Devices == null)
{
throw new System.Exception("Property 'Devices' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Device Set Owner
/// </summary>
/// <remarks>
/// The owner of a device set
/// </remarks>
public partial class DeviceSetOwner
{
public DeviceSetOwner() { }
/// <summary>
/// Gets or sets type of account
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public string Type { get; set; }
/// <summary>
/// Gets or sets account ID
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets display name of the account
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
/// <summary>
/// Gets or sets name of the account
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Type == null)
{
throw new System.Exception("Property 'Type' is required/");
}
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Device Set
/// </summary>
/// <remarks>
/// The name and devices of the device set
/// </remarks>
public partial class DeviceSet
{
public DeviceSet() { }
/// <summary>
/// Gets or sets identifier of the device set
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets the number of manufacturers in the device set's device
/// selection
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "manufacturerCount")]
public double? ManufacturerCount { get; set; }
/// <summary>
/// Gets or sets name of the device set
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets slug of the device set
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "slug")]
public string Slug { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "owner")]
public DeviceSetOwner Owner { get; set; }
/// <summary>
/// Gets or sets the number of os versions in the device set's device
/// selection
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "osVersionCount")]
public double? OsVersionCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "deviceConfigurations")]
public DeviceSetConfiguration[] DeviceConfigurations { get; set; }
public virtual void Validate()
{
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (Owner == null)
{
throw new System.Exception("Property 'Owner' is required/");
}
if (DeviceConfigurations == null)
{
throw new System.Exception("Property 'DeviceConfigurations' is required/");
}
if (this.Owner != null)
{
this.Owner.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Subscription Tier
/// </summary>
public partial class Tier
{
public Tier() { }
/// <summary>
/// Gets or sets the name of the tier
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Subscription
/// </summary>
/// <remarks>
/// Subscription information
/// </remarks>
public partial class Subscription
{
public Subscription() { }
/// <summary>
/// Gets or sets the date the subscription began
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "startsAt")]
public string StartsAt { get; set; }
/// <summary>
/// Gets or sets the date the subscription will end or ended
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "endsAt")]
public string EndsAt { get; set; }
/// <summary>
/// Gets or sets the number of days left in the subscription
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "daysLeft")]
public double? DaysLeft { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tier")]
public Tier Tier { get; set; }
/// <summary>
/// Gets or sets is the subscription currently active?
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "active")]
public bool? Active { get; set; }
/// <summary>
/// Gets or sets id of the subscription
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public System.Guid? Id { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TestReportStats
{
public TestReportStats() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "os")]
public double? Os { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devices")]
public double? Devices { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "filesize")]
public double? Filesize { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "totalDeviceMinutes")]
public double? TotalDeviceMinutes { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devices_not_runned")]
public double? DevicesNotRunned { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "failed")]
public double? Failed { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "skipped")]
public double? Skipped { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "passed")]
public double? Passed { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "total")]
public double? Total { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devices_finished")]
public double? DevicesFinished { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devices_failed")]
public double? DevicesFailed { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "devices_skipped")]
public double? DevicesSkipped { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "step_count")]
public double? StepCount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "artifacts")]
public System.Collections.Generic.Dictionary<string, string> Artifacts { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TestReportFeaturesItemTestsItemRunsItemStepsItemStepExecutionsItem
{
public TestReportFeaturesItemTestsItemRunsItemStepsItemStepExecutionsItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_snapshot_id")]
public string DeviceSnapshotId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "timestamp")]
public double? Timestamp { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TestReportFeaturesItemTestsItemRunsItemStepsItem
{
public TestReportFeaturesItemTestsItemRunsItemStepsItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "stepName")]
public string StepName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "stepExecutions")]
public TestReportFeaturesItemTestsItemRunsItemStepsItemStepExecutionsItem[] StepExecutions { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "failed")]
public double? Failed { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "skipped")]
public double? Skipped { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "step_report_url")]
public string StepReportUrl { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TestReportFeaturesItemTestsItemRunsItem
{
public TestReportFeaturesItemTestsItemRunsItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "number")]
public double? Number { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "steps")]
public TestReportFeaturesItemTestsItemRunsItemStepsItem[] Steps { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "failed")]
public double? Failed { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "skipped")]
public double? Skipped { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "report_url")]
public string ReportUrl { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TestReportFeaturesItemTestsItem
{
public TestReportFeaturesItemTestsItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "testName")]
public string TestName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "runs")]
public TestReportFeaturesItemTestsItemRunsItem[] Runs { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "peakMemory")]
public double? PeakMemory { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "peakDuration")]
public double? PeakDuration { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TestReportFeaturesItem
{
public TestReportFeaturesItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "tests")]
public TestReportFeaturesItemTestsItem[] Tests { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "failed")]
public double? Failed { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "skipped")]
public double? Skipped { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "peakMemory")]
public double? PeakMemory { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "peakDuration")]
public double? PeakDuration { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TestReportDeviceLogsItem
{
public TestReportDeviceLogsItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_snapshot_id")]
public string DeviceSnapshotId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_log")]
public string DeviceLog { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "test_log")]
public string TestLog { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appium_log")]
public string AppiumLog { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class TestReport
{
public TestReport() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_upload_id")]
public string AppUploadId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "date")]
public string Date { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "testType")]
public string TestType { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public string Platform { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "stats")]
public TestReportStats Stats { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "schema_version")]
public double SchemaVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "revision")]
public double Revision { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "features")]
public TestReportFeaturesItem[] Features { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "finished_device_snapshots")]
public string[] FinishedDeviceSnapshots { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_logs")]
public TestReportDeviceLogsItem[] DeviceLogs { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "date_finished")]
public string DateFinished { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "errorMessage")]
public string ErrorMessage { get; set; }
public virtual void Validate()
{
if (AppUploadId == null)
{
throw new System.Exception("Property 'AppUploadId' is required/");
}
if (Date == null)
{
throw new System.Exception("Property 'Date' is required/");
}
if (TestType == null)
{
throw new System.Exception("Property 'TestType' is required/");
}
if (Platform == null)
{
throw new System.Exception("Property 'Platform' is required/");
}
if (Stats == null)
{
throw new System.Exception("Property 'Stats' is required/");
}
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
if (Features == null)
{
throw new System.Exception("Property 'Features' is required/");
}
if (FinishedDeviceSnapshots == null)
{
throw new System.Exception("Property 'FinishedDeviceSnapshots' is required/");
}
if (DeviceLogs == null)
{
throw new System.Exception("Property 'DeviceLogs' is required/");
}
if (DateFinished == null)
{
throw new System.Exception("Property 'DateFinished' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class StepReportDeviceScreenshotsItemScreenshotUrls
{
public StepReportDeviceScreenshotsItemScreenshotUrls() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "original")]
public string Original { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "small")]
public string Small { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "medium")]
public string Medium { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "large")]
public string Large { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class StepReportDeviceScreenshotsItemScreenshot
{
public StepReportDeviceScreenshotsItemScreenshot() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "urls")]
public StepReportDeviceScreenshotsItemScreenshotUrls Urls { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "rotation")]
public double? Rotation { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "landscape")]
public bool? Landscape { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class StepReportDeviceScreenshotsItem
{
public StepReportDeviceScreenshotsItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_snapshot_id")]
public string DeviceSnapshotId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "stacktrace")]
public string[] Stacktrace { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_data")]
public string[] CrashData { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "title")]
public string Title { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "screenshot")]
public StepReportDeviceScreenshotsItemScreenshot Screenshot { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "log_file")]
public string LogFile { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appium_log_file")]
public string AppiumLogFile { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class StepReport
{
public StepReport() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "finishedSnapshots")]
public string[] FinishedSnapshots { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "deviceScreenshots")]
public StepReportDeviceScreenshotsItem[] DeviceScreenshots { get; set; }
public virtual void Validate()
{
if (FinishedSnapshots == null)
{
throw new System.Exception("Property 'FinishedSnapshots' is required/");
}
if (DeviceScreenshots == null)
{
throw new System.Exception("Property 'DeviceScreenshots' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Test Cloud Error Details
/// </summary>
/// <remarks>
/// Details of a failed operation
/// </remarks>
public partial class TestCloudErrorDetails
{
public TestCloudErrorDetails() { }
/// <summary>
/// Gets or sets status of the operation
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// Gets or sets human-readable message that describes the error
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
public virtual void Validate()
{
if (Status == null)
{
throw new System.Exception("Property 'Status' is required/");
}
if (Message == null)
{
throw new System.Exception("Property 'Message' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Test Cloud File Hash
/// </summary>
/// <remarks>
/// Hash, type, path and byte range of a file that is required in test run
/// </remarks>
public partial class TestCloudFileHashDeprecated
{
public TestCloudFileHashDeprecated() { }
/// <summary>
/// Gets or sets type of the file. Possible values include:
/// 'dsym-file', 'app-file', 'test-file'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "file_type")]
public TestCloudFileHashDeprecatedFileType FileType { get; set; }
/// <summary>
/// Gets or sets SHA256 hash of the file
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "checksum")]
public string Checksum { get; set; }
/// <summary>
/// Gets or sets relative path of the file
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "relative_path")]
public string RelativePath { get; set; }
/// <summary>
/// Gets or sets range of bytes required to verify ownership of the
/// file
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "byte_range")]
public string ByteRange { get; set; }
public virtual void Validate()
{
if (Checksum == null)
{
throw new System.Exception("Property 'Checksum' is required/");
}
if (RelativePath == null)
{
throw new System.Exception("Property 'RelativePath' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Test Cloud File Hash
/// </summary>
/// <remarks>
/// Hash, type, path and byte range of a file that is required in test run
/// </remarks>
public partial class TestCloudFileHash
{
public TestCloudFileHash() { }
/// <summary>
/// Gets or sets type of the file. Possible values include:
/// 'dsym-file', 'app-file', 'test-file'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "fileType")]
public TestCloudFileHashFileType FileType { get; set; }
/// <summary>
/// Gets or sets SHA256 hash of the file
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "checksum")]
public string Checksum { get; set; }
/// <summary>
/// Gets or sets relative path of the file
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "relativePath")]
public string RelativePath { get; set; }
public virtual void Validate()
{
if (Checksum == null)
{
throw new System.Exception("Property 'Checksum' is required/");
}
if (RelativePath == null)
{
throw new System.Exception("Property 'RelativePath' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Test Cloud Hash Upload Status
/// </summary>
/// <remarks>
/// Result of uploading a single file hash
/// </remarks>
public partial class TestCloudHashUploadStatus
{
public TestCloudHashUploadStatus() { }
/// <summary>
/// Gets or sets HTTP status code that represent result of upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "statusCode")]
public double StatusCode { get; set; }
/// <summary>
/// Gets or sets URI that should be used to make POST request if file
/// with given hash doesn't exist. This is set when status_code is
/// equal to 412
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "location")]
public string Location { get; set; }
public virtual void Validate()
{
//Nothing to validate
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Test Cloud File Hash Response
/// </summary>
/// <remarks>
/// Response message for single uploaded file hash
/// </remarks>
public partial class TestCloudFileHashResponse
{
public TestCloudFileHashResponse() { }
/// <summary>
/// Gets or sets type of the file. Possible values include:
/// 'dsym-file', 'app-file', 'test-file'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "fileType")]
public TestCloudFileHashResponseFileType FileType { get; set; }
/// <summary>
/// Gets or sets SHA256 hash of the file
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "checksum")]
public string Checksum { get; set; }
/// <summary>
/// Gets or sets relative path of the file
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "relativePath")]
public string RelativePath { get; set; }
/// <summary>
/// Gets or sets status of the upload
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploadStatus")]
public TestCloudHashUploadStatus UploadStatus { get; set; }
public virtual void Validate()
{
if (Checksum == null)
{
throw new System.Exception("Property 'Checksum' is required/");
}
if (UploadStatus == null)
{
throw new System.Exception("Property 'UploadStatus' is required/");
}
if (this.UploadStatus != null)
{
this.UploadStatus.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Test Cloud Start Test Run Options
/// </summary>
/// <remarks>
/// Options required to start the test run
/// </remarks>
public partial class TestCloudStartTestRunOptions
{
public TestCloudStartTestRunOptions() { }
/// <summary>
/// Gets or sets test framework used by tests.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "test_framework")]
public string TestFramework { get; set; }
/// <summary>
/// Gets or sets device selection string.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_selection")]
public string DeviceSelection { get; set; }
/// <summary>
/// Gets or sets language that should be used to run tests.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "language")]
public string Language { get; set; }
/// <summary>
/// Gets or sets locale that should be used to run tests.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "locale")]
public string Locale { get; set; }
/// <summary>
/// Gets or sets name of the test series.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "test_series")]
public string TestSeries { get; set; }
/// <summary>
/// Gets or sets a JSON dictionary with additional test parameters
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "test_parameters")]
public object TestParameters { get; set; }
public virtual void Validate()
{
if (TestFramework == null)
{
throw new System.Exception("Property 'TestFramework' is required/");
}
if (DeviceSelection == null)
{
throw new System.Exception("Property 'DeviceSelection' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Test Cloud Test Run Start Result
/// </summary>
/// <remarks>
/// Result of starting a test run
/// </remarks>
public partial class TestCloudStartTestRunResult
{
public TestCloudStartTestRunResult() { }
/// <summary>
/// Gets or sets list with names of accepted devices
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "accepted_devices")]
public string[] AcceptedDevices { get; set; }
/// <summary>
/// Gets or sets list with names and descriptions of rejected devices
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "rejected_devices")]
public string[] RejectedDevices { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Test Run State
/// </summary>
/// <remarks>
/// Current status of a test run
/// </remarks>
public partial class TestRunState
{
public TestRunState() { }
/// <summary>
/// Gets or sets multi-line message that describes the status
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string[] Message { get; set; }
/// <summary>
/// Gets or sets time (in seconds) that the client should wait for
/// before checking the status again
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "wait_time")]
public int? WaitTime { get; set; }
/// <summary>
/// Gets or sets the exit code that the client should use when exiting.
/// Used for indicating status to the caller of the client.
/// 0: test run completes with no failing tests
/// 1: test run completes with at least one failing test
/// 2: test run failed to complete. Status for test run is unknown
///
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "exit_code")]
public int? ExitCode { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class PerformanceReportPerformanceDataStepsItemSamplesItem
{
public PerformanceReportPerformanceDataStepsItemSamplesItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "cpu")]
public double? Cpu { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "mem")]
public double? Mem { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "elapsed-secs")]
public double? ElapsedSecs { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class PerformanceReportPerformanceDataStepsItem
{
public PerformanceReportPerformanceDataStepsItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "avg-cpu")]
public double? AvgCpu { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "avg-mem")]
public double? AvgMem { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "samples")]
public PerformanceReportPerformanceDataStepsItemSamplesItem[] Samples { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "elapsed-secs-end")]
public double? ElapsedSecsEnd { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "elapsed-secs-start")]
public double? ElapsedSecsStart { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "elapsed-secs")]
public double? ElapsedSecs { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class PerformanceReportPerformanceData
{
public PerformanceReportPerformanceData() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "steps")]
public PerformanceReportPerformanceDataStepsItem[] Steps { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "elapsed-secs-end")]
public double? ElapsedSecsEnd { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "elapsed-secs-start")]
public double? ElapsedSecsStart { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "elapsed-secs")]
public double? ElapsedSecs { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class PerformanceReportVideoVideoMetadataEventsItem
{
public PerformanceReportVideoVideoMetadataEventsItem() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "millis")]
public double? Millis { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public string Type { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class PerformanceReportVideoVideoMetadata
{
public PerformanceReportVideoVideoMetadata() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "events")]
public PerformanceReportVideoVideoMetadataEventsItem[] Events { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class PerformanceReportVideo
{
public PerformanceReportVideo() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "video_metadata")]
public PerformanceReportVideoVideoMetadata VideoMetadata { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "video_url")]
public string VideoUrl { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Performance Report
/// </summary>
/// <remarks>
/// Report data for a single test (a.k.a. scenario)
/// </remarks>
public partial class PerformanceReport
{
public PerformanceReport() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "device_snapshot_id")]
public string DeviceSnapshotId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "performance_data")]
public PerformanceReportPerformanceData PerformanceData { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "video")]
public PerformanceReportVideo Video { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class BlobInfo
{
public BlobInfo() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "size")]
public double Size { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "url")]
public string Url { get; set; }
public virtual void Validate()
{
if (Url == null)
{
throw new System.Exception("Property 'Url' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CodePushRelease : CodePushReleaseInfo
{
public CodePushRelease() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "label")]
public string Label { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "package_hash")]
public string PackageHash { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "blob_url")]
public string BlobUrl { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "diff_package_map")]
public System.Collections.Generic.Dictionary<string, BlobInfo> DiffPackageMap { get; set; }
/// <summary>
/// Gets or sets set on 'Promote'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "original_deployment")]
public string OriginalDeployment { get; set; }
/// <summary>
/// Gets or sets set on 'Promote' and 'Rollback'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "original_label")]
public string OriginalLabel { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "released_by")]
public string ReleasedBy { get; set; }
/// <summary>
/// Gets or sets the release method is unknown if unspecified. Possible
/// values include: 'Upload', 'Promote', 'Rollback'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_method")]
public CodePushReleaseReleaseMethod? ReleaseMethod { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "size")]
public double? Size { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "upload_time")]
public int? UploadTime { get; set; }
public override void Validate()
{
base.Validate();
if (this.DiffPackageMap != null)
{
foreach (var valueElement in this.DiffPackageMap.Values)
{
if (valueElement != null)
{
valueElement.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Deployment
{
public Deployment() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "key")]
public string Key { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "latest_release")]
public CodePushRelease LatestRelease { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (this.LatestRelease != null)
{
this.LatestRelease.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class DeploymentModification
{
public DeploymentModification() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (this.Name != null)
{
if (this.Name.Length > 1000)
{
throw new System.Exception("Validation Failed: MaxLength, 'Name', 1000");
}
if (this.Name.Length < 1)
{
throw new System.Exception("Validation Failed: MinLength, 'Name', 1");
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CodePushReleaseLabel
{
public CodePushReleaseLabel() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "label")]
public string Label { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CodePushReleaseInfo
{
public CodePushReleaseInfo() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "target_binary_range")]
public string TargetBinaryRange { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_disabled")]
public bool? IsDisabled { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_mandatory")]
public bool? IsMandatory { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "rollout")]
public int? Rollout { get; set; }
public virtual void Validate()
{
if (this.Rollout > 100)
{
throw new System.Exception("Validation Failed: InclusiveMaximum, 'Rollout', 100");
}
if (this.Rollout < 1)
{
throw new System.Exception("Validation Failed: InclusiveMinimum, 'Rollout', 1");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CodePushReleaseModification : CodePushReleaseInfo
{
public CodePushReleaseModification() { }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CodePushReleasePromote : CodePushReleaseInfo
{
public CodePushReleasePromote() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "label")]
public string Label { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CodePushReleaseMetric
{
public CodePushReleaseMetric() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "label")]
public string Label { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "active")]
public int Active { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "downloaded")]
public int? Downloaded { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "failed")]
public int? Failed { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "installed")]
public int? Installed { get; set; }
public virtual void Validate()
{
if (Label == null)
{
throw new System.Exception("Property 'Label' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class CodePushStatusMetricMetadata
{
public CodePushStatusMetricMetadata() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "deployment_key")]
public string DeploymentKey { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "label")]
public string Label { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_version")]
public string AppVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_deployment_key")]
public string PreviousDeploymentKey { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "previous_label_or_app_version")]
public string PreviousLabelOrAppVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "status")]
public string Status { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "client_unique_id")]
public string ClientUniqueId { get; set; }
public virtual void Validate()
{
if (DeploymentKey == null)
{
throw new System.Exception("Property 'DeploymentKey' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class UpdateCheckResponse : CodePushReleaseInfo
{
public UpdateCheckResponse() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "download_url")]
public string DownloadUrl { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "is_available")]
public bool? IsAvailable { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "package_size")]
public double? PackageSize { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "should_run_binary_version")]
public bool? ShouldRunBinaryVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "update_app_version")]
public bool? UpdateAppVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "package_hash")]
public string PackageHash { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "label")]
public string Label { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class AcquisitionStatusSuccessResponse
{
public AcquisitionStatusSuccessResponse() { }
/// <summary>
/// Gets or sets the code indicating the status
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code")]
public string Code { get; set; }
/// <summary>
/// Gets or sets the message indicating the status
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
public virtual void Validate()
{
if (Code == null)
{
throw new System.Exception("Property 'Code' is required/");
}
if (Message == null)
{
throw new System.Exception("Property 'Message' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Generic result for any alerting API operation
/// </summary>
public partial class AlertOperationResult
{
public AlertOperationResult() { }
/// <summary>
/// Gets or sets unique request identifier for tracking
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "request_id")]
public string RequestId { get; set; }
public virtual void Validate()
{
if (RequestId == null)
{
throw new System.Exception("Property 'RequestId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Alerting webhook
/// </summary>
public partial class AlertWebhook
{
public AlertWebhook() { }
/// <summary>
/// Gets or sets the unique id (UUID) of the webhook
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets display name of the webhook
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// Gets or sets target url of the webhook
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "url")]
public string Url { get; set; }
/// <summary>
/// Gets or sets allows eanble/disable webhook
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "enabled")]
public bool? Enabled { get; set; }
/// <summary>
/// Gets or sets event types enabled for webhook
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "event_types")]
public AlertingEventTypes?[] EventTypes { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (Url == null)
{
throw new System.Exception("Property 'Url' is required/");
}
if (EventTypes == null)
{
throw new System.Exception("Property 'EventTypes' is required/");
}
if (this.Name != null)
{
if (this.Name.Length > 512)
{
throw new System.Exception("Validation Failed: MaxLength, 'Name', 512");
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// List of alerting webhooks wrapped as operation result
/// </summary>
public partial class AlertWebhookListResult
{
public AlertWebhookListResult() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "values")]
public AlertWebhook[] Values { get; set; }
public virtual void Validate()
{
if (Values == null)
{
throw new System.Exception("Property 'Values' is required/");
}
if (this.Values != null)
{
foreach (var element in this.Values)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Alerting webhook ping operation result
/// </summary>
public partial class AlertWebhookPingResult : AlertOperationResult
{
public AlertWebhookPingResult() { }
/// <summary>
/// Gets or sets HTTP status code returned in response from calling
/// webhook
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "response_status_code")]
public int? ResponseStatusCode { get; set; }
/// <summary>
/// Gets or sets reason returned in response from calling webhook
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "response_reason")]
public string ResponseReason { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Event Setting
/// </summary>
public partial class EventSetting
{
public EventSetting() { }
static EventSetting()
{
EventType = "crash_newCrashGroupCreated";
}
/// <summary>
/// Gets or sets frequency of event. Possible values include:
/// 'Disabled', 'Individual', 'Daily', 'DailyAndIndividual', 'Default'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "value")]
public EventSettingValue Value { get; set; }
/// <summary>
/// Gets or sets default frequency of event. Possible values include:
/// 'Disabled', 'Individual', 'Daily', 'DailyAndIndividual'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "default_value")]
public EventSettingDefaultValue? DefaultValue { get; set; }
/// <summary>
/// Event Name
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "event_type")]
public static string EventType { get; private set; }
public virtual void Validate()
{
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Alerting Email Settings
/// </summary>
public partial class AlertEmailSettings
{
public AlertEmailSettings() { }
/// <summary>
/// Gets or sets the settings the user has for the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "settings")]
public EventSetting[] Settings { get; set; }
public virtual void Validate()
{
if (Settings == null)
{
throw new System.Exception("Property 'Settings' is required/");
}
if (this.Settings != null)
{
foreach (var element in this.Settings)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Alerting Default Email Settings of the user
/// </summary>
public partial class AlertUserEmailSettingsResult : AlertOperationResult
{
public AlertUserEmailSettingsResult() { }
/// <summary>
/// Gets or sets the ETag of the entity
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "eTag")]
public string ETag { get; set; }
/// <summary>
/// Gets or sets allows to forcefully disable emails on app or user
/// level
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "enabled")]
public bool? Enabled { get; set; }
/// <summary>
/// Gets or sets the unique id (UUID) of the user
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "userId")]
public string UserId { get; set; }
/// <summary>
/// Gets or sets the settings the user has for the app
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "settings")]
public EventSetting[] Settings { get; set; }
public override void Validate()
{
base.Validate();
if (this.Settings != null)
{
foreach (var element in this.Settings)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Alerting Email Settings of the user for a particular app
/// </summary>
public partial class AlertUserAppEmailSettingsResult : AlertUserEmailSettingsResult
{
public AlertUserAppEmailSettingsResult() { }
/// <summary>
/// Gets or sets application ID
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "appId")]
public string AppId { get; set; }
/// <summary>
/// Gets or sets a flag indicating if settings are enabled at
/// user/global level
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_enabled")]
public bool? UserEnabled { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Bugtracker specific settings
/// </summary>
public partial class AlertingBugtrackerSettings
{
public AlertingBugtrackerSettings() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "callback_url")]
public string CallbackUrl { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "owner_name")]
public string OwnerName { get; set; }
public virtual void Validate()
{
if (OwnerName == null)
{
throw new System.Exception("Property 'OwnerName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// VSTS bugtracker specific settings
/// </summary>
[Newtonsoft.Json.JsonObject("vsts")]
public partial class AlertingVstsBugtrackerSettings : AlertingBugtrackerSettings
{
public AlertingVstsBugtrackerSettings() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "vsts_project_id")]
public string VstsProjectId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "vsts_project_uri")]
public string VstsProjectUri { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "vsts_project_name")]
public string VstsProjectName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "vsts_account_name")]
public string VstsAccountName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "vsts_area_path")]
public string VstsAreaPath { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "vsts_default_payload")]
public object VstsDefaultPayload { get; set; }
public override void Validate()
{
base.Validate();
if (VstsProjectId == null)
{
throw new System.Exception("Property 'VstsProjectId' is required/");
}
if (VstsProjectUri == null)
{
throw new System.Exception("Property 'VstsProjectUri' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Github bugtracker specific settings
/// </summary>
[Newtonsoft.Json.JsonObject("github")]
public partial class AlertingGithubBugtrackerSettings : AlertingBugtrackerSettings
{
public AlertingGithubBugtrackerSettings() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "github_repo_id")]
public int GithubRepoId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "github_repo_name")]
public string GithubRepoName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "github_label")]
public string GithubLabel { get; set; }
public override void Validate()
{
base.Validate();
if (GithubRepoName == null)
{
throw new System.Exception("Property 'GithubRepoName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Jira bugtracker specific settings
/// </summary>
[Newtonsoft.Json.JsonObject("jira")]
public partial class AlertingJiraBugtrackerSettings : AlertingBugtrackerSettings
{
public AlertingJiraBugtrackerSettings() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "jira_project_id")]
public int JiraProjectId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "jira_project_name")]
public string JiraProjectName { get; set; }
public override void Validate()
{
base.Validate();
if (JiraProjectName == null)
{
throw new System.Exception("Property 'JiraProjectName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Alerting bugtracker resource
/// </summary>
public partial class AlertingBugtracker
{
public AlertingBugtracker() { }
/// <summary>
/// Gets or sets type of bugtracker. Possible values include: 'github',
/// 'vsts', 'jira'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "type")]
public AlertingBugtrackerType? Type { get; set; }
/// <summary>
/// Gets or sets bugtracker state. Possible values include: 'enabled',
/// 'disabled', 'unauthorized'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state")]
public AlertingBugtrackerState? State { get; set; }
/// <summary>
/// Gets or sets ID of OAuth token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "token_id")]
public string TokenId { get; set; }
/// <summary>
/// Gets or sets event types enabled for bugtracker
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "event_types")]
public AlertingEventTypes?[] EventTypes { get; set; }
/// <summary>
/// Gets or sets threshold for the number of crashes at which to create
/// a bug
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_count_threshold")]
public int? CrashCountThreshold { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "settings")]
public AlertingBugtrackerSettings Settings { get; set; }
public virtual void Validate()
{
if (this.Settings != null)
{
this.Settings.Validate();
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Repository owner object
/// </summary>
public partial class AlertBugTrackerRepoOwner
{
public AlertBugTrackerRepoOwner() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "login")]
public string Login { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Repostiory object
/// </summary>
public partial class AlertBugTrackerRepo
{
public AlertBugTrackerRepo() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "url")]
public string Url { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "description")]
public string Description { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "private")]
public bool? PrivateProperty { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "owner")]
public AlertBugTrackerRepoOwner Owner { get; set; }
public virtual void Validate()
{
if (Name == null)
{
throw new System.Exception("Property 'Name' is required/");
}
if (Url == null)
{
throw new System.Exception("Property 'Url' is required/");
}
if (Id == null)
{
throw new System.Exception("Property 'Id' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// List of bug tracker repositories
/// </summary>
public partial class AlertBugTrackerReposResult
{
public AlertBugTrackerReposResult() { }
/// <summary>
/// Gets or sets possible values include: 'github', 'vsts', 'jira'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_type")]
public AlertBugTrackerReposResultRepoType? RepoType { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repositories")]
public AlertBugTrackerRepo[] Repositories { get; set; }
public virtual void Validate()
{
if (Repositories == null)
{
throw new System.Exception("Property 'Repositories' is required/");
}
if (this.Repositories != null)
{
foreach (var element in this.Repositories)
{
if (element != null)
{
element.Validate();
}
}
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// AlertCrashGroup patching parameter
/// </summary>
public partial class AlertCrashGroupStateChange
{
public AlertCrashGroupStateChange() { }
/// <summary>
/// Gets or sets possible values include: 'Open', 'Closed', 'Ignored'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "state")]
public AlertCrashGroupStateChangeState? State { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Access token details
/// </summary>
public partial class AlertingAccessTokenResponse
{
public AlertingAccessTokenResponse() { }
/// <summary>
/// Gets or sets ID of the access token
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "access_token_id")]
public string AccessTokenId { get; set; }
/// <summary>
/// Gets or sets external provider name. Possible values include:
/// 'github', 'vsts', 'jira'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "external_provider_name")]
public AlertingAccessTokenResponseExternalProviderName ExternalProviderName { get; set; }
/// <summary>
/// Gets or sets the email of external user that used to authenticate
/// aginst the external oauth provider
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "external_user_email")]
public string ExternalUserEmail { get; set; }
/// <summary>
/// Gets or sets the account name of external user that used to
/// authenticate against the external oauth provider or basic auth
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "external_account_name")]
public object ExternalAccountName { get; set; }
public virtual void Validate()
{
if (AccessTokenId == null)
{
throw new System.Exception("Property 'AccessTokenId' is required/");
}
if (ExternalUserEmail == null)
{
throw new System.Exception("Property 'ExternalUserEmail' is required/");
}
if (ExternalAccountName == null)
{
throw new System.Exception("Property 'ExternalAccountName' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Alerting event
/// </summary>
public partial class AlertingEvent
{
public AlertingEvent() { }
/// <summary>
/// Gets or sets ISO 8601 date time when event was generated
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "event_timestamp")]
public string EventTimestamp { get; set; }
/// <summary>
/// Gets or sets a unique identifier for this event instance. Useful
/// for deduplication
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "event_id")]
public string EventId { get; set; }
/// <summary>
/// Gets or sets obsolete. Use emailProperties.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "properties")]
public object Properties { get; set; }
public virtual void Validate()
{
if (EventTimestamp == null)
{
throw new System.Exception("Property 'EventTimestamp' is required/");
}
if (EventId == null)
{
throw new System.Exception("Property 'EventId' is required/");
}
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Properties of new crash group
/// </summary>
public partial class NewCrashGroupAlertingEventCrashGroupProperties
{
public NewCrashGroupAlertingEventCrashGroupProperties() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "name")]
public string Name { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "reason")]
public string Reason { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "url")]
public string Url { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_display_name")]
public string AppDisplayName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_platform")]
public string AppPlatform { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_version")]
public string AppVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "stack_trace")]
public string[] StackTrace { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// New crash group alerting event
/// </summary>
public partial class NewCrashGroupAlertingEvent : AlertingEvent
{
public NewCrashGroupAlertingEvent() { }
/// <summary>
/// Gets or sets properties of new crash group
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "crash_group_properties")]
public NewCrashGroupAlertingEventCrashGroupProperties CrashGroupProperties { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Properties of new application release
/// </summary>
public partial class NewAppReleaseAlertingEventAppReleaseProperties
{
public NewAppReleaseAlertingEventAppReleaseProperties() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_name")]
public string AppName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_display_name")]
public string AppDisplayName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_id")]
public string ReleaseId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "platform")]
public string Platform { get; set; }
/// <summary>
/// Gets or sets date and time in ISO 8601 format
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "uploaded_at")]
public string UploadedAt { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "fingerprint")]
public string Fingerprint { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "release_notes")]
public string ReleaseNotes { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "short_version")]
public string ShortVersion { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "min_os")]
public string MinOs { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "mandatory_update")]
public bool? MandatoryUpdate { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "size")]
public int? Size { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioning_profile_name")]
public string ProvisioningProfileName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "provisioning_profile_type")]
public string ProvisioningProfileType { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "bundle_identifier")]
public string BundleIdentifier { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "install_link")]
public string InstallLink { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "icon_link")]
public string IconLink { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "distribution_group_id")]
public string DistributionGroupId { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// New app release alerting event
/// </summary>
public partial class NewAppReleaseAlertingEvent : AlertingEvent
{
public NewAppReleaseAlertingEvent() { }
/// <summary>
/// Gets or sets list of users who need to receive an email
/// notification. If this is not null, then only sending emails will be
/// triggered even if the event requires calling webhooks or doing
/// other actions.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "user_ids")]
public string[] UserIds { get; set; }
/// <summary>
/// Gets or sets properties of new application release
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "app_release_properties")]
public NewAppReleaseAlertingEventAppReleaseProperties AppReleaseProperties { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Object returned in response to getting a bug tracker issue related to a
/// crash group id
/// </summary>
public partial class BugTrackerIssueResult
{
public BugTrackerIssueResult() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "url")]
public string Url { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "title")]
public string Title { get; set; }
/// <summary>
/// Gets or sets possible values include: 'github', 'vsts', 'jira'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "bug_tracker_type")]
public BugTrackerIssueResultBugTrackerType? BugTrackerType { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "repo_name")]
public string RepoName { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "mobile_center_id")]
public string MobileCenterId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "event_type")]
public string EventType { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Returns a list of all issues associated with a repo
/// </summary>
public partial class BugTrackerIssuesResult
{
public BugTrackerIssuesResult() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "issues")]
public BugTrackerIssueResult[] Issues { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Object returned in response to accepting an event occurance
/// </summary>
public partial class EventResponseResult : AlertOperationResult
{
public EventResponseResult() { }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Alerting service error
/// </summary>
public partial class AlertingError : AlertOperationResult
{
public AlertingError() { }
/// <summary>
/// Gets or sets the status code return by the API. It can be 400 or
/// 404 or 409 or 500.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code")]
public int? Code { get; set; }
/// <summary>
/// Gets or sets the reason for the request failed
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
public override void Validate()
{
base.Validate();
}
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Billing Plan
/// </summary>
public partial class BillingPlan
{
public BillingPlan() { }
/// <summary>
/// Gets or sets the Billing Plan ID
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// Gets or sets version of the Billing Plan schema
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// Gets or sets price bucket of the billing plan. Free plans start
/// with 0, paid plans have higher price buckets
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "priceBucket")]
public int? PriceBucket { get; set; }
/// <summary>
/// Gets or sets name of the service that the plan applies to. Possible
/// values include: 'Build', 'Push', 'Test'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "service")]
public BillingPlanService? Service { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "limits")]
public System.Collections.Generic.Dictionary<string, double?> Limits { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "attributes")]
public System.Collections.Generic.Dictionary<string, object> Attributes { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Selection of a billing plan
/// </summary>
public partial class BillingPlanSelection
{
public BillingPlanSelection() { }
/// <summary>
/// Gets or sets number of instances of the billing plan.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "count")]
public int? Count { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "plan")]
public BillingPlan Plan { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Billing plans for a given period
/// </summary>
public partial class BillingPeriod
{
public BillingPeriod() { }
/// <summary>
/// Gets or sets inclusive start of the period
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "startTime")]
public string StartTime { get; set; }
/// <summary>
/// Gets or sets exclusive end of the period.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "endTime")]
public string EndTime { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "byAccount")]
public BillingPlanSelection ByAccount { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Billing Plans for a single service
/// </summary>
public partial class ServiceBillingPlans
{
public ServiceBillingPlans() { }
/// <summary>
/// Gets or sets can customer select trial plan for that service (if it
/// exists)?
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "canSelectTrialPlan")]
public bool? CanSelectTrialPlan { get; set; }
/// <summary>
/// Gets or sets expiration time of the last selected trial plan. Will
/// be null if trial plan was not used.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "lastTrialPlanExpirationTime")]
public string LastTrialPlanExpirationTime { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "currentBillingPeriod")]
public BillingPeriod CurrentBillingPeriod { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Billing Plans section in the Billing Information
/// </summary>
public partial class BillingInformationPlans
{
public BillingInformationPlans() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "buildService")]
public ServiceBillingPlans BuildService { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "pushService")]
public ServiceBillingPlans PushService { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "testService")]
public ServiceBillingPlans TestService { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Usage for a single period
/// </summary>
public partial class UsagePeriod
{
public UsagePeriod() { }
/// <summary>
/// Gets or sets inclusive start time of the usage period
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "startTime")]
public string StartTime { get; set; }
/// <summary>
/// Gets or sets exclusive end time of the usage period.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "endTime")]
public string EndTime { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "byAccount")]
public System.Collections.Generic.Dictionary<string, double?> ByAccount { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "byApp")]
public System.Collections.Generic.Dictionary<string, System.Collections.Generic.Dictionary<string, double?>> ByApp { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Resource usage for a single Mobile Center service
/// </summary>
public partial class ServiceResourceUsage
{
public ServiceResourceUsage() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "currentUsagePeriod")]
public UsagePeriod CurrentUsagePeriod { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Usage section in the Billing Information
/// </summary>
public partial class BillingResourceUsage
{
public BillingResourceUsage() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "buildService")]
public ServiceResourceUsage BuildService { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "pushService")]
public ServiceResourceUsage PushService { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "testService")]
public ServiceResourceUsage TestService { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Aggregated Billing Information for a user or an organization
/// </summary>
public partial class AggregatedBillingInformation
{
public AggregatedBillingInformation() { }
/// <summary>
/// Gets or sets version of the Billing Information schema
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "version")]
public string Version { get; set; }
/// <summary>
/// Gets or sets the ISO 8601 datetime of last modification
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "timestamp")]
public string Timestamp { get; set; }
/// <summary>
/// Gets or sets ID of the user or organization
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "id")]
public string Id { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "billingPlans")]
public BillingInformationPlans BillingPlans { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "usage")]
public BillingResourceUsage Usage { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class BillingErrorError
{
public BillingErrorError() { }
/// <summary>
/// Gets or sets the status code return by the API. It can be 400 or
/// 403 or 500.
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "code")]
public int? Code { get; set; }
/// <summary>
/// Gets or sets the reason for the request failed
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public string Message { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Error
/// </summary>
public partial class BillingError
{
public BillingError() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "error")]
public BillingErrorError Error { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Responses for requests that detect billing plans change type
/// </summary>
public partial class BillingPlansChangeTypeResponse
{
public BillingPlansChangeTypeResponse() { }
/// <summary>
/// Gets or sets possible values include: 'NoChange', 'Downgrade',
/// 'Upgrade'
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "result")]
public BillingPlansChangeTypeResponseResult? Result { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Selection of a billing plan for one or more services
/// </summary>
public partial class BillingPlansSelection
{
public BillingPlansSelection() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "buildService")]
public BillingPlanSelection BuildService { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "pushService")]
public BillingPlanSelection PushService { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "testService")]
public BillingPlanSelection TestService { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Status of the usage record creation
/// </summary>
public partial class UsageRecordStatus
{
public UsageRecordStatus() { }
/// <summary>
/// Gets or sets is the age of the most recent Build service usage
/// record within expected limits
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "expectedLatestBuildExists")]
public bool? ExpectedLatestBuildExists { get; set; }
/// <summary>
/// Gets or sets is the age of the most recent Push service usage
/// record within expected limits
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "expectedLatestPushExists")]
public bool? ExpectedLatestPushExists { get; set; }
/// <summary>
/// Gets or sets is the age of the most recent Test service usage
/// record within expected limits
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "expectedLatestTestExists")]
public bool? ExpectedLatestTestExists { get; set; }
/// <summary>
/// Gets or sets the time of the most recent Build service usage record
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "latestBuildUsageRecordTime")]
public string LatestBuildUsageRecordTime { get; set; }
/// <summary>
/// Gets or sets the time of the most recent Push service usage record
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "latestPushUsageRecordTime")]
public string LatestPushUsageRecordTime { get; set; }
/// <summary>
/// Gets or sets the time of the most recent Test service usage record
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "latestTestUsageRecordTime")]
public string LatestTestUsageRecordTime { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Billing Plan with a version
/// </summary>
public partial class VersionedBillingPlan
{
public VersionedBillingPlan() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "document")]
public BillingPlan Document { get; set; }
/// <summary>
/// Gets or sets the version of the object
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "etag")]
public string Etag { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
/// <summary>
/// Envelope for messages sent to actors
/// </summary>
public partial class MessageEnvelope
{
public MessageEnvelope() { }
/// <summary>
/// Gets or sets unique id of the message
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "messageId")]
public string MessageId { get; set; }
/// <summary>
/// Gets or sets type of the message
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "messageType")]
public string MessageType { get; set; }
/// <summary>
/// Gets or sets body of the message
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "message")]
public object Message { get; set; }
}
}
namespace MobileCenterApi.Models
{
using System.Linq;
public partial class Migration
{
public Migration() { }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "AppId")]
public string AppId { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "FromDate")]
public System.DateTime? FromDate { get; set; }
/// <summary>
/// </summary>
[Newtonsoft.Json.JsonProperty(PropertyName = "ToDate")]
public System.DateTime? ToDate { get; set; }
/// <summary>
/// </summary>
[Newtonso
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment