public async Task <IActionResult> SendTransferDispatchAsync(
            [FromRoute] string id,
            [FromQuery] string sendingAddress,
            [FromQuery] string transactionHash,
            [FromQuery] DateTime transactionDateTime)
        {
            var validationErrorsDict = new Dictionary <string, string[]>();

            if (string.IsNullOrWhiteSpace(id))
            {
                validationErrorsDict.Add(nameof(id), new[] { $"{nameof(id)} is required" });
            }

            if (string.IsNullOrWhiteSpace(sendingAddress))
            {
                validationErrorsDict.Add(nameof(sendingAddress), new[] { $"{nameof(sendingAddress)} is required" });
            }

            if (string.IsNullOrWhiteSpace(transactionHash))
            {
                validationErrorsDict.Add(nameof(transactionHash), new[] { $"{nameof(transactionHash)} is required" });
            }

            if (validationErrorsDict.Count > 0)
            {
                return(ValidationProblem(new ValidationProblemDetails(validationErrorsDict)));
            }

            try
            {
                await _transactionsManager.SendTransferDispatchAsync(id, sendingAddress, transactionHash, transactionDateTime);
            }
            catch (NullReferenceException)
            {
                return(NotFound());
            }

            var transaction = await _transactionsManager.GetAsync(id);

            return(Ok(_mapper.Map <TransactionDetailsModel>(transaction)));
        }