Plug Kinto notifications to a collection endpoint.
Project description
kinto-changes tracks modifications of records in Kinto and stores the collection timestamps into a specific bucket and collection.
This plugin is useful to allow for polling on several collections changes with one HTTP request.
Install
pip install kinto-changes
Setup
In the Kinto settings:
kinto.includes = kinto_changes kinto.event_listeners = changes kinto.event_listeners.changes.use = kinto_changes.listener
Now everytime a record is modified, the list of current timestamps is available at GET /v1/buckets/monitor/collections/changes/records.
Filter collections
It is possible to choose which collections are monitored:
kinto.event_listeners.changes.collections = <list of URIs>
For example, to be notified of record updates in the certificates collection, or every collections of the settings bucket:
kinto.event_listeners.changes.collections = /buckets/blocklists/collections/certificates /buckets/settings
Permissions
By default the list of timestamps is readable by anonymous users (system.Everyone). But the list of authorized principals can be specified in settings:
kinto.event_listeners.changes.principals = system.Authenticated group:admins twitter:@natim
Advanced options
By default, the list of timestamps is available in the changes collection in the monitor bucket. This can be specified in settings:
kinto.event_listeners.changes.bucket = monitor kinto.event_listeners.changes.collection = changes
If specified in settings, the changes will have a http_host attribute. This can be used to distinguish changes from several Kinto instances.
kinto.http_host = website.domain.tld
Changelog
0.2.0 (2016-04-25)
Addition of the changes capability
0.1.0 (2015-12-22)
Initial code.
Bucket and collection name configuration.
Changes read permissions configuration.
Selection of buckets and collections to follow configuration.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.