Blueprints

Daily AI news digest to Notion with Slack notification

Source

yaml
id: ai-news-summary-notion
namespace: company.team

tasks:
  - id: chat_completion
    type: io.kestra.plugin.perplexity.ChatCompletion
    apiKey: "{{ secret('PERPLEXITY_API_KEY') }}"
    model: sonar
    messages:
      - type: USER
        content: "Can you compile a list of the most important news for today for a
          person living in Berlin, Germany? Please respond with a bulleted list
          of headline and a hyperlink to the text all as markdown."
    temperature: 0.7
  - id: create_notion_page
    type: io.kestra.plugin.notion.page.Create
    apiToken: "{{ secret('NOTION_API_KEY') }}"
    parentPageId: "{{ secret('NOTION_PARENT_PAGE_ID') }}" # The ID of the Notion page where new pages should be created
    title: "Daily News Summary from AI"
    content: "{{ outputs.chat_completion.outputText }}"

  - id: send_slack_notification
    type: io.kestra.plugin.notifications.slack.SlackIncomingWebhook
    url: "{{ secret('SLACK_WEBHOOK_URL') }}"
    messageText: "New Notion page created: {{ outputs.create_notion_page.url }}"

triggers:
  - id: daily_run
    type: io.kestra.plugin.core.trigger.Schedule
    cron: "0 0 * * *"
    disabled: true

description: |
  This Kestra flow generates a daily AI-curated news summary and publishes it to Notion, then notifies a Slack channel.
  Every day at 00:00 UTC, it:

    - Uses Perplexity (model: sonar) to compile a short markdown digest of the day’s top news
    - Creates a Notion page containing the generated summary
    - Sends a Slack notification with a direct link to the new Notion page

  The flow is configurable and suitable for both personal and team use. Provide the required API keys as secrets, adjust
  the Notion parent page/location, and tailor the prompt, schedule, or temperature as needed.

About this blueprint

Notifications AI Kestra

This Kestra flow produces a daily news summary using Perplexity and publishes it to Notion, followed by a Slack alert. At 00:00 UTC each day, it:

  • Calls Perplexity (sonar) to generate a markdown list of today’s most important news
  • Creates a Notion page with the generated content
  • Posts a Slack message containing a link to the page

Configuration:

  • Add secrets for the Perplexity API key (PERPLEXITY_API_KEY), Notion API token (NOTION_API_KEY), and Slack incoming webhook URL (SLACK_WEBHOOK_URL).
  • Set the Notion parentPageId where new pages should be created.
  • Adjust the prompt, model, temperature, or schedule (CRON) to fit your needs.
  • Optionally parameterize the location or audience in the prompt.

This automation keeps stakeholders informed with a concise, human-readable daily briefing delivered where they work.

Chat Completion

Create

Slack Incoming Webhook

Schedule

More Related Blueprints

New to Kestra?

Use blueprints to kickstart your first workflows.

Get started with Kestra