API Tinkoff

Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 11

Тема: API Tinkoff

  1. #1
    Пришел за помощью
    Аватар для aabbam
    Регистрация
    07.06.2012
    Сообщений
    17
    Сказал(а) спасибо
    9
    Поблагодарили 2 раз(а) в 2 сообщениях

    По умолчанию API Tinkoff

    Есть потребность в связи по API с этим банком. Опыта такого не имел. Не знаю даже, с чего начать. Может кто-нибудь что-нибудь посоветовать?

  2. #2
    Гость форума

    Регистрация
    08.09.2019
    Сообщений
    7
    Сказал(а) спасибо
    21
    Поблагодарили 2 раз(а) в 2 сообщениях

    По умолчанию Re: API Tinkoff

    Начинайте сразу с API2

  3. #3
    Пришел за помощью
    Аватар для aabbam
    Регистрация
    07.06.2012
    Сообщений
    17
    Сказал(а) спасибо
    9
    Поблагодарили 2 раз(а) в 2 сообщениях

    По умолчанию Re: API Tinkoff

    Каким образом?

  4. #4
    Гость форума

    Регистрация
    08.09.2019
    Сообщений
    7
    Сказал(а) спасибо
    21
    Поблагодарили 2 раз(а) в 2 сообщениях

    По умолчанию Re: API Tinkoff

    У Тиньков есть как минимум API с личным кабинетом и 2 API для торговли. Это совершенно разные вещи. Вам какой надо?

    Когда я говорил про API 2 я имел в виду API-инвест
    Вот начало
    https://tinkoff.github.io/investAPI/
    Вот все методы API 2
    https://tinkoff.github.io/investAPI/swagger-ui/

    Зная как в 1с послать HTTP запрос с помощью вышеуказанных страниц
    можно получить все что необходимо для анализа и торговли

  5. Пользователь сказал cпасибо:

    aabbam (27.07.2022)

  6. #5
    Пришел за помощью
    Аватар для aabbam
    Регистрация
    07.06.2012
    Сообщений
    17
    Сказал(а) спасибо
    9
    Поблагодарили 2 раз(а) в 2 сообщениях

    По умолчанию Re: API Tinkoff

    Так вроде и знаю, курсы валют с сайта центробанка получаю, но тут что-то никак.
    Задача такова, чтобы не столько торговать пока, сколько графики получать или хотя бы котировки на момент данный. Достаточно для этого просто API с кабинетом личным?

  7. #6
    Гость форума

    Регистрация
    08.09.2019
    Сообщений
    7
    Сказал(а) спасибо
    21
    Поблагодарили 2 раз(а) в 2 сообщениях

    По умолчанию Re: API Tinkoff

    Тогда вышеописанных ссылок должно хватить. Я использовал вот эту библиотекуhttps://infostart.ru/1c/articles/709325/
    Попоробовать с чего- то легкого . Например получить список валют .
    Вот URL = "https://invest-public-api.tinkoff.ru";

    Вот метод = "/rest/tinkoff.public.invest.api.contract.v1.InstrumentsS ervice/Currencies" .
    Найди этот метод на страницеhttps://tinkoff.github.io/investAPI/swagger-ui/ и посмотри требования к запросу и как будет выглядеть ответ.

    Вот данные = "{""instrumentStatus"": INSTRUMENT_STATUS_UNSPECIFIED}" которые нужно передать

    Также нужно передать следующие заголовки

    Заголовки.Вставить("Authorization ","Bearer " + Токен);
    Заголовки.Вставить("accept", "application/json");
    Заголовки.Вставить("Content-Type", "application/json");

    где Токен - это токен -полученный в личном кабинете инвестиций
    Мне хватило несколько дней чтобы с нуля во всем разобраться. Я даже не знал что такое HTTP запрос

  8. Пользователь сказал cпасибо:

    aabbam (28.07.2022)

  9. #7
    Пришел за помощью
    Аватар для aabbam
    Регистрация
    07.06.2012
    Сообщений
    17
    Сказал(а) спасибо
    9
    Поблагодарили 2 раз(а) в 2 сообщениях

    По умолчанию Re: API Tinkoff

    Процедура FormНаСервере()
    Сервер = "https://invest-public-api.tinkoff.ru";
    Порт = 443;
    Логин = "";
    Пароль = "";

    Прокси = Новый ИнтернетПрокси(Ложь);
    ЗащищенноеСоединениеOpenSSL = Новый ЗащищенноеСоединениеOpenSSL(Н еопределено,Неопределено);
    СоединениеHTTP = Новый HTTPСоединение(Сервер, Порт, Логин, Пароль,Прокси,,ЗащищенноеС единениеOpenSSL);

    Токен = "токен";

    Заголовки = Новый Соответствие;
    Заголовки.Вставить("Authorization ", "Bearer " + Токен);
    Заголовки.Вставить("accept", "application/json");
    Заголовки.Вставить("Content-Type", "application/json");
    Сервис = "rest/tinkoff.public.invest.api.contract.v1.UsersService/GetAccounts";

    ЗапросHTTP = Новый HTTPЗапрос(Сервис, Заголовки);
    ЗапросHTTP.УстановитьТелоИз троки("{}", КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИсп ользовать);

    Результат = СоединениеHTTP.ВызватьHTTPМет д("GET", ЗапросHTTP);

    Если Результат.КодСостояния <> 200 Тогда
    Сообщить("Ошибка выполнения запроса. Код состояния "+Результат.КодСостояния) ;
    Возврат;
    КонецЕсли;

    Данные = Результат.ПолучитьТелоКак троку();
    Сообщить(Данные);

    КонецПроцедуры

  10. #8
    Пришел за помощью
    Аватар для aabbam
    Регистрация
    07.06.2012
    Сообщений
    17
    Сказал(а) спасибо
    9
    Поблагодарили 2 раз(а) в 2 сообщениях

    По умолчанию Re: API Tinkoff

    Я вот такое сочинил, но не работает. Причина в чём, пока мне не понятно.

  11. #9
    Иногда оказывает помощь

    Регистрация
    16.02.2019
    Сообщений
    189
    Сказал(а) спасибо
    161
    Поблагодарили 1033 раз(а) в 168 сообщениях

    По умолчанию Re: API Tinkoff

    Цитата Сообщение от aabbam Посмотреть сообщение
    Процедура FormНаСервере()
    Сервер = "https://invest-public-api.tinkoff.ru";
    Порт = 443;
    Логин = "";
    Пароль = "";

    Прокси = Новый ИнтернетПрокси(Ложь);
    ЗащищенноеСоединениеOpenSSL = Новый ЗащищенноеСоединениеOpenSSL(Н еопределено,Неопределено);
    СоединениеHTTP = Новый HTTPСоединение(Сервер, Порт, Логин, Пароль,Прокси,,ЗащищенноеС единениеOpenSSL);

    Токен = "токен";

    Заголовки = Новый Соответствие;
    Заголовки.Вставить("Authorization ", "Bearer " + Токен);
    Заголовки.Вставить("accept", "application/json");
    Заголовки.Вставить("Content-Type", "application/json");
    Сервис = "rest/tinkoff.public.invest.api.contract.v1.UsersService/GetAccounts";

    ЗапросHTTP = Новый HTTPЗапрос(Сервис, Заголовки);
    ЗапросHTTP.УстановитьТелоИз троки("{}", КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИсп ользовать);

    Результат = СоединениеHTTP.ВызватьHTTPМет д("GET", ЗапросHTTP);

    Если Результат.КодСостояния <> 200 Тогда
    Сообщить("Ошибка выполнения запроса. Код состояния "+Результат.КодСостояния) ;
    Возврат;
    КонецЕсли;

    Данные = Результат.ПолучитьТелоКак троку();
    Сообщить(Данные);

    КонецПроцедуры
    Сервер должен быть без https:// в Новый HTTPСоединение(Сервер,

  12. #10
    Иногда оказывает помощь

    Регистрация
    16.02.2019
    Сообщений
    189
    Сказал(а) спасибо
    161
    Поблагодарили 1033 раз(а) в 168 сообщениях

    По умолчанию Re: API Tinkoff

    Ух ты, прикольно. В предыдущем сообщении в цитате больше, чем в оригинале, причем я ничего не дописывал. Когда жмешь "ответить с цитированием" в цитате появляется дополнительный текст, который не виден в оригинале, по крайней мере в моем браузере )

    Короче, Сервер должен быть без https, просто Новый HTTPСоединение("invest-public-api.tinkoff.ru" ...

    А тело и его тип вообще бессмысленно устанавливать.
    Заголовки.Вставить("Content-Type", "application/json");
    ЗапросHTTP.УстановитьТелоИз троки("{}", КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИсп ользовать);

    Потому что когда делаешь ГЕТ, то 1С тело вообще не отправляет:
    Результат = СоединениеHTTP.ВызватьHTTPМет д("GET", ЗапросHTTP);
    Последний раз редактировалось borodаn; 28.07.2022 в 20:20.

Страница 1 из 2 12 ПоследняяПоследняя

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •