canonical: https://jentic.com/apis/inite.ai/inite

# INITE AI Visibility

The INITE AI Visibility API exposes INITE's AI visibility audit and the company data behind it over HTTP. Two public reads return a structured company record (services, prices, the analyzer feature list, and the FAQ) and an embeddable SVG badge that prints the composite score of a shared audit report. Two JSON-RPC 2.0 surfaces carry the tool-driven side: one serves the portal, analyzer, and atlas rails for booking, identity checks, audits, and tool matching, and an Agent2Agent endpoint accepts tasks from another agent. Guests can call the open tools without a token, and an OpenID Connect token adds member tools and the account's own tier.

## For AI agents

Read INITE's structured company data, render an AI visibility score badge for a shared audit report, and call the portal, analyzer, and atlas tool rails or the Agent2Agent endpoint over JSON-RPC.

## Scope

Does not handle search engine keyword tracking, backlink analysis, or publishing website content. Use for INITE's AI visibility audit, its company data, and its agent task endpoints only.

## Capabilities

- Read the structured INITE company record, including services, prices, the service ladder, and the analyzer feature list, via `/api/ai-data`
- Render an SVG AI visibility badge for a shared audit report, choosing a flat or gradient style and a dark or light theme
- Call one tool rail at a time (portal, analyzer, or atlas) through the rail path parameter on `/api/mcp/{rail}`
- Run the analyzer rail's identity check and AI visibility audit as a guest, or with a token for the account's own tier
- Hand INITE a task over Agent2Agent v1.0 with methods such as SendMessage, GetTask, ListTasks, and CancelTask

## Use cases

### AI visibility checks from your agent through Jentic

An AI agent connected through Jentic checks how visible a website is to AI answer engines by calling INITE's analyzer rail on the JSON-RPC endpoint. A guest call returns the audit as a survey under per-address allowances, and adding an OpenID Connect token unlocks the account's own tier. Jentic gives the agent the operation and its input schema, so it does not have to read INITE's discovery documents first.

Example prompt: Call POST `/api/mcp/{rail}` with rail 'analyzer' and a JSON-RPC 2.0 body (jsonrpc '2.0', method set to the analyzer's audit tool call, params naming the site), then report the composite score

### Show an audit score on your site

After an audit, a site owner places INITE's badge on their own pages. The badge operation takes the public share id of the report in the report parameter and prints that report's composite score, with style set to flat or gradient and theme set to dark or light. The score is read from the report itself, never from the URL, and without a report the badge shows no score.

Example prompt: Call GET `/api/badge` with report 'abc123', style 'flat', and theme 'light', then return the SVG markup for embedding

### Answer questions about INITE's offer

Agents that need to answer questions about what INITE sells read the company record from the public data endpoint. It returns services, prices, the service ladder, site routes, the analyzer feature list, and the FAQ, with English as the canonical language. The shape follows what INITE currently sells, so read fields rather than pinning to a fixed schema.

Example prompt: Call GET `/api/ai-data` and summarise the listed services with their prices

### Agent-to-agent task handoff

Another agent can delegate work to INITE over Agent2Agent v1.0. It sends SendMessage to start a task, then uses GetTask or ListTasks to follow progress and CancelTask to stop one. Task states arrive as ProtoJSON enums such as TASK_STATE_WORKING, and only A2A-Version 1.0 is accepted.

Example prompt: Call POST `/api/a2a` with header A2A-Version '1.0' and body jsonrpc '2.0', method 'SendMessage', then poll with method 'GetTask' until the task leaves TASK_STATE_WORKING

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/api/ai-data` | Get structured company data |
| GET | `/api/badge` | Get an embeddable AI visibility badge |
| POST | `/api/mcp/{rail}` | Call one tool rail over JSON-RPC |
| POST | `/api/a2a` | Send an Agent2Agent JSON-RPC request |

## Key resources

- **Public data** — Structured company record and the embeddable audit score badge
- **Tool rails** — JSON-RPC 2.0 endpoint with portal, analyzer, and atlas rails, callable whole or one rail at a time
- **Agent2Agent** — A2A v1.0 endpoint for sending, reading, listing, and cancelling tasks

## 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:** 65 / 100
- **Maturity:** AI-Aware
- **Dimensions:**
  - Foundational Compliance: 90 / 100
  - Developer Experience & Jentic Compatibility: 60 / 100
  - AI-Readiness & Agent Experience: 43 / 100
  - Agent Usability: 94 / 100
  - Security: 100 / 100
  - AI Discoverability: 65 / 100
- **View full report:** https://jentic.com/apis/inite.ai/inite/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 INITE by hand means reading separate discovery documents for its JSON-RPC surfaces, handling OpenID Connect tokens with a different audience per endpoint, and pinning the A2A-Version header. Through Jentic you install once, import INITE from the API Directory, optionally store a token once, and your agent calls it.
- **Permission scoping:** INITE puts the tool rail in the URL path of its JSON-RPC endpoint, so a rule can pin your agent to one rail such as analyzer and the operations you pick. The individual tool and the A2A method travel inside the JSON-RPC body, so within a rail rules bound which operations your agent may call, not which tool.
- **Credential handling:** If you add an INITE token, it is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'run an AI visibility audit' or 'get INITE pricing', and Jentic returns the matching INITE operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Semrush API** — Search engine keyword, domain, and backlink analytics
- **Ahrefs API** — Backlink, keyword, and site audit data for SEO
- **Google Search Console API** — First-party Google search performance and indexing data for your site
- **Google PageSpeed Insights API** — Page performance and Lighthouse audits

## FAQ

### Is there an INITE MCP server?

Yes. INITE serves its own MCP endpoint, described by the server card linked from its spec. You can also connect INITE directly through Jentic: your agent gets the full 5-endpoint surface from the spec without loading another server's tool definitions into its context, any token is injected at call time by your self-hosted instance instead of living in an MCP config, and your rules decide which operations the agent may call.

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

Yes. Write a rule that allows only POST `/api/mcp/{rail}` with rail set to analyzer, plus GET `/api/badge.` Your agent can run audits and fetch score badges, but it cannot reach the portal rail's booking and contact tools or hand tasks to the A2A endpoint, and every call it makes is logged.

### What authentication does the INITE API use?

Per its OpenAPI spec, authentication is optional. GET `/api/ai-data` and GET `/api/badge` are public. The JSON-RPC endpoints accept anonymous guest calls or an OpenID Connect bearer token issued by auth.inite.ai, with a separate token audience for the MCP endpoint and for the A2A endpoint. A member tool called without a token answers 401. Through Jentic, a token is stored encrypted by your own Jentic One instance and injected only into the calls that use it.

### What does each INITE tool rail cover?

Per the spec, the portal rail covers services, prices, call slots, booking, contact, and guides; the analyzer rail covers the identity check and the AI visibility audit; and the atlas rail covers tool matching, a tool's measured record, search, market changes, and coupons. POST `/api/mcp/{rail}` serves a single rail, and a token minted for the full endpoint is accepted there.

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

The OpenAPI spec does not publish numeric rate limits. It says guests on the JSON-RPC endpoint get the open tools under per-address allowances, and a token applies the account's own tier; check https://inite.ai for current limits.

### How do I run an AI visibility audit with the INITE API through Jentic?

Install Jentic One with `curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh` and import INITE from the API Directory. Your agent searches for 'run an AI visibility audit', gets POST `/api/mcp/{rail}` with its input schema, and calls it with rail analyzer and a JSON-RPC 2.0 body. To run it on your own infrastructure, install Jentic One from its GitHub repo.
