adobe / adobe/spacecat-api-service
Implement analytics site integration hook (SITES-20864)
- Dominant language
- JavaScript
- Stars
- 10
- Forks
- 15
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 150
Description
**Is your feature request related to a problem? Please describe.**
After the automated setup triggered by a customer for integrating analytics for a specific site, completes, they need to be notified about the data collection scripts to embed into their site and the new reporting available to them.
**Describe the solution you'd like**
After the customer triggers the analytics integration for a specific site by using https://github.com/adobe/spacecat-api-service/issues/236, when the automated setup completes, that service/UI will call the hook API specified at https://github.com/adobe/spacecat-api-service/pull/188, with the artifacts of the setup.
SpaceCat needs to:
- store the artifacts of the setup in the config of the site, under `config.integrations.analytics`
- notify the customer on their channel about:
- the data collection scripts they need to embed into their site and how to do that (link to public documentation or list the steps in the message)
- the new reporting available to them
- (tbd) the rest of the artifacts of the setup
**Additional context**
Requires:
- changes to site data model to add in its config analytics integration with the minimum properties (dataCollection, reporting): https://github.com/adobe/spacecat-shared/tree/main/packages/spacecat-shared-data-access and document them in https://github.com/adobe-rnd/spacecat-infrastructure-docs/wiki/Entity-Schemas
- hook API implementation, with the minimum properties (siteId, dataCollection, reporting), based on: https://github.com/adobe/spacecat-api-service/pull/188
- customer notification via Slack
Contributor guide
Research direction
Review the hook contract in spacecat-api-service PR 188, the site data model in the spacecat-shared data-access package, and the Entity Schemas documentation. Implement the hook for siteId, dataCollection, and reporting, persist them under config.integrations.analytics, and verify that the customer receives the required Slack notification with script and reporting information.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- api, backend, databases, documentation
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100