Collects as they arrive, acts daily
Get an evening digest of entry changes
At the end of each day you get one email listing the entries that were created or edited.
- Runs
- Collects as they arrive, acts daily
- Apps
- Contentful
- AI
- Not needed
- Access
- content_management_manage
Send this to your assistant
Create a ClickRuntime automation: keep track of Contentful entries created or saved today and email me the list at 6pm, grouped into new and updated.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
Content teams change a lot in a day. Writers draft entries in Contentful, editors fix titles, a developer imports a batch, and by afternoon nobody is sure what is new. Notifying people about each change would flood them, yet saying nothing leaves reviewers and stakeholders in the dark.
This collects Contentful events throughout the day as entries are created or updated, stores them, and acts once daily by compiling everything into a single email. People get one organized summary rather than a stream of separate notifications.
It is a good fit for editors, product owners and localization managers who want to know what content changed without being interrupted. Events are stored as they arrive from Contentful and then compiled together, so the daily email lists each entry once with what happened to it, in a form that is easy to scan.
What you get out of it
Get the whole day's changes in one place
A single email replaces dozens of small messages. Reviewers read it once and know what needs checking, instead of piecing it together from scattered alerts. Reviewers read one email and know what needs checking, instead of assembling the picture from many small notifications.
Keep editors informed without interrupting them
Because events are collected and sent daily, nobody is pulled out of focused work. The information arrives at a predictable time. Editors are not pulled out of focused work by pings, because the information arrives once a day at a predictable time.
Catch unwanted changes by end of day
An accidental edit to a key entry shows up in the daily list. It can be reverted while it is still fresh, before it ships to the site. An accidental edit to a key entry shows up in the list the same day, and can be reverted before it reaches the site.
Help localization and QA follow content
Translators and testers see which entries are new or revised. They can pick up changes promptly instead of discovering them at release. Translators and testers see which entries are new or revised, and can pick them up promptly instead of discovering them at release.
Create a daily content log
The digests record what changed and when. For audits or editorial reviews, that is a useful trail of how content evolved. The daily digests record what changed and when, which is helpful in audits and in editorial reviews of how content evolved.
How it works
What happens, step by step
Each time an entry is created or saved in Contentful, ClickRuntime stores a note of it.
At the end of the day, it gathers everything stored.
You get one email listing the new entries and the edited ones, then the list starts fresh for tomorrow.
Before it runs live
- Connect Contentful
- Paste your automation's link into the other app's webhook settings
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Act only on the items that match your own rules, and skip the rest
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Slack
- Combine it with other Contentful steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_event, on_trigger, state, notify
@on_event
def remember(event):
topic = (event.header("X-Contentful-Topic") or "")
if not topic.endswith(("Entry.create", "Entry.save", "Entry.auto_save")):
return {"stored": False}
entry = event.json or {}
title = next(iter((entry.get("fields", {}).get("title") or {}).values()), entry["sys"]["id"])
seen = state.get("today") or {}
kind = "new" if topic.endswith("create") or seen.get(entry["sys"]["id"], {}).get("kind") == "new" else "updated"
seen[entry["sys"]["id"]] = {"title": title, "kind": kind}
state.set("today", seen)
return {"stored": True}
@on_trigger
def send(event):
seen = state.get("today") or {}
if seen:
new = [e["title"] for e in seen.values() if e["kind"] == "new"]
upd = [e["title"] for e in seen.values() if e["kind"] == "updated"]
notify.email_me(f"Contentful today: {len(new)} new, {len(upd)} updated",
"New:\n" + "\n".join(f"- {t}" for t in new) + "\n\nUpdated:\n" + "\n".join(f"- {t}" for t in upd))
state.set("today", {})
return {"entries": len(seen)}FAQ
Common questions
Why does it wait until the end of the day?
Does it include deleted entries?
How do I connect Contentful?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Tell Slack when a Contentful entry goes live
Each time an entry is published, your channel sees its title and content type straight away.
See how it worksList entries that were never published
Each Monday you see the drafts sitting in your space that have never gone live.
See how it worksCollect unsubscribes and bounces for your list
Unsubscribe requests and bounced emails are labelled, and you get the addresses once a day to clean your list.
See how it worksKeep exploring
Set up “Get an evening digest of entry changes” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.