private TeamworkRestClient(TeamworkOAuthInfoProvider oauthProvider, CompuMaster.Scopevisio.OpenApi.Model.AccountInfo applicationContext)
     : base(
         oauthProvider,
         new TeamworkRestClientConfiguration(TEAMWORK_ENDPOINT_URL, oauthProvider.OpenscopeClient.Config.UserAgent),
         new TeamworkClientErrorHandler(applicationContext.User.Login, oauthProvider),
         ""
         )
 {
     this.ApplicationContext = applicationContext;
 }
        /// <summary>
        /// Show information on current context
        /// </summary>
        /// <param name="OpenScopeClient"></param>
        static void ShowContextInfo(OpenScopeApiClient OpenScopeClient)
        {
            //A 1st API method call for getting API version info (authorized by access token from initial request)
            CompuMaster.Scopevisio.OpenApi.Model.Version VersionResult = OpenScopeClient.AdditionalApi.GetVersionWithHttpInfo().Data;
            System.Console.WriteLine("Interface version=" + VersionResult.ToString());
            System.Console.WriteLine();

            ////A 2nd API method call for getting HelloWorld data (authorized by access token from initial request)
            //CompuMaster.Scopevisio.OpenApi.Model.Hello HelloResult = OpenScopeClient.AdditionalApi.HelloJsonWithHttpInfo().Data;
            //System.Console.WriteLine("Hello world=" + HelloResult.HelloMessage);
            //System.Console.WriteLine();

            ////A 3rd API method call for getting HelloWorld data (authorized by access token from initial request)
            ////Demonstration of async requests
            //Task<CompuMaster.Scopevisio.OpenApi.Model.Hello> t = HelloTask(OpenScopeClient);
            //t.Wait();
            //System.Console.WriteLine("Async hello world=" + t.Result.HelloMessage);
            //System.Console.WriteLine();

            //Show current context
            CompuMaster.Scopevisio.OpenApi.Model.Records <CompuMaster.Scopevisio.OpenApi.Model.Organisation> OrganisationResult = OpenScopeClient.AdditionalApi.OrganisationJsonWithHttpInfo().Data;
            System.Console.WriteLine("Organisationen={");
            {
                var sb = new StringBuilder();
                foreach (CompuMaster.Scopevisio.OpenApi.Model.Organisation Org in OrganisationResult.Items)
                {
                    if (OrganisationResult.Items.IndexOf(Org) > 0)
                    {
                        System.Console.WriteLine();
                    }
                    sb.AppendLine("Org[" + (OrganisationResult.Items.IndexOf(Org) + 1) + "/" + OrganisationResult.Items.Count + "]");
                    sb.AppendLine("  Org.ID=" + Org.Id);
                    sb.AppendLine("  Org.Name=" + Org.Name);
                    sb.AppendLine("  Org.TeamworkTenant.ID=" + Org.TeamworkTenantId);
                    sb.AppendLine("  Org.TeamworkTenant.Name=" + Org.TeamworkTenantName);
                }
                System.Console.Write(Indent(sb.ToString()));
            }
            System.Console.WriteLine("}");
            System.Console.WriteLine();

            //Show current context
            CompuMaster.Scopevisio.OpenApi.Model.AccountInfo ScopevisioAppContext = OpenScopeClient.AdditionalApi.GetApplicationContextWithHttpInfo().Data;
            System.Console.WriteLine(ScopevisioAppContext.ToString());
            System.Console.WriteLine();
        }