Defines a model used for optimize route post requests
        public async Task<IActionResult> OptimizeRoute(int itineraryId, OptimizeRouteInputModel model)
        {
            var orgId = await GetOrganizationIdBy(itineraryId);

            if (orgId == 0 || !User.IsOrganizationAdmin(orgId))
            {
                return Unauthorized();
            }

            var result = await _mediator.SendAsync(new OptimizeRouteCommand { ItineraryId = itineraryId });

            return RedirectToAction("Details", new { id = itineraryId, startAddress = model.StartAddress, endAddress = model.EndAddress });
        }