@Bodden

Как правильно сформировать запрос Тинькофф API gRPC?

Здравствуйте.
На примере TINKOFF INVEST API пытаюсь реализовать клиента gRPC, конкретно реализовать его метод Currencies сервиса InstrumentsService. Часть кода я написал, а дописать не как не получается:
using Grpc.Core;
using Grpc.Net.Client;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Text.Json;
using System.Threading;
using System.Threading.Tasks;
using Tinkoff.InvestApi.V1;

namespace GrpcTest.Tinkoff.InvestApi.V1
{
    internal class Instruments
    {
        public async Task BondAsync()
        {
            Metadata metadata = new Metadata
            {
                { "Authorization", "Bearer {token}"}
            };

            using var channel = GrpcChannel.ForAddress("https://invest-public-api.tinkoff.ru:443");
            var client = new InstrumentsService.InstrumentsServiceClient(channel);

            var currencies = client.Currencies(new InstrumentsRequest(), metadata);

            foreach (var future in currencies.Instruments.Count())
            {
                
            }

        }
    }
}

SDK у них без примеров, реализую без нее.
Помогите пожалуйста, подскажите куда копать, где что можно подглядеть.
В оф. документации запутался окончательно.

Спасибо.
  • Вопрос задан
  • 92 просмотра
Решения вопроса 1
vabka
@vabka Куратор тега C#
Токсичный шарпист
1. Примеры есть, если напишешь issue, то пример новый добавят рано или поздно.
Для инструментов пример вот:
https://github.com/RussianInvestments/invest-api-c...

2. А что именно тебе нужно?
Вот например:
var settings = new Tinkoff.InvestApi.InvestApiSettings
{
    AccessToken = "..."
};
var client = Tinkoff.InvestApi.InvestApiClientFactory.Create(settings);
var currencies = client.Instruments.Currencies();
foreach (var currency in currencies.Instruments)
{
    Console.WriteLine(
        $"{currency.Uid} {currency.Ticker} {currency.Name} {currency.Nominal.Units + currency.Nominal.Nano / 1000000000m} {currency.Nominal.Currency}");
}


PS: https://github.com/RussianInvestments/invest-api-c...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы