SearchByClient([FromQuery] string query, [FromQuery] int skip = 0, [FromQuery] int take = 20)
        {
            if (take <= 0 || skip < 0)
            {
                throw new ArgumentOutOfRangeException(nameof(skip), "Skip must be >= 0, take must be > 0");
            }

            var result = await _accountManagementService.SearchByClientAsync(query, skip, take);

            return(new Contracts.PaginatedResponseContract <ClientTradingConditionsSearchResultContract>(
                       result.Contents.Select(x => _convertService.Convert <IClientWithAccounts, ClientTradingConditionsSearchResultContract>(x)).ToList(),
                       result.Start,
                       result.Size,
                       result.TotalSize
                       ));
        }