Статьи из рубрики api
Пример работы с amoCRM
Как получить данные из amoCRM
Заказчик попросил вывести данные о сделках в таблицу в формате CSV. Данные должны быть максимально полными.
В том числе, необходимо вывести все возможные этапы сделки и даты, когда сделка переходила с этапа на этап. В amoCRM предусмотрена возможность определять этапы для каждой воронки продаж. Необходимо было, чтобы учитывались все этапы, всех воронок.
Ну и прочее - кто, когда, с кем, контакты клиента и, наконец, все комментарии к сделке.
Как работает аутентификация OAuth2
OAuth2 аутентификация на примере Google
Если у вас есть аккаунт в Google, то вы наверняка пользовались документами. Например, электронными таблицами.
Доступ к таблицам разрешен только вам и тем, кому вы предоставите такое право. Причем доступ возможен не только из Google.
Можно просматривать список таблиц и редактировать выбранную таблицу оставаясь в рамках своего приложения. Примерно так - http://sample.vorst.ru/googl
Поиск
Метки
Если у вас есть аккаунт в Google, то вы наверняка пользовались документами. Например, электронными таблицами.
Доступ к таблицам разрешен только вам и тем, кому вы предоставите такое право. Причем доступ возможен не только из Google.
Можно просматривать список таблиц и редактировать выбранную таблицу оставаясь в рамках своего приложения. Примерно так - http://sample.vorst.ru/googl
Для доступа к эектронным таблицам разработано Google Sheets API, доступное в двух вариантах - клиентская библиотека и REST API.
Оба варианта выполняют одну и туже работу. Во многом выбор зависит от решаемой задачи.
В простых задачах, например - получить список таблиц, которые принадлежат пользователю, проще использовать REST API.
Если же необходимо активно работать с таблицей - читать построчно, проводить вычисления, сохранять результаты, то, наверное, лучше использовать библиотеку.
В обоих случаях, для начала работы, необходимо пройти процедуру авторизации на сайте Google. В свою очередь, для этого нужно зарегистрировать проект в консоли разработчика.
Сделать это не сложно используя подробную, пошаговую инструкцию - Setting up OAuth 2.0.
При создании проекта автоматически будет создана пара значений, которая понадобится при прохождении авторизации - Client ID
и Client secret
.
Еще один параметр - Authorized redirect URIs
, вы должны ввести самостоятельно. Это адреса в вашем приложении, куда будут возвращаться результаты запросов на авторизацию. Адрес может быть один или несколько. Во-первых это удобно при отладке - можно указать локальный адрес. Во-вторых - процесс авторизации состоит из двух этапов и для каждого может быть задан свой адрес.
Итак, для авторизации необходимо:
- иметь аккаунт на сайте Google;
- создать проект с помощью консоли разработчика;
- сохранить
Cliend ID
иClient secret
; - ввести
Authorized redirect URIs
для обработки значений, полученных в процессе авторизации.
Как проходит авторизация?
Сначала отправляется запрос Google для получения кода авторизации. В качастве параметров отправляются Client ID
и Authorized redirect URI
. Результат запроса - Authorization code
, Google отправляет вашему приложению по адресу Authorized redirect URI
.
Получив Authorization code
приложение отправляет еще один запрос - на получение токена. При этом, к уже упомянутым параметрам, добавляются еще Client secret
и только что полученный Authorization code
.
В результате получаем Access token
по адресу, указанному в Authorized redirect URIs
. Если все сделано верно, то можно отправлять Google любой запрос, передавая Access token
в качестве параметра.
Например, запрос:
https://spreadsheets.google.com/feeds/spreadsheets/private/full
вернет список ваших таблиц в Google в формате xml.
Текст программы на github.
Заключение
Протокол OAuth2 позволяет авторизоваться на удаленном сервисе. Сервис должен поддерживать данный протокол. После авторизации возможно получение необходимых данных.
Оставьте комментарий
Только зарегистрированные пользователи могут оставлять комментарии. Пожалуйста войдите или пройдите регистрацию.
Можно авторизоваться, используя социальную сеть-
-
-