public override async Task <GetTransferValidationRequestsResponse> Get(
            GetTransferValidationRequestsRequest request,
            ServerCallContext context)
        {
            var vaultType = context.GetVaultType();

            if (!vaultType.HasValue)
            {
                return(GetErrorResponse(
                           GetTransferValidationRequestsErrorResponseBody.Types.ErrorCode.InvalidParameters,
                           "Vault type required"));
            }

            var vaultId = context.GetVaultId();

            if (!vaultId.HasValue && vaultType == VaultType.Private)
            {
                return(GetErrorResponse(
                           GetTransferValidationRequestsErrorResponseBody.Types.ErrorCode.InvalidParameters,
                           "Private vault id required"));
            }

            IReadOnlyCollection <VaultApi.Common.ReadModels.TransferValidationRequests.TransferValidationRequest>
            requests;

            if (vaultType == VaultType.Shared)
            {
                requests = await _transferValidationRequestRepository.GetPendingForSharedVaultAsync();
            }
            else
            {
                requests = await _transferValidationRequestRepository.GetPendingForPrivateVaultAsync(vaultId.Value);
            }

            var response = new GetTransferValidationRequestsResponse
            {
                Response = new GetTransferValidationRequestsResponseBody()
            };

            if (requests.Any())
            {
                response.Response.Requests.AddRange(requests.Select(x => new TransferValidationRequest
                {
                    Id          = x.Id,
                    OperationId = x.TransferId,
                    TenantId    = x.TenantId,
                    Blockchain  = new Blockchain
                    {
                        Id          = x.Blockchain.Id,
                        NetworkType = x.Blockchain.NetworkType switch
                        {
                            Swisschain.Sirius.Sdk.Primitives.NetworkType.Private =>
                            Swisschain.Sirius.VaultApi.ApiContract.Common.NetworkType.Private,
                            Swisschain.Sirius.Sdk.Primitives.NetworkType.Test =>
                            Swisschain.Sirius.VaultApi.ApiContract.Common.NetworkType.Test,
                            Swisschain.Sirius.Sdk.Primitives.NetworkType.Public =>
                            Swisschain.Sirius.VaultApi.ApiContract.Common.NetworkType.Public,
                            _ => throw new ArgumentOutOfRangeException(nameof(x.Blockchain.NetworkType),
                                                                       x.Blockchain.NetworkType,
                                                                       null)
                        },