private async Task <BulkDownloadOperation> SubmitDownloadAsyncImpl(SubmitDownloadParameters parameters) { if (parameters.CampaignIds == null) { var request = new DownloadCampaignsByAccountIdsRequest { AccountIds = new[] { _authorizationData.AccountId }, DataScope = parameters.DataScope, DownloadFileType = parameters.FileType, Entities = parameters.Entities, FormatVersion = FormatVersion, LastSyncTimeInUTC = parameters.LastSyncTimeInUTC, LocationTargetVersion = parameters.LocationTargetVersion, PerformanceStatsDateRange = parameters.PerformanceStatsDateRange, }; DownloadCampaignsByAccountIdsResponse response; using (var apiService = new ServiceClient <IBulkService>(_authorizationData)) { response = await apiService.CallAsync((s, r) => s.DownloadCampaignsByAccountIdsAsync(r), request).ConfigureAwait(false); } return(new BulkDownloadOperation(response.DownloadRequestId, _authorizationData, response.TrackingId) { StatusPollIntervalInMilliseconds = StatusPollIntervalInMilliseconds }); } else { var request = new DownloadCampaignsByCampaignIdsRequest { Campaigns = parameters.CampaignIds.Select(c => new CampaignScope { CampaignId = c, ParentAccountId = _authorizationData.AccountId }).ToList(), DataScope = parameters.DataScope, DownloadFileType = parameters.FileType, Entities = parameters.Entities, FormatVersion = FormatVersion, LastSyncTimeInUTC = parameters.LastSyncTimeInUTC, LocationTargetVersion = parameters.LocationTargetVersion, PerformanceStatsDateRange = parameters.PerformanceStatsDateRange }; DownloadCampaignsByCampaignIdsResponse response; using (var apiService = new ServiceClient <IBulkService>(_authorizationData)) { response = await apiService.CallAsync((s, r) => s.DownloadCampaignsByCampaignIdsAsync(r), request).ConfigureAwait(false); } return(new BulkDownloadOperation(response.DownloadRequestId, _authorizationData, response.TrackingId) { StatusPollIntervalInMilliseconds = StatusPollIntervalInMilliseconds }); } }
// GetDownloadRequestId helper method calls the DownloadCampaignsByAccountIds service operation // to request the download identifier. private async Task <string> GetDownloadRequestId(long accountId, DataScope dataScope, BulkDownloadEntity entities, string formatVersion, DateTime?lastSyncTime, PerformanceStatsDateRange dateRange) { var request = new DownloadCampaignsByAccountIdsRequest { AccountIds = new List <long> { accountId }, DataScope = dataScope, DownloadFileType = FileFormat, Entities = entities, FormatVersion = formatVersion, LastSyncTimeInUTC = lastSyncTime, PerformanceStatsDateRange = dateRange }; return((await Service.CallAsync( (s, r) => s.DownloadCampaignsByAccountIdsAsync(r), request)).DownloadRequestId); }
public async Task <DownloadCampaignsByAccountIdsResponse> DownloadCampaignsByAccountIdsAsync( ApiAuthentication auth, long accountId, long?customerId, DataScope dataScope, BulkDownloadEntity entities, CompressionType compressionType = CompressionType.Zip, DownloadFileType downloadFileType = DownloadFileType.Tsv, string formatVersion = "4.0", DateTime?lastSyncTimeInUTC = null, DateTime?start = null, DateTime?end = null) { var request = new DownloadCampaignsByAccountIdsRequest { CustomerId = string.Format("{0}", customerId), CustomerAccountId = string.Format("{0}", accountId), AccountIds = new long[] { accountId }, CompressionType = compressionType, DataScope = dataScope, DownloadFileType = downloadFileType, Entities = entities, FormatVersion = formatVersion, LastSyncTimeInUTC = lastSyncTimeInUTC, PerformanceStatsDateRange = BuildDateRange(start, end) }; try { SetAuthHelper.SetAuth(auth, request); return(await Check().DownloadCampaignsByAccountIdsAsync(request)); } catch (Exception ex) { Log(new LogEventArgs(ServiceType.Bulk, "DownloadCampaignsByAccountIdsAsync", ex.Message, new { Request = request }, ex)); } return(null); }
public async Task <DownloadCampaignsByAccountIdsResponse> DownloadCampaignsByAccountIdsAsync( IList <long> accountIds, CompressionType?compressionType, DataScope dataScope, IList <DownloadEntity> downloadEntities, DownloadFileType?downloadFileType, String formatVersion, DateTime?lastSyncTimeInUTC) { var request = new DownloadCampaignsByAccountIdsRequest { AccountIds = accountIds, CompressionType = compressionType, DataScope = dataScope, DownloadEntities = downloadEntities, DownloadFileType = downloadFileType, FormatVersion = formatVersion, LastSyncTimeInUTC = lastSyncTimeInUTC }; return(await BulkService.CallAsync((s, r) => s.DownloadCampaignsByAccountIdsAsync(r), request)); }
private async Task <BulkDownloadOperation> SubmitDownloadAsyncImpl(SubmitDownloadParameters parameters) { if (parameters.CampaignIds == null) { var request = new DownloadCampaignsByAccountIdsRequest { AccountIds = new[] { _authorizationData.AccountId }, DataScope = parameters.DataScope, DownloadFileType = parameters.FileType, DownloadEntities = parameters.DownloadEntities?.ToArray(), FormatVersion = FormatVersion, LastSyncTimeInUTC = parameters.LastSyncTimeInUTC, PerformanceStatsDateRange = parameters.PerformanceStatsDateRange, }; DownloadCampaignsByAccountIdsResponse response; using (var apiService = new ServiceClient <IBulkService>(_authorizationData, _apiEnvironment)) { try { response = await apiService.CallAsync((s, r) => s.DownloadCampaignsByAccountIdsAsync(r), request).ConfigureAwait(false); } catch (Exception e) { throw new CouldNotSubmitBulkDownloadException("Submit download operation failed.", e); } } return(new BulkDownloadOperation(response.DownloadRequestId, _authorizationData, response.TrackingId, _apiEnvironment) { StatusPollIntervalInMilliseconds = StatusPollIntervalInMilliseconds, DownloadHttpTimeout = DownloadHttpTimeout }); } else { var request = new DownloadCampaignsByCampaignIdsRequest { Campaigns = parameters.CampaignIds.Select(c => new CampaignScope { CampaignId = c, ParentAccountId = _authorizationData.AccountId }).ToList(), DataScope = parameters.DataScope, DownloadFileType = parameters.FileType, DownloadEntities = parameters.DownloadEntities?.ToArray(), FormatVersion = FormatVersion, LastSyncTimeInUTC = parameters.LastSyncTimeInUTC, PerformanceStatsDateRange = parameters.PerformanceStatsDateRange }; DownloadCampaignsByCampaignIdsResponse response; using (var apiService = new ServiceClient <IBulkService>(_authorizationData, _apiEnvironment)) { try { response = await apiService.CallAsync((s, r) => s.DownloadCampaignsByCampaignIdsAsync(r), request).ConfigureAwait(false); } catch (Exception e) { throw new CouldNotSubmitBulkDownloadException("Submit download operation failed.", e); } } return(new BulkDownloadOperation(response.DownloadRequestId, _authorizationData, response.TrackingId, _apiEnvironment) { StatusPollIntervalInMilliseconds = StatusPollIntervalInMilliseconds, DownloadHttpTimeout = DownloadHttpTimeout }); } }
// GetDownloadRequestId helper method calls the DownloadCampaignsByAccountIds service operation // to request the download identifier. private async Task<string> GetDownloadRequestId(long accountId, DataScope dataScope, BulkDownloadEntity entities, string formatVersion, DateTime? lastSyncTime, PerformanceStatsDateRange dateRange) { var request = new DownloadCampaignsByAccountIdsRequest { AccountIds = new List<long> { accountId }, DataScope = dataScope, DownloadFileType = FileFormat, Entities = entities, FormatVersion = formatVersion, LastSyncTimeInUTC = lastSyncTime, PerformanceStatsDateRange = dateRange }; return (await Service.CallAsync( (s, r) => s.DownloadCampaignsByAccountIdsAsync(r), request)).DownloadRequestId; }