feat: add API endpoint to retrieve secured Algolia API key for an EnterpriseCustomer #1039
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Ticket: ENT-10079
Adds a new API
GET /api/v1/enterprise-customer/<enterprise_uuid>/secured-algolia-api-key/
to return the following response structure:When using this secured Algolia API key to filter Algolia search results for all content available to an enterprise customer, no additional client-side
filters
are needed to be passed as the generated secured Algolia API key itself baked in filtering search results by anyCatalogQuery
associated with the customers'EnterpriseCatalog
records.By default, this secured Algolia API key is valid for 1 hour, though it is configurable via the Django setting
SECURED_ALGOLIA_API_KEY_EXPIRATION
. The expiration is returned as an ISO timestamp.Also included in this API response is a mapping of
EnterpriseCatalog
uuids to their associatedCatalogQuery
uuids. These mappings would be used by frontends when further filtering down all content available to the enterprise customer to a specific catalog, i.e.:filter
on the frontend for the found catalog query UUID.Post-review