{"data":{"exception":"PostgresException","message":"42601: syntax error at or near \"group\"\n\nPOSITION: 2694","helpLink":null,"data":{"severity":"ERROR","invariantSeverity":"ERROR","sqlState":"42601","messageText":"syntax error at or near \"group\"","position":2694,"file":"scan.l","line":"1241","routine":"scanner_yyerror"},"source":"Npgsql","stackTrace":" at Npgsql.Internal.NpgsqlConnector.<ReadMessage>g__ReadMessageLong|223_0(NpgsqlConnector connector, Boolean async, DataRowLoadingMode dataRowLoadingMode, Boolean readingNotifications, Boolean isReadingPrependedMessage)\n at Npgsql.NpgsqlDataReader.NextResult(Boolean async, Boolean isConsuming, CancellationToken cancellationToken)\n at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior, Boolean async, CancellationToken cancellationToken)\n at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior behavior, Boolean async, CancellationToken cancellationToken)\n at Npgsql.NpgsqlCommand.ExecuteDbDataReaderAsync(CommandBehavior behavior, CancellationToken cancellationToken)\n at Redsand.Site.Data.ApplicationDbContext.QueryListAsync[T](String query, CancellationToken cancellationToken) in D:\\WORKSPACE\\ECRM-NOBI-R2\\NobiV2\\Data\\ApplicationDbContext.cs:line 350\n at Redsand.Site.Api.ConversationReportController.ReactionReport(Nullable`1 fromDate, Nullable`1 toDate, Int32[] pageIds, Int32[] userIds, String[] postIds, Boolean all, Boolean sql1) in D:\\WORKSPACE\\ECRM-NOBI-R2\\NobiV2\\Api\\Report\\ConversationReportController.cs:line 765\n at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)\n at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)\n at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)\n at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)\n at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)\n at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)\n at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextExceptionFilterAsync>g__Awaited|26_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)","inner":null},"status":400,"statusText":"","headers":{"cache-control":"no-store","content-type":"application/json; charset=utf-8","date":"Wed, 21 Jan 2026 14:29:23 GMT","expires":"0","pragma":"no-cache","server":"nginx/1.28.0"},"config":{"transitional":{"silentJSONParsing":true,"forcedJSONParsing":true,"clarifyTimeoutError":false},"adapter":["xhr","http","fetch"],"transformRequest":[null],"transformResponse":[null],"timeout":0,"xsrfCookieName":"XSRF-TOKEN","xsrfHeaderName":"X-XSRF-TOKEN","maxContentLength":-1,"maxBodyLength":-1,"env":{},"headers":{"Accept":"application/json","Authorization":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1laWRlbnRpZmllciI6IjEwIiwiaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvd3MvMjAwNS8wNS9pZGVudGl0eS9jbGFpbXMvbmFtZSI6InRyYW5nbmFiaXRuaiIsIkFzcE5ldC5JZGVudGl0eS5TZWN1cml0eVN0YW1wIjoiSUg1TU5DNU1NWEs0VEc3Nk1ST0xQVVc0REVENlRFNzciLCJzdWIiOiJ0cmFuZ25hYml0bmoiLCJqdGkiOiIwOTg2MmI0Zi1lZGUyLTRkNGUtOGZmOS01ODg0ZDI5NzhhMjAiLCJpYXQiOjE3Njg5OTUwODYsImh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vd3MvMjAwOC8wNi9pZGVudGl0eS9jbGFpbXMvcm9sZSI6IjQtcXVhbi1seS1jc2toIiwibmJmIjoxNzY4OTk1MDg2LCJleHAiOjE3NjkwODE0ODYsImlzcyI6IlJTIiwiYXVkIjoiUlMifQ.PFUqxw4TRFawfENSoKf8ujoFdAbnDLMo2l_b5mgJ8DE","ContentType":"application/json","x-hour-offset":"7","BranchId":"1","Locale":"vi"},"baseURL":"https://truongtnj.nobi.pro","paramsSerializer":{},"params":{"platforms":["facebook"],"branchIds":[1],"fromDate":"2026-01-20T17:00:00.000Z","toDate":"2026-01-21T16:59:59.999Z","facebook":[],"instagram":[],"shopee":[],"lazada":[],"tiktok":[],"zalo":[],"zaloProfile":[],"pageIds":[],"shopIds":[],"oaIds":[]},"signal":{},"method":"get","url":"api/conversations/report/reaction"},"request":{}}