static void Main(string[] args)
        {
            var binding = new WSHttpBinding(SecurityMode.Transport);
            binding.Name = "binding";
            binding.MaxReceivedMessageSize = 500000;
            binding.AllowCookies = true;

            var client = new SyncReplyClient(binding, new EndpointAddress("https://platform.gaelenlighten.com/api/soap12"));

            using (new OperationContextScope(client.InnerChannel))
            {
                var requestMessage = new HttpRequestMessageProperty();
                requestMessage.Headers["Tenant"] = "tenant.gaelenlighten.com"; // Add your tenant
                var token = "Basic " + Convert.ToBase64String(Encoding.UTF8.GetBytes("username:password")); // Add your username and password here
                requestMessage.Headers["Authorization"] = token;
                OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = requestMessage;

                var response = client.GetReports(new GetReports
                {
                    //// Specify filters
                    ReportStatus = ReportStatus.New,
                    Take = 100,
                    Skip = 0
                });

                var reportList = response.Reports;
                foreach (var report in reportList)
                {
                    ////Example of iterating through the report list
                }
                response.PrintDump();

                Console.ReadLine();
            }
        }