Amocrm to Google Spreadsheets Synchronizer, Xelaj Software
- Present
The task was to synchronize data between Amocrm and Google Spreadsheets, sheets were using as database-likely platform for writing various sheet scripts. Since there are no workable wrappers for the Amocrm API on golang, I had to write manually, in parallel describe OpenAPI specification. There was also a problem of finding updates from the sheets and correctly transferring them back to the Amo. As the result, the following things were created: 1) a micro-wrapper for base google API library, which allows you to work with tables as with full-fledged databases (including sql-like stuff), 2) a wrapper for AmoCRM, which allows you to work with their api, 3) a library for converting golang objects into a tabular format (using matrix utility lib), 4) a package for working with updates in tables, with the mechanics of notifications similar to longpoll. Three projects of them are open and available on gitlab. Also, the entire service was packaged in a nice tiny docker container, wrapped with metrics for prometheus, and working well for today.