public static LinkedInApiPaginatedResult <CampaignElement> GetAdCampaignsForCompany(this LinkedInApi api, OrgEntElements company) { string campaignsJson = api.RawGetJsonQuery( path: $"/v2/adCampaignsV2?q=search&search.associatedEntity.values[0]={company.OrganizationalTarget}", user: LinkedInApiFactory.GetUserAuthorization() ); LinkedInApiPaginatedResult <CampaignElement> campaigns = JsonConvert.DeserializeObject <LinkedInApiPaginatedResult <CampaignElement> >(campaignsJson); return(campaigns); }
public static LinkedInApiPaginatedResult <AdAnalyticsElement> GetAdsReporting(this LinkedInApi api, OrgEntElements company, DateTime startDate, DateTime?endDate = null) { StringBuilder apiQueryBuilder = new StringBuilder(); apiQueryBuilder.Append("/v2/adAnalyticsV2?q=analytics&pivot=CAMPAIGN&timeGranularity=DAILY"); // Build the startDate param into the query apiQueryBuilder.Append($"&dateRange.start.day={startDate.Day}&dateRange.start.month={startDate.Month}&dateRange.start.year={startDate.Year}"); if (endDate.HasValue) { // Build the endDate param into the query apiQueryBuilder.Append($"&dateRange.end.day={endDate?.Day}&dateRange.end.month={endDate?.Month}&dateRange.end.year={endDate?.Year}"); } apiQueryBuilder.Append($"&companies[0]={company.OrganizationalTarget}"); string resultJson = api.RawGetJsonQuery(apiQueryBuilder.ToString(), LinkedInApiFactory.GetUserAuthorization()); LinkedInApiPaginatedResult <AdAnalyticsElement> result = JsonConvert.DeserializeObject <LinkedInApiPaginatedResult <AdAnalyticsElement> >(resultJson); return(result); }