public static async Task <IActionResult> Run( [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = "conversations/aggregates")] HttpRequest req , [Genesys] IGenesysAccessToken token , ILogger log) { try { ApiClient apiClient = new ApiClient($"https://api.{token.Environment}"); var configuration = new Configuration(apiClient); configuration.AccessToken = token.Value; var analyticsApi = new AnalyticsApi(configuration); var dtUtc = DateTime.Now.ToUniversalTime(); var dtFrom = dtUtc.AddDays(-7); var dtTo = dtUtc; var response = await analyticsApi.PostAnalyticsConversationsAggregatesQueryAsync(new ConversationAggregationQuery { Interval = $"{dtFrom:O}/{dtTo:O}", }); return(new OkObjectResult(new { Items = response?.Results })); } catch (ApiException ex) { log.LogError(ex, "Purecloud error"); return(new BadRequestResult()); } }
public async Task <IActionResult> GetGenesysOrg2( [HttpTrigger(AuthorizationLevel.Function, "get", Route = "org2")] HttpRequest req , [Genesys(ClientSecret = "ClientSecret", ClientId = "ClientId", Environment = "Environment")] IGenesysAccessToken token , ILogger log) { Organization org = await GetOrgAsync(token.Value, token.Environment); return(new OkObjectResult(org)); }