Skip to content

chudno/amo_crm_sdk

Repository files navigation

amoCRM SDK for Go

Go Report Card GoDoc License: MIT codecov GitHub Actions CodeQL Repo Size Last Commit

Эта библиотека предоставляет SDK на языке Go для работы с API amoCRM. Она позволяет полноценно взаимодействовать с amoCRM и работать со всеми типами сущностей.

Оглавление

Особенности

  • Поддержка OAuth 2.0 аутентификации
  • Поддержка долгоживущих токенов (Long-lived tokens) для серверных интеграций
  • Поддержка context.Context во всех публичных функциях
  • Работа со всеми основными сущностями amoCRM (сделки, контакты, компании, задачи, воронки, примечания, теги и т.д.)
  • Поддержка пользовательских полей
  • Утилиты для работы с вебхуками и URL-фильтрами
  • Полная документация на русском языке

Установка

go get github.com/chudno/amo_crm_sdk

Документация

SDK разделен на модули, каждый из которых отвечает за работу с определенной сущностью в amoCRM:

Основные модули

Модуль Описание Документация
auth Аутентификация в API amoCRM Подробнее
client Клиент для работы с API Подробнее

Сущности

Модуль Описание Документация
entities/leads Работа с лидами Подробнее
entities/contacts Работа с контактами Подробнее
entities/companies Работа с компаниями Подробнее
entities/tasks Работа с задачами Подробнее
entities/notes Работа с примечаниями Подробнее
entities/pipelines Работа с воронками и статусами Подробнее
entities/users Работа с пользователями Подробнее
entities/tags Работа с тегами Подробнее
entities/catalogs Работа с каталогами Подробнее
entities/catalog_elements Работа с элементами пользовательских каталогов Подробнее
entities/unsorted Работа с неразобранными заявками Подробнее
entities/files Работа с файлами Подробнее
entities/calls Работа со звонками Подробнее
entities/events Работа с событиями Подробнее
entities/segments Работа с сегментами Подробнее
entities/widgets Работа с виджетами Подробнее
entities/access_rights Работа с правами доступа Подробнее
entities/short_links Работа с короткими ссылками Подробнее
entities/mailing Работа с email-рассылками Подробнее
entities/sources Работа с источниками лидов Подробнее

Утилиты

Модуль Описание Документация
utils/custom_fields Работа с пользовательскими полями Подробнее
utils/webhooks Работа с вебхуками Подробнее
utils/urlfilters Конвертация URL-фильтров из веб-интерфейса в SDK Подробнее

Примеры использования

Примеры использования всех модулей приведены в соответствующих README.md файлах каждого модуля.

Тестирование

Для запуска тестов в проекте используется Docker. Все команды доступны через Makefile:

# Запуск всех проверок (unit-тесты, lint, fmt, cyclo)
make all

# Только unit-тесты
make test

# Проверка кода с помощью go vet
make lint

# Форматирование кода
make fmt

# Проверка цикломатической сложности
make cyclo

Интеграционные тесты

Интеграционные тесты выполняют реальные запросы к API amoCRM. Для их запуска необходимо задать переменные окружения:

export AMO_BASE_URL="https://your-domain.amocrm.ru"
export AMO_ACCESS_TOKEN="your_long_lived_token"

make integration

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages