From b435106cc0fa4454ce21525fd876281a82813687 Mon Sep 17 00:00:00 2001 From: James Borlase Date: Tue, 28 Jul 2026 18:40:40 +0200 Subject: [PATCH 1/2] Add free trial note to Signals tutorial intros Add a Snowplow free trial access note to the intro page of the seven Signals tutorials that were missing one, and retarget "get access" links from the Signals connection page to the Signals setup page. Co-Authored-By: Claude Fable 5 --- tutorials/signals-agentic-accelerator/intro.md | 6 +++++- tutorials/signals-ai-agent-context/introduction.md | 6 +++++- tutorials/signals-google-adk-agent/introduction.md | 6 +++++- tutorials/signals-interventions/start.md | 4 ++++ tutorials/signals-ml-prospect-scoring/intro.md | 6 +++++- tutorials/signals-personalize-travel/intro.md | 6 +++++- tutorials/signals-quickstart/start.md | 10 +++++++--- 7 files changed, 36 insertions(+), 8 deletions(-) diff --git a/tutorials/signals-agentic-accelerator/intro.md b/tutorials/signals-agentic-accelerator/intro.md index 4dd9c525f..2fe53e1cf 100644 --- a/tutorials/signals-agentic-accelerator/intro.md +++ b/tutorials/signals-agentic-accelerator/intro.md @@ -36,9 +36,13 @@ Together, Signals provides real-time behavioral context while AgentCore Memory p ## Prerequisites -* A Snowplow CDI pipeline with Signals enabled - the agent fetches behavioral attributes from the Signals Profiles API +* A Snowplow CDI pipeline with [Signals enabled](/docs/signals/setup/) - the agent fetches behavioral attributes from the Signals Profiles API * An AWS account with [Amazon Bedrock](https://aws.amazon.com/bedrock/) access and AgentCore Memory access - the agent runs on Claude via Bedrock, and your IAM user needs permissions for `bedrock:InvokeModel`, `bedrock-agentcore:*`, and `iam:PassRole` (scoped to `bedrock-agentcore.amazonaws.com`) to create AgentCore Memory resources * [AWS CLI](https://aws.amazon.com/cli/) installed and configured - used to authenticate with AWS services from the notebook * Python 3.11 or later - required by the Strands Agents framework * Familiarity with Python and running Jupyter notebooks +:::note[Snowplow account required] +The behavioral attributes in this accelerator come from events flowing through a real Snowplow pipeline. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +::: + diff --git a/tutorials/signals-ai-agent-context/introduction.md b/tutorials/signals-ai-agent-context/introduction.md index 2ed06ba30..13dbfa638 100644 --- a/tutorials/signals-ai-agent-context/introduction.md +++ b/tutorials/signals-ai-agent-context/introduction.md @@ -47,10 +47,14 @@ The flow works like this: This tutorial requires: -* A Snowplow account with [Signals deployed](/docs/signals/connection/) +* A Snowplow account with [Signals enabled](/docs/signals/setup/) * Node.js 18+ and npm/pnpm * A [Vercel AI Gateway API key](https://vercel.com/docs/ai-gateway/getting-started) * This tutorial uses `openai/gpt-4o-mini` via AI Gateway, but any supported model works * Basic familiarity with Next.js and TypeScript +:::note[Snowplow account required] +Signals computes the session attributes from real events flowing through your pipeline, so you need a Snowplow account with Signals enabled. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +::: + This tutorial should take approximately 30 minutes to complete. diff --git a/tutorials/signals-google-adk-agent/introduction.md b/tutorials/signals-google-adk-agent/introduction.md index f5b30a40d..ef135daaa 100644 --- a/tutorials/signals-google-adk-agent/introduction.md +++ b/tutorials/signals-google-adk-agent/introduction.md @@ -45,10 +45,14 @@ The flow works like this: ## Prerequisites -- A Snowplow account with [Signals deployed](/docs/signals/connection/) +- A Snowplow account with [Signals enabled](/docs/signals/setup/) - Node.js 18+ and npm/pnpm - Python 3.12+ - A Google AI Studio API key - [AI Studio](https://aistudio.google.com/app/apikey) - [Vertex AI](https://docs.cloud.google.com/agent-builder/agent-engine/quickstart-adk) - Basic familiarity with React, Python, and TypeScript + +:::note[Snowplow account required] +The agent fetches session attributes that Signals computes from your live event stream, so you need a Snowplow account with Signals enabled. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +::: diff --git a/tutorials/signals-interventions/start.md b/tutorials/signals-interventions/start.md index bc41c64f4..b108acdef 100644 --- a/tutorials/signals-interventions/start.md +++ b/tutorials/signals-interventions/start.md @@ -14,6 +14,10 @@ This tutorial provides a hands-on introduction to Signals. You'll use Python to To follow this tutorial, you'll need a Snowplow account with Signals enabled. +:::note[Snowplow account required] +If you don't have a Snowplow account, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +::: + This tutorial should take approximately 20-30 minutes to complete. ## What you'll learn diff --git a/tutorials/signals-ml-prospect-scoring/intro.md b/tutorials/signals-ml-prospect-scoring/intro.md index 8cf0f6553..0bfaed388 100644 --- a/tutorials/signals-ml-prospect-scoring/intro.md +++ b/tutorials/signals-ml-prospect-scoring/intro.md @@ -36,10 +36,14 @@ We're calculating aggregated attributes based off real-time stream event data, s ## Prerequisites -1. Follow the [Connect to Signals](/docs/signals/connection/) page to set up the Signals connection in the Snowplow Console +1. [Enable Signals](/docs/signals/setup/) for your Snowplow account 2. Open this [Google Colab](https://colab.research.google.com/github/snowplow-incubator/signals-notebooks/blob/main/web/web_prospect_scoring_end_to_end.ipynb) notebook to follow along 3. [Optional] Integrate Snowplow into your website +:::note[Snowplow account required] +Signals calculates the prospect attributes from events flowing through your Snowplow pipeline, so you need a Snowplow account with Signals enabled. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +::: + ## Architecture The system consists of three main blocks: diff --git a/tutorials/signals-personalize-travel/intro.md b/tutorials/signals-personalize-travel/intro.md index d5c566611..1a9df115f 100644 --- a/tutorials/signals-personalize-travel/intro.md +++ b/tutorials/signals-personalize-travel/intro.md @@ -21,9 +21,13 @@ You'll build a complete personalization system that captures user interests thro ## Prerequisites -* Signals enabled for your CDI pipeline +* [Signals enabled](/docs/signals/setup/) for your CDI pipeline * The [Snowplow Inspector](https://chromewebstore.google.com/detail/snowplow-inspector/maplkdomeamdlngconidoefjpogkmljm) browser extension installed * Familiarity with running Jupyter notebooks, either locally or in Google Colab * [Docker](https://www.docker.com/) installed and configured * Access to the Jupyter [notebook](https://colab.research.google.com/github/snowplow/documentation/blob/main/static/notebooks/signals-personalize-travel-demo.ipynb) * Optional: an [OpenAI API key](https://platform.openai.com/api-keys) to customize agent responses + +:::note[Snowplow account required] +Signals processes the behavioral data from events flowing through your Snowplow pipeline, so you need a Snowplow account with Signals enabled. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +::: diff --git a/tutorials/signals-quickstart/start.md b/tutorials/signals-quickstart/start.md index 0cde4ea83..bb98c36f1 100644 --- a/tutorials/signals-quickstart/start.md +++ b/tutorials/signals-quickstart/start.md @@ -22,10 +22,14 @@ This tutorial assumes that you have: * Snowplow page view tracking on a web application * Snowflake warehouse -* A Signals connection +* Signals enabled on your Snowplow account -## Connecting to Signals +:::note[Snowplow account required] +Signals calculates attributes from events flowing through your Snowplow pipeline, so you need a Snowplow account to complete this tutorial. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +::: + +## Enable Signals Log in to [Console](https://console.snowplowanalytics.com) and navigate to the **Signals** section. -You'll need to [set up a Signals connection](/docs/signals/connection/) if you don't have one yet. +You'll need to [enable Signals](/docs/signals/setup/) if you haven't already. From 77083c0b8fc7d3bfe88cb5b37a0b97f90af17cc6 Mon Sep 17 00:00:00 2001 From: James Borlase Date: Thu, 30 Jul 2026 14:45:54 +0200 Subject: [PATCH 2/2] Address style review: sign-up wording, drop restated prerequisites, link text - 'sign up for' where the antecedent is an account (quickstart, interventions) - notes no longer restate the adjacent prerequisite (5 tutorials) - imperative/titled link text for /docs/signals/setup/ across intros - retarget python-tracking-and-signals to /docs/signals/setup/ for uniformity - quickstart heading echo reworded; stray trailing blank line trimmed Co-Authored-By: Claude Fable 5 --- tutorials/python-tracking-and-signals/introduction.md | 2 +- tutorials/signals-agentic-accelerator/intro.md | 3 +-- tutorials/signals-ai-agent-context/introduction.md | 4 ++-- tutorials/signals-google-adk-agent/introduction.md | 4 ++-- tutorials/signals-interventions/start.md | 2 +- tutorials/signals-ml-prospect-scoring/intro.md | 2 +- tutorials/signals-personalize-travel/intro.md | 4 ++-- tutorials/signals-quickstart/start.md | 4 ++-- 8 files changed, 12 insertions(+), 13 deletions(-) diff --git a/tutorials/python-tracking-and-signals/introduction.md b/tutorials/python-tracking-and-signals/introduction.md index 36e38f659..cb25ceefd 100644 --- a/tutorials/python-tracking-and-signals/introduction.md +++ b/tutorials/python-tracking-and-signals/introduction.md @@ -30,7 +30,7 @@ This tutorial should take around 45 minutes to complete. This tutorial assumes that you have: * a Snowplow pipeline with a [Collector endpoint](/docs/sources/) you can send events to, because Signals computes attributes from your live event stream -* [Signals enabled](/docs/signals/get-started/) on your Snowplow account, since the personalization features depend on it +* [Signals enabled](/docs/signals/setup/) on your Snowplow account, since the personalization features depend on it * Python 3.9 or later, to run the SDKs * basic familiarity with Python and with [Snowplow events, entities, and schemas](/docs/fundamentals/events/) diff --git a/tutorials/signals-agentic-accelerator/intro.md b/tutorials/signals-agentic-accelerator/intro.md index 2fe53e1cf..c121d9bee 100644 --- a/tutorials/signals-agentic-accelerator/intro.md +++ b/tutorials/signals-agentic-accelerator/intro.md @@ -36,7 +36,7 @@ Together, Signals provides real-time behavioral context while AgentCore Memory p ## Prerequisites -* A Snowplow CDI pipeline with [Signals enabled](/docs/signals/setup/) - the agent fetches behavioral attributes from the Signals Profiles API +* A Snowplow CDI pipeline with Signals enabled (see [Set up Signals](/docs/signals/setup/)) - the agent fetches behavioral attributes from the Signals Profiles API * An AWS account with [Amazon Bedrock](https://aws.amazon.com/bedrock/) access and AgentCore Memory access - the agent runs on Claude via Bedrock, and your IAM user needs permissions for `bedrock:InvokeModel`, `bedrock-agentcore:*`, and `iam:PassRole` (scoped to `bedrock-agentcore.amazonaws.com`) to create AgentCore Memory resources * [AWS CLI](https://aws.amazon.com/cli/) installed and configured - used to authenticate with AWS services from the notebook * Python 3.11 or later - required by the Strands Agents framework @@ -45,4 +45,3 @@ Together, Signals provides real-time behavioral context while AgentCore Memory p :::note[Snowplow account required] The behavioral attributes in this accelerator come from events flowing through a real Snowplow pipeline. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. ::: - diff --git a/tutorials/signals-ai-agent-context/introduction.md b/tutorials/signals-ai-agent-context/introduction.md index 13dbfa638..978492031 100644 --- a/tutorials/signals-ai-agent-context/introduction.md +++ b/tutorials/signals-ai-agent-context/introduction.md @@ -47,14 +47,14 @@ The flow works like this: This tutorial requires: -* A Snowplow account with [Signals enabled](/docs/signals/setup/) +* A Snowplow account with Signals enabled (see [Set up Signals](/docs/signals/setup/)) * Node.js 18+ and npm/pnpm * A [Vercel AI Gateway API key](https://vercel.com/docs/ai-gateway/getting-started) * This tutorial uses `openai/gpt-4o-mini` via AI Gateway, but any supported model works * Basic familiarity with Next.js and TypeScript :::note[Snowplow account required] -Signals computes the session attributes from real events flowing through your pipeline, so you need a Snowplow account with Signals enabled. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +Signals computes the session attributes from real events flowing through your pipeline. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. ::: This tutorial should take approximately 30 minutes to complete. diff --git a/tutorials/signals-google-adk-agent/introduction.md b/tutorials/signals-google-adk-agent/introduction.md index ef135daaa..6d5c5ad60 100644 --- a/tutorials/signals-google-adk-agent/introduction.md +++ b/tutorials/signals-google-adk-agent/introduction.md @@ -45,7 +45,7 @@ The flow works like this: ## Prerequisites -- A Snowplow account with [Signals enabled](/docs/signals/setup/) +- A Snowplow account with Signals enabled (see [Set up Signals](/docs/signals/setup/)) - Node.js 18+ and npm/pnpm - Python 3.12+ - A Google AI Studio API key @@ -54,5 +54,5 @@ The flow works like this: - Basic familiarity with React, Python, and TypeScript :::note[Snowplow account required] -The agent fetches session attributes that Signals computes from your live event stream, so you need a Snowplow account with Signals enabled. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +The agent fetches session attributes that Signals computes from your live event stream. If you don't have a pipeline, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. ::: diff --git a/tutorials/signals-interventions/start.md b/tutorials/signals-interventions/start.md index b108acdef..705b1fb68 100644 --- a/tutorials/signals-interventions/start.md +++ b/tutorials/signals-interventions/start.md @@ -15,7 +15,7 @@ This tutorial provides a hands-on introduction to Signals. You'll use Python to To follow this tutorial, you'll need a Snowplow account with Signals enabled. :::note[Snowplow account required] -If you don't have a Snowplow account, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +If you don't have a Snowplow account, you can sign up for a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. ::: This tutorial should take approximately 20-30 minutes to complete. diff --git a/tutorials/signals-ml-prospect-scoring/intro.md b/tutorials/signals-ml-prospect-scoring/intro.md index 0bfaed388..92557853c 100644 --- a/tutorials/signals-ml-prospect-scoring/intro.md +++ b/tutorials/signals-ml-prospect-scoring/intro.md @@ -41,7 +41,7 @@ We're calculating aggregated attributes based off real-time stream event data, s 3. [Optional] Integrate Snowplow into your website :::note[Snowplow account required] -Signals calculates the prospect attributes from events flowing through your Snowplow pipeline, so you need a Snowplow account with Signals enabled. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +Signals calculates the prospect attributes from events flowing through your Snowplow pipeline. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. ::: ## Architecture diff --git a/tutorials/signals-personalize-travel/intro.md b/tutorials/signals-personalize-travel/intro.md index 1a9df115f..ceab4ccca 100644 --- a/tutorials/signals-personalize-travel/intro.md +++ b/tutorials/signals-personalize-travel/intro.md @@ -21,7 +21,7 @@ You'll build a complete personalization system that captures user interests thro ## Prerequisites -* [Signals enabled](/docs/signals/setup/) for your CDI pipeline +* [Enable Signals](/docs/signals/setup/) for your CDI pipeline * The [Snowplow Inspector](https://chromewebstore.google.com/detail/snowplow-inspector/maplkdomeamdlngconidoefjpogkmljm) browser extension installed * Familiarity with running Jupyter notebooks, either locally or in Google Colab * [Docker](https://www.docker.com/) installed and configured @@ -29,5 +29,5 @@ You'll build a complete personalization system that captures user interests thro * Optional: an [OpenAI API key](https://platform.openai.com/api-keys) to customize agent responses :::note[Snowplow account required] -Signals processes the behavioral data from events flowing through your Snowplow pipeline, so you need a Snowplow account with Signals enabled. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +Signals processes the behavioral data from events flowing through your Snowplow pipeline. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. ::: diff --git a/tutorials/signals-quickstart/start.md b/tutorials/signals-quickstart/start.md index bb98c36f1..24d049f9c 100644 --- a/tutorials/signals-quickstart/start.md +++ b/tutorials/signals-quickstart/start.md @@ -25,11 +25,11 @@ This tutorial assumes that you have: * Signals enabled on your Snowplow account :::note[Snowplow account required] -Signals calculates attributes from events flowing through your Snowplow pipeline, so you need a Snowplow account to complete this tutorial. If you don't have one, you can deploy and use a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. +Signals calculates attributes from events flowing through your Snowplow pipeline. If you don't have an account, you can sign up for a [Snowplow free trial](https://snowplow.io/get-started/snowplow-free-trial) to follow along. ::: ## Enable Signals Log in to [Console](https://console.snowplowanalytics.com) and navigate to the **Signals** section. -You'll need to [enable Signals](/docs/signals/setup/) if you haven't already. +If Signals isn't enabled for your organization yet, follow [Set up Signals](/docs/signals/setup/) first.