canonical: https://jentic.com/apis/botnotice.app/botnotice

# Botnotice App BotNotice API

The BotNotice API displays a visible 'you are talking to AI' notice beside a website's chat and keeps a tamper-evident record of every notice shown. It checks consent before an AI phone call is placed, records and revokes that consent per number, and stores a receipt for each call alongside the opening disclosure the call must use. A free scan endpoint inspects any site for chat tools, voice agents, and an existing notice, and a maintained dataset tracks AI disclosure laws and pending bills by jurisdiction.

## For AI agents

Check and record consent before AI phone calls, show an AI-disclosure notice on a website's chat, store a receipt per call, and register content provenance. Includes a free site scan and a dataset of AI disclosure laws.

## Scope

Does not place phone calls, send messages, or provide legal advice. Use for AI disclosure notices, call-consent records, and content provenance only.

## Capabilities

- Check whether an AI phone call may be placed to a number before dialing
- Record and revoke a person's consent to receive AI calls
- Store a tamper-evident receipt and opening disclosure for each AI call
- Scan any website for chat tools, voice agents, and an existing AI notice
- Register media as it is created or uploaded to a content provenance log
- Look up tracked AI disclosure laws and pending bills by jurisdiction

## Use cases

### Agent-Gated AI Call Consent Check

An AI voice agent connected to the BotNotice API can confirm it is allowed to call a number before it dials. The agent sends the number to the consent-check endpoint, reads back whether consent is on record, and fetches the voice policy that states the disclosure the call must open with, so the dialer only proceeds for numbers that have agreed and always leads with the required notice.

Example prompt: Call the consent-check endpoint for a phone number, and if consent is on record, fetch the voice policy and return the opening disclosure the agent must read

### Website AI Chat Disclosure Audit

Before launching a chatbot, a team can scan its own or a competitor's site with the BotNotice API to detect chat tools, voice agents, and whether an AI notice is already present. The scan endpoint needs no key, so an agent can audit many sites in sequence and report which ones are missing the 'you are talking to AI' disclosure that several jurisdictions now require.

Example prompt: Run the scan endpoint against a list of website URLs and return which sites have no AI disclosure notice present

### AI Disclosure Law Lookup

Compliance and legal teams need to know which AI disclosure rules apply where. The BotNotice API serves a maintained dataset of tracked AI disclosure laws, including pending bills, as JSON or CSV, and a single law can be pulled in full by its slug. An agent can use this to answer which jurisdictions require a chatbot or voice-call disclosure without maintaining its own legal register.

Example prompt: Fetch the AI disclosure law dataset and return every jurisdiction whose rules cover automated phone calls

### Call Receipt and Content Provenance Records

To prove disclosure happened, the BotNotice API stores a receipt for each AI call through the voice-event endpoint and registers media through the content-ingest endpoint as it is created or uploaded. This builds a tamper-evident record a team can produce if a regulator or customer asks whether a given call opened with the required notice.

Example prompt: Post a voice event receipt for a completed AI call recording that the opening disclosure was played

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/api/scan` | Check a website for chat tools, voice agents, and an existing AI notice |
| POST | `/api/consent/check` | Pre-dial check whether an AI call may be placed to a number |
| POST | `/api/consent` | Record that a person agreed to receive AI calls |
| POST | `/api/consent/revoke` | Revoke consent for a number |
| GET | `/api/voice/policy` | The opening disclosure a call for this site must use |
| POST | `/api/voice/event` | Store the receipt for a completed call |
| POST | `/api/ingest/content` | Register media as it is created or uploaded |
| GET | `/datasets/ai-disclosure-laws.json` | Every tracked AI disclosure law with pending bills |

## Key resources

- **Consent** — Record, check, and revoke a person's consent to receive AI phone calls, keyed to the site's voice token
- **Voice** — Fetch the opening disclosure a call for the site must use, and post a receipt for each call placed
- **Content register** — Register media as it is created or uploaded to build a content provenance record
- **Free tools** — Scan a website for chat tools, voice agents, and an existing AI notice without a key
- **Law dataset** — Every tracked AI disclosure law and pending bill, served as JSON or CSV, or one law in full by slug

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 63 / 100
- **Maturity:** AI-Aware
- **Dimensions:**
  - Foundational Compliance: 90 / 100
  - Developer Experience & Jentic Compatibility: 61 / 100
  - AI-Readiness & Agent Experience: 44 / 100
  - Agent Usability: 94 / 100
  - Security: 60 / 100
  - AI Discoverability: 66 / 100
- **View full report:** https://jentic.com/apis/botnotice.app/botnotice/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring the BotNotice API by hand means juggling two per-site bearer tokens, remembering which endpoints are open and which need a token, and threading the voice policy into your dialer. Through Jentic you install once, import BotNotice from the API Directory, store the tokens once, and your agent calls it.
- **Permission scoping:** BotNotice carries the site in its per-site token and the phone number in the request body, so rules bound which operations your agent may call rather than which site or number. You can let it call the consent-check and voice-policy operations to verify a call before it happens without granting the consent-revoke or content-register operations.
- **Credential handling:** Your BotNotice tokens are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'check consent before an AI phone call' or 'scan a site for an AI notice', and Jentic returns the matching BotNotice operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Osano** — Broad consent and privacy compliance management rather than AI-specific call and chat disclosure.
- **Iubenda** — Consent and legal-document compliance tooling, broader than BotNotice's AI disclosure focus.
- **Retell AI** — Builds the AI voice agents whose calls BotNotice gates for consent and disclosure.
- **Bland AI** — Places AI phone calls that BotNotice can consent-check and attach a receipt to.

## FAQ

### What authentication does the BotNotice API use?

The BotNotice API uses per-site bearer tokens per its OpenAPI spec: a voice token (starting with bni_) for the consent and voice endpoints and a content-register token for the content-ingest endpoint, both issued from the dashboard. The free site scan and the AI-disclosure law dataset need no key. Through Jentic each token is stored once by your own self-hosted instance and injected at call time, so it never sits in your agent's prompt or logs.

### Is there a BotNotice MCP server?

You do not need an MCP server to give your agent the BotNotice API. Jentic connects it directly from the API Directory: import it, store your site token once, and your agent calls the consent, voice, and scan endpoints on demand. Operations are discovered when needed, so no extra server's tool definitions are loaded into the agent's context.

### Can I limit what my agent is allowed to do with the BotNotice API?

Yes. Write a rule that allows only the consent-check and voice-policy operations, so the agent can confirm a number may be called and read the required opening disclosure, but cannot record or revoke consent or register content. Every call it makes is logged, so you can audit exactly what the agent touched.

### Can I check consent before an AI phone call with the BotNotice API?

Yes. Send the phone number to the pre-dial check at `/api/consent/check` and it returns whether that number has consent on record, which lets a voice agent decide to proceed or stop. You record consent with `/api/consent`, revoke it with `/api/consent/revoke`, and read the mandatory opening line for the site from `/api/voice/policy.`

### What are the rate limits for the BotNotice API?

The OpenAPI spec does not specify rate limits for the BotNotice API. Check the documentation and dashboard at https://botnotice.app for current limits and plan allowances before running an agent at volume.

### How do I check call consent with the BotNotice API through Jentic?

Search Jentic for 'check consent before an AI phone call' and it returns the POST `/api/consent/check` operation with its input schema. Pass the phone number and the agent gets back whether consent is on record so it can gate the dial. To run it on your own infrastructure, install Jentic One from its GitHub repo.
