# UK AI Guard: Data Act 2025 Compliance Scanner (`automationnation/uk-ai-guard`) Actor

Audit your UK website for April 2026. Detects hidden AI tracking, automated decision-making (ADM) signals, and privacy gaps under the Data Act 2025. Generates a custom, legally-aligned AI Disclosure Statement to help you avoid £7.5M+ ICO penalties. Essential for UK-based SMEs and web agencies.

- **URL**: https://apify.com/automationnation/uk-ai-guard.md
- **Developed by:** [Nathan Carter](https://apify.com/automationnation) (community)
- **Categories:** AI, Automation, Other
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $5,000.00 / 1,000 compliance audit & disclosure reports

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

### UK AI Guard: Data Act 2025 Compliance Scanner

![UK Data Act](https://img.shields.io/badge/Data%20(Use%20%26%20Access)%20Act%202025-Verified-green) ![ICO Ready](https://img.shields.io/badge/ICO%20Audit-Ready-brightgreen)

> **Pricing:** ICO compliance consultants charge £3,000/month on retainer. This Actor audits your full pipeline on-demand — pay per run, no lock-in, 90% cheaper.


**Is your site compliant with the 2026 Digital Services mandates? 60-second audit for AI disclosure gaps. Includes ready-to-paste legal disclosure text.**

The UK Digital Services Act 2026 and ICO AI Auditing Framework require any organisation using AI to make **explicit disclosures** to users. Non-compliance carries fines of up to **£7.5M or 2% of global turnover**. This Actor crawls your website in under 60 seconds, detects every hidden AI signal, checks for required disclosure pages, and outputs a **PDF Compliance Gap Report** plus a **ready-to-paste legal disclosure snippet** for your footer.

Try it on the [Apify platform](https://apify.com) — no sign-up required.

---

### Why use UK AI Transparency Guard?

- **60-second compliance check.** Faster than any manual audit. Paste your URL, get your report.
- **Detects hidden AI tools.** Flags OpenAI, Anthropic, Intercom AI, Drift, Tidio, Dialogflow, and 10+ other services embedded in your site — even ones your development team may have forgotten.
- **PDF-ready Gap Report.** Professional compliance report you can hand to your legal team or board immediately.
- **Done-for-you legal disclosure.** Pre-written 2026 UK DSA-compliant footer text, ready to paste. Zero legal drafting time.
- **ICO AI Auditing Framework aligned.** Checks against published UK ICO requirements, not generic GDPR boilerplate.

---

### How to use UK AI Transparency Guard

1. Click **Try for free** on the Actor page.
2. Enter your **Target Website URL** (e.g. `https://yourcompany.co.uk`).
3. Enter your **Company Name** (used in the generated legal disclosure).
4. Click **Start**. The audit completes in under 60 seconds.
5. Go to **Storage → Key-Value Store** and download:
   - `compliance-report.pdf` — your full Gap Report
   - `ai-disclosure-snippet.html` — ready-to-paste footer disclosure
6. Review the **Dataset** tab for the structured findings summary.

---

### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `targetUrl` | String | Yes | Full URL of the website to audit |
| `companyName` | String | Yes | Legal company name for the disclosure snippet |

Example input:

```json
{
    "targetUrl": "https://mybusiness.co.uk",
    "companyName": "My Business Ltd"
}
````

***

### Output

#### Dataset item example

```json
{
    "companyName": "My Business Ltd",
    "targetUrl": "https://mybusiness.co.uk",
    "auditDate": "05 April 2026",
    "overallRisk": "HIGH",
    "aiSignalsFound": [
        { "type": "script", "detail": "OpenAI API integration detected", "severity": "HIGH" },
        { "type": "script", "detail": "Intercom (AI chat features) detected", "severity": "MEDIUM" }
    ],
    "disclosurePageFound": false,
    "transparencyNoticeFound": false,
    "complianceGaps": [
        {
            "requirement": "AI Transparency Policy Page",
            "status": "MISSING",
            "remediation": "Create an /ai-policy page and link from your footer."
        }
    ],
    "gapsCount": 2,
    "pagesChecked": ["https://mybusiness.co.uk", "https://mybusiness.co.uk/privacy"]
}
```

#### Key-Value Store outputs

| Key | Format | Description |
|---|---|---|
| `compliance-report.pdf` | PDF | Full A4 compliance gap report, ready to print or share |
| `ai-disclosure-snippet.html` | HTML | Copy-paste footer disclosure for your website |

***

### What AI signals does it detect?

| Provider | Severity |
|---|---|
| OpenAI API | HIGH |
| Anthropic / Claude API | HIGH |
| Google Gemini | HIGH |
| Cohere, Mistral | HIGH |
| Intercom AI Chat | MEDIUM |
| Drift, Tidio, Botpress | MEDIUM |
| Dialogflow, Voiceflow | MEDIUM |
| Zendesk AI, Freshworks AI | LOW |
| Inline GPT/LLM script references | MEDIUM |

***

### Pricing

This Actor is priced as a **high-value legal document generator**, not a simple scraper.

| Tier | Price |
|---|---|
| Per run (recommended) | **$5.00 to start / $10.00 per result** |

- One run = one website = one compliance report + one legal disclosure snippet.
- **Free tier** on Apify covers ~1–2 test runs.
- For agency use (bulk audits), contact us for volume pricing.

***

### Tips

- **Run before any AI tool launch.** Before adding a new AI chatbot or analytics tool to your site, run a pre- and post-audit to update your disclosure.
- **Share the PDF with your legal team.** The report is structured as a professional compliance document for board-level review.
- **Schedule monthly runs.** Your AI tool stack changes — set up a monthly scheduled Actor run to catch new compliance gaps automatically.
- **Paste the snippet into your CMS.** The generated HTML works with any website builder — Webflow, WordPress, Shopify, Squarespace.

***

### FAQ & Disclaimers

**What is the UK Digital Services Act 2026?**
The UK DSA 2026 extends digital transparency obligations to companies using AI tools that process UK user data. Fines of up to £7.5M or 2% of global annual turnover apply for material non-compliance.

**Is the generated disclosure legally sufficient?**
The snippet meets the minimum public disclosure requirements under the 2026 ICO AI Auditing Framework. It is not a substitute for legal advice — consult a qualified solicitor to confirm your specific obligations.

**Does this Actor modify my website?**
No. It reads only publicly accessible pages and produces a report. All site changes are the responsibility of the site owner.

**Known limitations**

- Server-side AI integrations (not reflected in front-end scripts) cannot be detected.
- Sites blocking crawlers may return incomplete results.

**Support**
Open an issue in the Issues tab. Custom bulk audit pipelines and white-label reporting available on request.

# Actor input Schema

## `targetUrl` (type: `string`):

The website to audit for AI disclosure compliance (e.g. https://yourcompany.co.uk).

## `companyName` (type: `string`):

Legal company name to embed in the generated disclosure snippet.

## Actor input object example

```json
{
  "targetUrl": "https://example.co.uk",
  "companyName": "Example Ltd"
}
```

# Actor output Schema

## `dataset` (type: `string`):

No description

## `report` (type: `string`):

No description

## `disclosure` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "targetUrl": "https://example.co.uk",
    "companyName": "Example Ltd"
};

// Run the Actor and wait for it to finish
const run = await client.actor("automationnation/uk-ai-guard").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "targetUrl": "https://example.co.uk",
    "companyName": "Example Ltd",
}

# Run the Actor and wait for it to finish
run = client.actor("automationnation/uk-ai-guard").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "targetUrl": "https://example.co.uk",
  "companyName": "Example Ltd"
}' |
apify call automationnation/uk-ai-guard --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=automationnation/uk-ai-guard",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "UK AI Guard: Data Act 2025 Compliance Scanner",
        "description": "Audit your UK website for April 2026. Detects hidden AI tracking, automated decision-making (ADM) signals, and privacy gaps under the Data Act 2025. Generates a custom, legally-aligned AI Disclosure Statement to help you avoid £7.5M+ ICO penalties. Essential for UK-based SMEs and web agencies.",
        "version": "0.1",
        "x-build-id": "e0GlXGUtJsm2Sx7LC"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/automationnation~uk-ai-guard/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-automationnation-uk-ai-guard",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/automationnation~uk-ai-guard/runs": {
            "post": {
                "operationId": "runs-sync-automationnation-uk-ai-guard",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/automationnation~uk-ai-guard/run-sync": {
            "post": {
                "operationId": "run-sync-automationnation-uk-ai-guard",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "targetUrl",
                    "companyName"
                ],
                "properties": {
                    "targetUrl": {
                        "title": "Target Website URL",
                        "type": "string",
                        "description": "The website to audit for AI disclosure compliance (e.g. https://yourcompany.co.uk)."
                    },
                    "companyName": {
                        "title": "Company Name",
                        "type": "string",
                        "description": "Legal company name to embed in the generated disclosure snippet."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
