# Local Media Desk Documentation

> The operating guide for Local Media Desk clients, builders, and administrators. This index lists only the pages the current caller may read.

# Build with Local Media Desk
A guided path from your first checkout to understanding, extending, and testing the platform.
Source: https://docs.localmediadesk.com/developers

Understand the system.
Make your first change.

    Start with a working local environment, follow a real request through the platform, and use the implementation reference as you build.

    Your reading path
    01 · Set up your workspace
    02 · Learn the architecture
    03 · Trace a product workflow
    04 · Test and contribute

## Access for collaborators

The developer handbook and technical references require a Local Media Desk
identity with documentation access. Workspace administrators and owners have
**documentation reader** access automatically when they sign in. Outside
collaborators who are not administrators can ask a platform administrator for
the documentation-only `platform.docs.read` grant. Reading developer documentation does not require
access to customer workspaces or permission to administer the platform.
Repository access is separate: your administrator must also arrange GitHub access
if you will contribute code or follow source links.

[Sign in to the developer handbook](/login?redirectTo=%2Fdevelop).
If you can sign in but cannot open it, ask your administrator to check your
active administrator membership or documentation grant. [How access works](/getting-started).

## Learn, then look up

- [Developer handbook](/develop) — Setup, architecture, data model, implementation walkthroughs, and contribution patterns. Sign-in required.

- [Engineering evidence](/develop/engineering-standard) — Authority, isolation, tests, release controls and exact implementation sources. Sign-in required.

- [Guided practice](/learn) — Role-based labs with local fixtures, expected receipts, denied paths and answer keys. Sign-in required.

- [Implementation reference](/reference/generated) — Source-derived route, database, worker, permission, and package inventories. Sign-in required.

- [Operate the platform](/start-here) — Health checks, incidents, recovery, releases, and evidence. Additional operational access required.

- [Using the HubSpot app](/hubspot) — Public installation and support guidance for the connected app.

## What to expect

Guides explain how the pieces fit together. Generated references describe the
checked-in implementation and link back to its source. Operational pages identify
what has been verified and what still needs a real environment check. A route's
presence in the reference does not make it a public or supported integration API.

Use search to find an interface or workflow. Copy Markdown from a page when you
need it in your editor; exports and search follow the same access rules as the
page. Private pages require your session and cannot be fetched by an external
assistant merely by sharing their URL.

# Start with the Operator Manual
How authorization, search, Markdown access, and repository sources work in the Operator Manual.
Source: https://docs.localmediadesk.com/getting-started

Public reference

## Task-first navigation, scoped access

The manual is organized around operator tasks. Audience metadata controls which
of those tasks a reader may discover; it does not divide the source of truth
into separate conceptual shelves.

## Four audiences, one identity

The manual uses the same Supabase identity and authorization records as
Local Media Desk. It does not maintain a parallel list of documentation users.
Every page declares one audience, and the server decides on every request.

| Audience | Who can read it |
| --- | --- |
| Public | Anyone, signed in or not |
| Client | A user with at least one active workspace membership |
| Developer | A person holding the `platform.docs.read` grant, a platform operator who can view all tenants, or an active workspace administrator or owner |
| Admin | A platform operator who can manage tenants or platform permissions |

Workspace administrators and owners automatically have documentation-reader access.
Sign in with your usual workspace identity; no separate reader grant is needed.
This follows your current admin access and ends when that access is removed.

`platform.docs.read` is the grant for an outside documentation collaborator. It
opens Developer pages only: it gives no view of any tenant or client data, no
Admin pages, and no Client pages, which still need an active workspace
membership. The grant is issued and revoked like any other platform grant; see
the Docs collaborator access runbook on the Engineering shelf.

Some client pages narrow further to a specific tenant, account, or tenant
permission. A page with those constraints is included only when your current
membership satisfies all of them.

## Search follows access

Navigation and search are assembled from the same access decision as the page
route. If a page is outside your scope, its title, path, breadcrumbs, and text
are absent from the sidebar and from search results — it is not merely
unclickable.

## Reading a page outside the browser

- **Copy as Markdown** — Every page carries a copy button that fetches that page's Markdown using your own session.

- [/llms.txt](/llms.txt) — An index of the pages you can read, for an assistant that follows links.

- [/llms-full.txt](/llms-full.txt) — The full text of those same pages in one response.

All three are scoped exactly like the site: they contain the pages your request
is allowed to read and nothing else. The "open in an external assistant" action
is offered only on public pages, because an outside service fetching a URL
carries no session of yours and would receive a sign-in page instead.

Pages that come from a committed file also show a last-updated date taken from
the file's git history.

## Engineering documentation is mirrored, not retyped

The Engineering shelf renders the repository's own Markdown — architecture
notes, operational runbooks, and architecture decision records — directly from
`docs/` in the source tree. Links between those files resolve inside the
manual; links to anything else in the repository open on GitHub. The shelf is
developer scope, so it is absent for everyone else.

## When access changes

Reload the page after an administrator changes your membership or platform
grant. The manual reads current database grants and does not keep a persistent
authorization cache.

# User guides
Find your way around the platform and get help with AI Visibility assessments, sales practice, recorded-call review, and connected AI assistants.
Source: https://docs.localmediadesk.com/guides

Choose a guide for the task you are working on. You can read these guides without
signing in. To use the features in Local Media Desk, sign in to your workspace.

- [Find your way around](/product/local-media-desk/platform-guide) — Find accounts, proposals, delivery work, reporting, settings, and platform help from Coach.

- [AI Visibility guide](/product/local-media-desk/ai-visibility) — Run an advertiser assessment, understand the evidence, compare results, and share a report.

- [Sales practice and call review](/product/local-media-desk/sales-practice) — Rehearse a conversation by voice or text, save a coaching note, and review a recorded call.

- [Use your AI assistant](/integrations/ai-assistants) — Connect Claude or ChatGPT, confirm your workspace, and read advertiser reports with their evidence and limitations.

If a feature is unavailable or you need access to an account, contact your workspace
administrator. Your workspace permissions still control which actions you can take.

# HubSpot app guide
What the Local Media Desk HubSpot app connects, who can install it, and what to send when something fails.
Source: https://docs.localmediadesk.com/hubspot

Public integration guide

## What the app connects

The Local Media Desk HubSpot app connects authorized CRM records to the planning
and operating workflows your organization has enabled, and surfaces them on a
card inside HubSpot. The connection is tenant-scoped: one workspace cannot use
it to reach another workspace's data.

## What a seller does on the card

The card opens on a planning brief rather than a conversation. Values the CRM
already holds are filled in, each labelled with where it came from. Values that
arrive while the card is loading fill untouched fields; they do not replace
your edits, including a field you deliberately cleared. When reopening a saved
brief, confirmed answers appear ahead of CRM defaults and are labelled “Saved
planning brief.” Research assumptions do not become confirmed form answers.
Readiness remains
unconfirmed until the planning service evaluates the saved brief. After editing,
save again to refresh the outstanding requirements before starting planning.
Clearing an input does not delete its saved answer; restore it or supply a valid
replacement before saving.

1. **Confirm the business.** The card matches the HubSpot company to a Local
   Media Desk account, or creates one. Planning is account-scoped, so nothing
   else runs until this is settled.
2. **Complete the brief.** Required fields are marked, and what is still
   outstanding is reported by the planning service itself rather than guessed
   by the card. The list covers only what the brief can answer: research,
   recommendations and the proposal. Approvals that belong to placing an order
   come later and never hold up the brief. A monthly media budget is asked for
   directly — see [the budget answers](#the-budget-answers) below.
3. **Confirm the planning scope.** Local Media Desk proposes the geography from
   its own market evidence and you pick one. Research does not start without a
   confirmed scope, and where a boundary is approximate the card says so before
   you confirm.
4. **Run research, then generate recommendations.** Both run in the background.
   Three priced recommendations come back, each with its reasoning and its
   line-by-line allocation.
5. **Choose one, which drafts the proposal.** One step, not three: the choice
   is applied and the proposal is drafted and versioned from it. The Proposal
   tab takes over from there.
6. **Write the client draft, then send it.** A proposal with no grounded
   narrative cannot be sent, and the card says exactly what is missing. Sending
   is confirmed against a read-back of the exact proposal, because it leaves
   your team.
7. **Put it on the deal.** Updating the record needs its own approval. The card
   records exactly what would be written and offers a link to approve it in
   Local Media Desk; nothing is written to the deal until it is approved. After
   you approve, continue on the card. The proposal, its amount, its status and
   the client link are then written to the HubSpot record, and the card reports
   whether HubSpot read them back.

> **Warning: The client link is shown once**
>
> A share link is stored only as a hash, so the URL itself exists exactly once —
> in the response to sending. Copy it from the card, or write it onto the deal,
> before you navigate away. If it is lost, send again: that issues a fresh link
> and retires the old one.

## The budget answers

The brief takes a monthly media budget in one of three forms:

| Answer | What recommendations use |
| --- | --- |
| A fixed monthly amount | That amount. |
| A monthly range | The middle of the range. The card shows the figure next to the range before anything is built. Both ends are needed, and the highest must be at least the lowest. |
| Not established yet | Nothing. It is a complete answer for the brief, and research can start on it, but recommendations need a figure. Enter an amount or a range when the client gives one. |

The three recommendations are priced around that figure: the balanced option at
it, one below it and one above it. The card does not offer to recommend a budget
from nothing. An older brief that holds a “recommend one” answer from a Coach
conversation opens with the budget choice empty, so the seller picks one of the
three.

Whenever the brief has no figure, or no stated goal, the card says so under
**Build the proposal** before research starts, and **Generate recommendations**
stays unavailable until it is added and saved. Research itself can still run.

> **Warning: The deal amount is not a media budget**
>
> A HubSpot deal amount is the sales value of the deal, and a close date is when
> the sale is expected to close. Neither is a monthly media budget or a campaign
> flight. The card offers them as suggestions you apply deliberately; it never
> fills them in as planning inputs on your behalf.

The **Ask** tab is available for questions the brief cannot take. Nothing in the
planning path depends on it, and opening the card does not start a conversation.

## Installing it

> **Info: Confirm installation access**
>
> The app uses HubSpot's marketplace distribution type. This does not by itself
> mean the app is publicly listed or available to every account. If HubSpot
> refuses authorization, ask your integration operator to check the app's
> installation access and the account you selected.

1. **Start from Local Media Desk, with the right workspace selected.** The
   connection is bound to the workspace that is active when you begin.
2. **Use a workspace administrator account.** Starting the connection requires
   the `tenant.admin` permission in that workspace; without it the request is
   refused rather than queued.
3. **Read the permissions HubSpot shows you.** HubSpot lists the scopes being
   requested before you approve. Confirm you are signed in to the intended
   HubSpot account on that screen.

> **Warning: A failed authorization is not a connection**
>
> If authorization does not complete, the result is reported as an error. It is
> not evidence of a successful sync. An administrator should check the saved
> connection and credentials before retrying, because setup may have completed
> only some of its steps.

## Reauthorizing for catalog access

Catalog synchronization requires permission to read and write HubSpot products
and line items. An existing installation does not gain these permissions when
the app is updated. A workspace administrator must reconnect it and approve
the additional permissions in the intended HubSpot account.

Ask your integration operator to confirm the updated app is deployed and back
up the connection settings before reconnecting. Reauthorization preserves your
field mappings, feature choices, and other saved settings while refreshing the
app's authorization details. It does not enable features you previously turned
off. If settings are being edited at the same time and authorization fails,
finish those edits before starting a new authorization.

After reconnecting, have the integration operator verify the granted
permissions and catalog properties, then check the card on the intended deal.
A successful connection alone does not confirm that products or line items
have synchronized.

## Data and disconnection

Local Media Desk retains the operational evidence needed to explain completed
syncs. Disconnecting the app stops future authorized access; it does not
silently rewrite the historical record of what already happened.

> **Note**
>
> For support, include the workspace name, the approximate time of the failed
> action, and the on-screen error. Never send passwords, access tokens, or
> client secrets.

# Local Media Desk documentation
Developer guides, implementation references, and the operator manual for Local Media Desk.
Source: https://docs.localmediadesk.com/

Build with understanding.
Operate with evidence.

      Developer guides explain the system and how to extend it. The operator
      manual covers daily workflows, administration, and recovery. Choose the
      reading path for the work you need to do.

    Use in this order
    Understand the current state
    Choose the narrowest safe action
    Verify the result
    Preserve the evidence

## Building the platform

- [Start as a developer](/developers) — Get access, set up locally, understand the system, and make your first contribution.

- [Developer handbook](/develop) — Architecture, data model, domain walkthroughs, and contribution patterns. Developer access required.

- [Implementation reference](/reference/generated) — Browse source-derived APIs, database tables, jobs, permissions, and packages. Developer access required.

## Common operator tasks

- [Check production health](/operate/first-hour-health) — Build a release manifest and assess each production boundary without changing it.

- [Respond to an incident](/operate/incident-response) — Classify, stabilize, communicate, recover, and close with durable evidence.

- [Release or roll back](/operate/release-and-rollback) — Verify the coordinated release chain and understand what a traffic rollback cannot undo.

- [Run Local Media Desk workflows](/product/local-media-desk) — Trace account research through planning, fulfillment, creative delivery, and results.

- [Operate Seiche](/product/seiche) — Run and troubleshoot the civic product within Local Media Desk.

- [Access and recovery](/start-here/access-and-recovery) — Understand break-glass requirements and how to restore an operator account or documentation grant.

## Find an operational answer

- [Administer the platform](/administer) — Manage workspaces, people, access, readiness, evidence, and cost boundaries.

- [Operate integrations](/integrations) — Identify provider ownership, credentials, connector health, jobs, and schedules.

- [Troubleshoot by symptom](/troubleshoot) — Start from the observed failure and follow evidence to the responsible boundary.

- [Use the reference shelf](/reference) — Look up permissions, states, topology, jobs, interfaces, and configuration sources.

## How to read operational claims

Canonical pages show an operational state, accountable role, backup role, and
verification date when one exists. **Requires verification** means the
procedure or an external prerequisite has not been exercised by a backup
operator. A Git commit date proves only that the source changed.

> **Warning: Repository evidence is not production evidence**
>
> Code can prove that a control or procedure exists. It cannot prove that an
> account is funded, a credential is installed, an alert reaches someone, a
> backup restores successfully, or the expected release is serving traffic.
> Those claims require current control-plane evidence or a recorded drill.

## Access follows authorization

Navigation, search, Markdown export, and page rendering use the same current
Local Media Desk authorization decision. Signing in reveals only the pages your
workspace and platform grants allow. Authorization is a page property—not the
way this manual is organized.

- [Manual access model](/getting-started) — How page access, search, Markdown, and repository sources work.

- [Client guidance](/client) — Workspace reviews, decisions, and administration for client teams.

- [Engineering reference](/engineering) — Architecture, runbooks, and decisions that support—but do not replace—canonical operator guidance.

- [Sign in](/login) — Use your current Local Media Desk identity and grants.

# Use your AI assistant
Connect Claude or ChatGPT to find saved AI Visibility reports and use their findings in your own documents.
Source: https://docs.localmediadesk.com/integrations/ai-assistants

Use Claude or ChatGPT to find an advertiser’s saved AI Visibility report, review
its findings, and draft your own summary. The connection uses your existing
workspace permissions; it does not give you access to additional accounts.
You do not need a CRM connection to read AI Visibility reports.

## Connect your assistant

1. Open your assistant’s connection settings and choose your team’s **Local Media
   Desk** connection. If it is missing, ask your workspace administrator to set it up.
2. Sign in to Local Media Desk. Check the application name, select your workspace,
   and review the actions you are allowing before continuing.
3. Ask the assistant which workspace it is connected to. Confirm that it is the
   workspace whose advertiser reports you want to read. If it is wrong, select
   the correct connection before proceeding.
4. To review or remove access later, open **Settings → Connected agents** in
   Local Media Desk.

Administrators setting up a custom connection can use
[Connect an AI agent](/integrations/agent-connections). That guide requires
documentation sign-in and administrator access.

## Ask for an advertiser’s report

Give the assistant the advertiser’s name or website, then ask:

> Find this advertiser’s latest AI Visibility report in my connected workspace.
> Summarize the findings and recommendations. Include the report date, how many
> answers were collected, and any missing results or limits. If an earlier
> assessment can be compared, explain what changed. Use the saved reports only.

The assistant checks its access, finds the advertiser, and reads the reports it
can access. If several advertisers match, choose the right one before continuing.
You can also ask for older reports. If a report is missing, open the advertiser’s
AI Visibility page in Local Media Desk to check which reports are available.

## Keep the context with the numbers

Include the report date, questions, AI services, and number of answers when you
copy results. A saved report describes the answers collected at that time; it
does not show today’s search results.

Business mentions, recommendations, and links to the business’s website are
separate measures. Missing or unclear answers do not count against the business.
The results do not guarantee rankings, leads, or revenue.

Use the comparison included in the report. It compares matching questions and
only the answers that could be assessed both times. If no comparison is
available, describe the reports separately without claiming an increase or
decrease. A change in results does not establish what caused it.

Review recommendations before acting on them. A delivery status alone does not
confirm that work was published; check the approvals and completed work in
Local Media Desk.

## If something is missing

- **Reports are unavailable in your assistant:** refresh the Local Media Desk
  connection in the assistant’s settings and start a new chat. If reports are
  still unavailable, ask your workspace administrator to check access.
- **Wrong workspace or advertiser:** select the correct connection and search
  for the advertiser again.
- **Incomplete or older results:** keep the report’s date and missing results
  visible. Open the assessment in Local Media Desk before deciding what to do.
- **Expired or removed access:** reconnect if you still need access. Ask your
  administrator if sign-in or the report remains unavailable.

## Actions that stay in Local Media Desk

Run assessments, update questions, retry collection, create and share reports,
and deliver approved work in the
[AI Visibility workflow](/product/local-media-desk/ai-visibility).
Reading a report through your assistant does not send anything to the advertiser.

Some connections also support proposal drafts and planning. When an action needs
approval, the assistant provides a link for you to review it in Local Media Desk.
It cannot approve the action for you.

To end access, open **Settings → Connected agents**, choose **Revoke access**,
and confirm. You can also remove the connection from your assistant. Figures you
already copied remain in your documents; check their dates before reusing them.

# AI Visibility assessments
Understand how an advertiser appears in AI search, review the evidence, and share a useful next step with the client.
Source: https://docs.localmediadesk.com/product/local-media-desk/ai-visibility

Seller and account operator

AI Visibility helps you answer a practical client question: **when buyers ask AI
search about a category, does this advertiser appear, and what does the answer say?**
Use it to assess selected buyer questions in Google AI Mode and ChatGPT Search,
compare competitors, and turn the findings into improvements you can discuss.

Every client has its own monthly AI Visibility budget, $35 to start. The tab shows what this client has used this month, and each assessment shows its estimated cost before you start it. Collection also depends on your workspace’s provider configuration; if it is unavailable, the page explains why and keeps existing evidence available.

## Choose a language

Select a language by name, such as **English**. The desk supplies the service's language code; you do not need to enter one. Assessment setup offers languages available for both Google AI Mode and ChatGPT search. Category setup offers languages for its selected AI service.

If language choices cannot be loaded, your selected language and other edits remain in place. Use **Retry language choices**. A previously saved language that is no longer listed stays visible so it is never silently replaced.

For category buyer questions, enter each question and its topic in separate fields. Answer sampling controls how many answers each AI service is asked to return; repeated requests can produce different answers. Saving setup does not start collection.

## Start with your client work

Open **AI Visibility** in the sidebar to continue client work or find an advertiser.
Your selected client comes first. Its workspace and the AI Visibility guide show the same
next action: prepare findings, agree scope and price, approve and hand off
content, then measure again and compare. **Accounts → AI Visibility** opens the
same client workspace. Use **All AI Visibility clients** to return to the overview.

Saved findings and prepared files do not mean the client accepted a proposal or
approved content. The delivery record retains the actual approval and handoff
requirements. Website publishing is separate from a content handoff. Missing
status is shown as unavailable, with a way to retry; it is never counted as done.

Examples and the guide sit under **Examples and guidance**. Workspace
pricing, the AI Visibility budget per client and batch scans sit under **Service setup and
assessment scheduling**. Searching for an advertiser only opens their workspace;
it does not start an assessment.

## Open an account’s AI Visibility tab

Choose **AI Visibility** in the sidebar, search for the advertiser under **Assess another advertiser**, and open it. From **Accounts**, choose **Open AI Visibility** on the advertiser's row, or open the advertiser and choose the **AI Visibility** tab. You can also search **AI Visibility** or **answer engine optimization (AEO)** in the workspace directory to find Accounts. AEO means improving the information AI search can use about a business; this assessment measures selected answers and helps you choose improvements.

Confirm the active workspace before starting. You need permission to view account data to read assessments and permission to edit account data to run assessments or make changes. Ask your workspace administrator if an action is unavailable.

## Start with a quick scan

For an account without assessments, choose **Run quick scan**. It uses the account’s confirmed name, website, market and category to ask ten buyer questions on each engine. It names competitors only from the set you confirmed on the account’s **Competitors** tab, and only the ones that have a website; an account with no confirmed set runs without competitors, and nothing an AI summary suggested is added. If a required fact or supported location is missing, setup opens with the available facts filled in. Complete those fields, save the configuration, then choose **Start assessment**.

The quick scan targets Google AI Mode at a supported local location and ChatGPT Search at the U.S. country level. Including a market in a question does not make country-level targeting local. Collection is about $0.08 at the recorded provider price, before retries, AI drafting and other costs; it is an estimate.

Progress is saved. You can leave the page and return to the same assessment without starting another collection.

## Set up your own questions and competitors

Choose **Set up full assessment**, or expand **Assessment configuration** to edit future runs:

1. Confirm the advertiser’s name and owned domains, such as `example.com`, separated by commas. Use domains rather than full page URLs. Add only confirmed alternate names.
2. Enter the buyer market. Optionally add up to five competitors with their names and owned domains. Setup starts with the first five competitors you confirmed on the **Competitors** tab, so review them rather than retyping.
3. Search each engine’s location catalog and select a supported result. Google and ChatGPT use separate catalogs and may offer different geographic scopes. Set the language code, such as `en`.
4. Review the starter questions. You can replace them with 10, 30 or 50 templates, request **Suggest grounded questions**, or add your own. Replacing the set discards current question edits. Replace every bracketed field before saving.
5. Mark questions **Branded** when they name the advertiser and **Unbranded / category** when they ask about the category. Choose one to three samples per question. Each sample is collected on each AI service; setup shows the planned answers and their estimated cost (about $0.004 an answer). An assessment starts when it fits what is left of this client's budget this month; if it does not, the page shows what the client has used, its budget and what the assessment needs.
6. Choose **Save configuration**, then **Start assessment**, or **Run new assessment** for a repeat. Unsaved edits and an active collection prevent another start.

Every run preserves its configuration. Editing future questions, competitors or settings does not rewrite earlier answers or reports.

## Read the answers behind the measures

Open an answer’s collapsed evidence to inspect the collected text and source links.
The measures answer different questions:

| Measure | What to look for |
| --- | --- |
| Mention | Does the answer identify the advertiser or competitor? |
| Recommendation | Does the answer recommend that business, rather than merely name it? |
| Business website in sources | Does an owned website appear among the answer’s sources? |

A website listed as a source may support only part of the answer. Other search
results are listed separately. Missing or unclear answers do not count against
the business. Check how many answers could be assessed before comparing percentages.

These are sampled answers to selected questions. Responses can vary. The assessment
is neither a universal search ranking nor a promise of visibility or revenue gains.

## Review findings and improvements

If a classification is wrong or ambiguous, choose **Correct a result**,
select the corrected result, and explain your correction using the saved answer.
Corrections change the interpretation; the original answer remains intact.

Review action drafts for specificity and supporting evidence. Edit the wording,
select the answers that support the action, and track its status. You can also
create an evidence-backed action yourself.

After a correction, an action tied to the earlier interpretation needs review.
Choose **Review action for current interpretation**, check the recommendation and
its evidence, and save a new revision before including it in the next report.

## Use saved category research for an advertiser

In the account’s AI Visibility tab, open **Advertiser details and sources**.
Save confirmed business details with their source, the date you checked them
in UTC, and any date when permission to use the source expires.

Choose a linked category and a saved category assessment, then select
**Build from category answers**. Two advertisers can use the same category answers
while keeping their business details and suggested improvements separate.
Choosing research without an assessment does not provide measured results.
Answers to questions naming the business appear separately from category answers.

Review the answers, sources, counts, and missing results. Select **Create report
version** to save the assessment for preview, sharing, and PDF download.
Saved reports keep their original answers and sources. A report may become
unavailable if permission to use its sources expires. Reanalyzing the same
answers does not measure change. Comparisons require matching questions and settings.

## Share a report in your agency’s brand

Select the improvements you want the client to see and create a report. The report
includes the selected assessment, analysis, improvements, and earlier results
chosen for comparison. Later edits do not change the saved report.

The executive view gives the client a concise finding and next steps. Expand the
supporting details on the web or open the evidence appendix for the full answers.
Use the PDF for a portable executive edition.

### Your website today

Each assessment photographs the advertiser’s own website while the answers are
collected: the homepage on a computer and a phone screen, and up to two of the
advertiser’s pages that the answers cited. The report shows each page beside an
answer that cited it and the recommendation that answer supports, so the client
can see the page and what AI search said next to each other. When the report
compares with an earlier assessment, the earlier screenshot of the same page
appears as “Before” if it was taken before the new answers. A page that could
not be captured says so and why; nothing is shown in its place.

Assessments that ran before website screenshots were available have none. On a
finished assessment without screenshots, select **Capture website pages**; the
pictures are labeled as taken after the answers were collected. Wait until they
appear before you create the report. A saved report keeps the screenshots
available when it was created.

Use the report’s sharing controls to issue a client link. Expiring or revoking that
link also controls access to its report appendix and PDF. Website screenshots follow the same rule: once a link is revoked or
expires, its screenshots stop loading too. Brand identity comes from
the workspace’s branding settings; the advertiser identity comes from the assessment.

## Read reports from your AI assistant

Connect Claude or ChatGPT to read an advertiser's saved report and use its figures
in your own reporting. Follow [Use your AI assistant](/integrations/ai-assistants)
to connect, check the workspace, and find the account. Ask your workspace
administrator for access if needed. Review or remove the connection in
**Settings → Connected agents**. Include the report date, number of answers,
missing results, and comparison limits when copying figures.
Scans, report sharing and content delivery continue in this app.

## Compare a repeat assessment

Run the same saved questions and settings again, then select the earlier assessment
as the baseline. The selected run and baseline stay in the page URL so you can return
to the same comparison.

Read the comparison’s scope label before interpreting a change. A different question
set, AI service, or location can change which answers are comparable. Discuss what
changed in the sampled answers without claiming that a particular action caused it.

## Sell and deliver AI Visibility monthly

AI Visibility uses your existing proposal, order and fulfillment flow. Set it up once per workspace on the **AI Visibility** page: under **Sell AI Visibility monthly**, enter what you charge an advertiser each month and your estimated monthly delivery cost, then select **Set up monthly AI Visibility**. A manager or admin can do this. It creates the AI Visibility product, its monthly price, the **AI Visibility Delivery** template (each month it opens five tasks: confirm advertiser facts, run the assessment and save the month's report, fix identity and listing gaps, publish answer content, and review the report with the advertiser), the delivery setup and monthly package. Selecting it again changes nothing. A draft AI Visibility product is activated. If your catalog already has AI Visibility records it would have to change, such as an archived product, a rate that is not monthly, or a package with other components, the page lists them before it creates anything; fix them in **Catalog**. Enter a delivery-cost estimate before activating the service; enter zero only when no direct delivery cost is expected. You can change the price and cost estimate later in **Catalog**.

From an assessment, **Create plan** creates a review document to share with the
advertiser. It does not create an order or start delivery.

To book a campaign for any advertiser, enter the **Monthly client price (USD)**,
start date and number of months under **Monthly subscription**, then select
**Review campaign order**. Your workspace controls the client price and margin.
Enter **0** for a no-cost, value-added campaign; this needs no pricing exception.
Delivery costs and provider usage are still recorded separately.

The order screen shows the selected price and lets you choose your operating
scope. The quote multiplies the monthly client price by the service periods in
the stated term; a partial final period counts as a month. Review the total before
creating the draft. This books the term's commitment; it does not set up automatic
recurring invoice collection.

Finish the draft through the ordinary order steps: approve its document, submit
it, approve it under your workspace’s order approval policy, activate it, and
start fulfillment. If the workspace requires a second approver, someone other
than the requester approves it unless an admin has marked the account **Internal**
on its page. Admins set the workspace rule under **Workspace Profile**,
**Order approvals**. A lost
booking response can be retried on the same screen; finance or scope completion
can be resumed without creating another order. Opening a fresh booking after
leaving the screen starts a new draft, so check existing orders first. Fulfillment
opens one service period per month, with one AI Visibility assessment. The month's
report PDF is required as period evidence before completion.

Each month, once the period starts, the assessment runs again on its own with the
advertiser's latest saved questions and settings, charged to that client's monthly
AI Visibility budget. A month whose measurement does not fit the client's budget is
held back for that month and shown on the AI Visibility page. Open the assessment
to see the change against the previous month; the comparison is selected for you.

When the month's assessment finishes, its report is saved and its PDF is
attached to the service period. The period owner is notified. Review the report before sending it. If the
attach could not finish, it is tried again the next day; you can also use
**Attach AI Visibility report** on the service period to add it yourself. A
period keeps the first report attached to it; if you correct the assessment and
create a new report, download that one and add it to the period’s evidence.

To hand an improvement to your fulfillment team, use **Add to work queue** on the
action. It becomes a task for the advertiser's account in **Work**, with the
action's wording and a link back to the assessment. Sending the same revision
again does not create a duplicate.

**Content gaps** lists the category questions where AI did not name the advertiser
in any answer, who it named instead, and the sites those answers used. Copy or
download the content brief for your writers. Its structured data uses only the
advertiser identity you confirmed in setup; add address, phone and hours from the
advertiser's own records.

## Deliver an accepted managed service

An administrator must [configure the managed delivery service](/administer/workspace-lifecycle#configure-ai-visibility-delivery)
before it can be sold.

For a service sold with the **AI Visibility Managed Delivery** template, open its
period in **Services** and use **Deliver the accepted work**. This template covers
one approved content page for each monthly package purchased, with one revision
and review by your team and the client. Website publishing is not included.

1. Record confirmed business facts, their confirmation source and review date.
   Describe the target, confirmed gap and acceptance criteria for each obligation,
   then choose **Save delivery scope**. If **Plan delivery** appears, choose it to prepare the work.
2. Choose **Prepare delivery workspace**. Upload the final document or capture,
   select the uploaded file and supporting business facts, and choose
   **Save deliverable revision**.
3. Review the revision internally, then choose **Create client review link for
   this revision**. Send the resulting link through your normal client channel.
   The client records their decision on that exact revision. Replacing the
   deliverable requires current approvals for the replacement.
4. Record who accepted the handoff or performed the implementation. The saved
   client decision is applied automatically. Upload verification evidence, record
   the checks and actual outcome, and save the evidence-sharing permission.
5. Choose **Save client summary**, then **Complete delivery**. Missing approvals, expired
   facts or unverified work keep completion blocked. **Open client delivery
   summary** shows the saved result to signed-in users with access to that account.

If you submitted an action but did not receive confirmation, use **Retry submitted action**.
This safely retries the same request. A shared review link is tied to its original revision. Supporting files
stay private. The summary does not provide a public link to them. You can revoke
proof-sharing permission after completion. An older summary then shows that its
supporting information is no longer current, while keeping the original delivery record.

## See whether AI Visibility is working for you

Below **Check an advertiser**, the **AI Visibility** page gives everyone on the
team one view of the whole product:

- **This month's deliverables:** how many open monthly periods have their report
  attached.
- **AI Visibility budget:** each client's monthly budget, and any monthly
  measurement held back this month because its client's budget was used, with
  the amounts. A platform operator can raise or lower the budget per client.
- **Subscriptions:** each advertiser's current period, whether its re-measurement
  has run, and whether the report is attached.
- **Outcomes:** for each subscribed advertiser, how many category answers named
  it in the latest assessment and in the one before. Months can use different
  answers, so open the assessment's comparison before drawing conclusions.
- **Prospect scans by rep:** assessments your team started in the last 90 days,
  the advertisers they covered, and the proposals started from them and accepted.
  Monthly re-measurements are not counted as scans.

## Scan your book of business

On the **AI Visibility** page, **Book of business** quick-scans advertisers that
have never been checked, so you can see which ones AI answers leave out.

1. Choose **Choose advertisers to scan**. The page lists up to 25 advertisers that
   have never been checked. Ones with enough facts for a quick scan (website,
   category and market) are selected; the rest name the one fact to add first.
2. Before you queue, the page shows how many answers the scans use and their
   estimated cost per client.
3. Choose **Queue**. Scans start in the next daily run, after the monthly
   re-measurements, each charged to its own client's monthly budget. A client
   whose budget is used up waits in the queue until next month; every other
   client's scan still starts.

Results list the advertisers named least first. One quick scan is a small
sample: open the advertiser's assessment before you pitch, and run a full
assessment for a proposal. **Remove** takes a scan out of the queue before it
starts. Advertisers that already have an assessment or saved AI Visibility settings
are left out, so a rep's own setup is never replaced; an advertiser someone checks
in the meantime is skipped.

## When something needs attention

- **Partial or failed collection:** inspect which observations succeeded and which
  failed. Retry eligible failed work; keep the successful evidence.
- **Uncertain provider attempt:** do not assume no answer means no billable attempt.
  Use **Retry unfinished collection** for eligible work before submitting another assessment.
- **Action or report conflict:** reload the saved state and review the latest
  interpretation and action revisions before retrying.
- **Missing feature or AI service:** ask your workspace administrator. Saved evidence remains available. Administrators can use [provider failures](/troubleshoot/provider-failures) and [deployments](/troubleshoot/deployments). These guides require documentation sign-in and operator access.

For setup or provider problems, ask your workspace administrator. Administrators can use the technical troubleshooting guides linked above.

# Find your way around Local Media Desk
Find accounts, research, proposals, orders, reporting, settings, and help in your workspace.
Source: https://docs.localmediadesk.com/product/local-media-desk/platform-guide

Workspace members

Local Media Desk brings account research, planning, proposals, delivery, and reporting into one workspace. Sign in and check the active workspace before you begin. The pages and actions available to you depend on your membership, permissions, workspace configuration, and the feature's availability. If something is missing, ask your workspace administrator; a missing page does not necessarily mean the record does not exist.

## Find the right place

| What you want to do | Where to start |
| --- | --- |
| See workspace readiness and a next place to act | **Home** (`/dashboard`) |
| Find a business, start discovery, or ask Coach for help with research | **Research** (`/research`) |
| Find an existing client record and its account workspace | **Accounts** (`/accounts`) |
| Build or return to an offer | **Proposals** (`/proposals`) |
| Follow proposals through presentation, acceptance, and fulfillment | **Pipeline** (`/pipeline`) |
| Review agreements | **Agreements** (`/agreements`) |
| Review accepted handoffs and delivery intake | **Orders** (`/orders`) |
| Find your assigned work | **My work** (`/work`) |
| Review handoffs and delivery work | **Fulfillment** (`/fulfillment`) |
| See team priorities, blockers, deadlines, and capacity | **Command center** (`/capacity`) |
| Review results or create a report | **Reporting** (`/reports`), **Report studio** (`/reporting/studio`), or **Report review** (`/reporting/review`) |
| Change your starting desk or manage your connected agents | **Personal settings** or **Connected agents** under Settings |

Navigation can differ by role. A link's presence does not by itself grant permission to change a record. Open the relevant record and follow the action and access messages shown there.

## Start with an account

Search **Accounts** before creating a new record. Select the right business by checking its name and the information available, such as website and location. When the account does not yet exist, use **New account** or start with **Research**. Provide the most specific identity and location you know; similar names do not necessarily identify the same business.

An account workspace brings related work together. Use its overview for account details and signals, **Research** for research progress and findings, **Intelligence** for synthesized findings and their sources, and **Competitors** for the confirmed competitor set. Depending on your access and setup, you may also see **Visibility** and **Practice**. You can create a proposal from an account when you are ready to build an offer.

If a research run is still queued or running, wait for its results before treating it as finished. Individual findings or sources may be incomplete even when other parts are ready. Open the evidence, check its source and freshness, and distinguish a supported finding from a hypothesis. An unavailable source is not proof that no information exists. Reloading the Intelligence status reads the stored result; it does not start a new research run.

## Ask Coach

You can ask “Where do I find my proposals?”, “How do I review an AI Visibility report?”, or “How do I use this platform?” Coach searches public user documentation and cites the guides behind its answer. A help question does not require starting account research or creating a proposal. If documentation cannot answer it, Coach should say what it could not verify. Documentation describes the product; it does not confirm which features your workspace has enabled.

Use Coach to ask questions and get guidance while working. For a question about a particular business, open Coach from that account so the conversation has the intended account context. Tell Coach what you are trying to accomplish and include relevant details, such as the business, market, or decision you need to make. For example: “Summarize the evidence we have for this account and tell me what is still missing,” or “Help me prepare a proposal for this account.”

Review the answer and follow its cited evidence before relying on a claim. If Coach offers an action or asks for confirmation, read the account, action, and any approval details before continuing. A proposed action is not the same as a completed action; check the resulting record and its status. Coach's available actions depend on your permissions and workspace configuration. If an action or source is unavailable, use the explanation shown and ask your administrator for help when needed.

For rehearsal with a simulated buyer, open the account's **Practice** tab. It is a separate workflow for practicing a conversation and saving a debrief. See [Sales practice and call review](/product/local-media-desk/sales-practice) for voice, text, and access details.

## Shape and follow a proposal

Open **Proposals** to find existing proposals, or start from the relevant account. Review the account, recommendation, products, pricing, and supporting evidence as you build the offer. Follow the proposal's review and approval prompts when they apply. Use **Pipeline** to follow its progress, and **Agreements** to find agreements associated with the commercial work. A draft, a shared proposal, and an accepted proposal represent different stages; check the displayed status before describing the outcome to a client.

## Move accepted work into delivery

**Orders** brings together accepted proposal handoffs, order readiness, line items, and delivery intake. Open an order to check its account, scope, status, and any outstanding requirements. **Fulfillment** is the place to follow delivery work and handoffs. Use **My work** for your assignments and **Command center** for a broader view of team priorities and blockers, where available. A visible team item is not necessarily assigned to you; check its owner and status.

## Understand and share results

Start at **Reporting** for the reporting overview, **Report studio** to create a report, and **Report review** to review work before sending. Check the account, reporting period, sources, and any missing or unavailable information before sharing. Missing data is not the same as a measured zero. Confirm the state of the share or delivery after taking an action.

For an advertiser's visibility in AI answers, open its account's **Visibility** area. The [AI Visibility guide](/product/local-media-desk/ai-visibility) explains assessments, evidence, comparisons, and reports.

## Settings, access, and help

**Personal settings** lets you choose your starting desk for the workspace. **Connected agents** lets you review and revoke your own connected planning agents. For details on working with an external assistant, see [Use your AI assistant](/integrations/ai-assistants). Workspace setup and operating scope are available to users with the relevant access.

If you cannot find a page, record, or action:

1. Check that you are signed in and using the intended workspace.
2. Search for the account or return to the record that owns the work.
3. Read any access, loading, failure, or unavailable message on the page and retry when offered.
4. Ask your workspace administrator to check your membership, permissions, and feature availability if the issue remains.

The [User guides](/guides) collect public task guides. Manual search and navigation show only documentation you can access; see [Start with the Operator Manual](/getting-started) for how documentation access works.

# Sales practice
Rehearse an account conversation by voice or text in the desk or a connected assistant, save a coaching note, and review recorded calls. Nothing scores a seller.
Source: https://docs.localmediadesk.com/product/local-media-desk/sales-practice

Seller and sales manager

Practice the hard part of a conversation before the buyer hears it. Your AI
assistant or the desk’s Practice page plays the buyer and a coach. Local Media Desk builds the scenario from
the account's own plan and keeps a short debrief of each session.

This is rehearsal, not evaluation. Nothing gives a seller a score, grade or
rank, and the team view shows themes, never people.

Start with the account you want to practice. Use its **Practice** tab in the
desk, or confirm your AI assistant’s connection to that workspace for rehearsal
and recorded-call review.

## What you need

- For the desk: a signed-in workspace and an account. For voice, a microphone,
  browser permission and voice enabled for your workspace. Text is available
  when your workspace’s AI provider is configured.
- For a connected assistant: a connection with the practice tools granted.
  Open **Settings → Connected agents** in Local Media Desk to manage your
  connection. Ask your administrator to grant the practice tools if they are
  missing. Administrators can use
  [Connect an AI agent](/integrations/agent-connections) for setup instructions
  (documentation sign-in and administrator access required).
- Permission to view account data to read scenarios and team themes.
- Permission to edit account data to save a debrief.
- An account. If the account has a completed plan, the rehearsal uses that plan.
  Without one, the rehearsal is a discovery conversation.

## Practice in the desk

1. Open **Accounts**, select the account, then open its **Practice** tab.
2. Choose the **Situation** and **Buyer role**. Read the offer and what you do
   not know yet. Without a ready plan option, ask discovery questions.
3. Choose **Start voice**, allow your microphone if prompted, and speak first.
   Your microphone audio goes to the AI voice provider. Or type your opening
   in **Type your line** and choose **Send**. Enter sends; Shift+Enter adds a line.
4. Ask for **Coach me**, **Try again**, or **Next objection**. Say these during
   voice practice; use the buttons during text practice.
5. Choose **End & save debrief** after you have spoken and received a reply.
   It ends voice if needed and saves **Rehearsed**, **Improved**, and **Next**,
   with a line to try. Choose **Practice again** below the note to rehearse the
   next line or choose another situation. If saving fails, keep the page open
   and choose **Retry**.

**Voice limits.** One voice session can run at a time, for up to 20 minutes.
Voice and typed practice use your workspace’s AI budget. The page explains when
a usage limit is reached.

**Switch to text.** While microphone permission is pending, choose
**Cancel voice & use text**. During a voice session, choose **End voice**, then
**Continue in text**. Your earlier conversation stays in the same rehearsal.
If voice disconnects after you have started talking, you can continue the same
way. The page shows the exact deadline to save, including when you continue in
text: 15 minutes after the scheduled voice end. Once it passes, new typed turns
are disabled. Download the transcript to your device before starting a new
rehearsal. You can still retry a previous save to retrieve it if it already
finished; an expired session cannot generate a new debrief.

**Keep your place.** New replies follow automatically while you are at the end
of the conversation. Scroll up to review earlier lines; **Show latest replies**
returns you to the latest response.

**Start again or leave.** **Start over** clears the conversation and lets you
change the situation or buyer role. The transcript is only on the current page;
leaving or reloading loses it. Save a debrief first if you want to keep the coaching
note. Start over and same-tab links ask before discarding unsaved work; browser
reloads and closes also show a warning. Saving keeps selected quotes,
not the whole transcript. Members who can view workspace data can read saved
debriefs. You and members who can edit workspace data can also see who ran them
in the activity history.

If voice or text is unavailable, the page states why. For a blocked microphone,
allow this site in your browser’s site settings, then retry, or use text practice.
For missing access or an exhausted AI budget, ask a workspace administrator.
Members who can read but not write see the scenario and disabled controls with
an access explanation. They cannot run or save practice.

## Practice in a connected assistant

1. Ask your assistant to practice a conversation with the account, or start the
   `practice_session` prompt if your assistant lists MCP prompts. Name a
   situation if you want one:
   - **curious**: the buyer has time but has not said they need anything.
   - **incumbent**: the buyer already has a solution that works well enough.
   - **capacity**: the buyer cannot take on anything new right now.
   - **route**: the buyer does not make the final decision.
   - **no fit**: the plan does not meet a current need, and that stays true.

   You can also name the buyer's role: owner, marketing lead, general manager,
   operations lead, or regional or franchise marketing lead.
2. The assistant prepares the scenario. The buyer raises the
   first of three objections built from the account's own products and budget,
   then waits for your answer.
3. After each answer the coach gives one thing that worked, one thing that was
   missed, and one stronger line to try. Say **try again** to answer the same
   objection again, **next objection** to move on, or **coach me** for coaching
   on demand.
4. Say **wrap up**. The assistant reviews your rehearsal and shows you the note:
   **Rehearsed**, **Improved**, **Next**.

## What the buyer will and will not do

- The buyer is a business role, not a portrait of a real person. It has no
  invented motives or personal traits.
- Anything the plan does not establish stays unknown: audience size, delivery,
  results, availability and final pricing. The buyer says it would need to
  check rather than accept a number you made up.
- Pushing harder does not change the situation. A respectful no, or a
  deferral, is a good ending.

## What is kept

Local Media Desk keeps the debrief: what worked and what was missed (each
quoting your own words), the reframe, the three-line note, the objection themes
and the skill to work on next. It does not keep the transcript. A quote it
cannot find in your own lines is dropped, and a debrief that grades you is
discarded rather than saved.

Debriefs are not anonymous. Members who can view workspace data can read the
debriefs and their selected quotes. Saved quotes can include names you say aloud.
You and members who can edit workspace data can also see who ran each practice
session or recorded-call review in the activity history. Nothing scores,
grades or ranks you.

## Review a recorded call

The same coaching works on a real call. Give your assistant the transcript of a
recorded call with an account and ask for a coaching review:

1. Name the account and the plan you discussed, if there was one.
2. Say where the call was recorded: Built Revenue Agent capture, or a recorder
   such as Fathom. The recorder is responsible for the participants' consent to
   record; your assistant states that it has it. Local Media Desk does not
   record calls or ask for consent itself.
3. Say which speaker is you (seller) and which is the prospect (buyer). Remove
   private details unrelated to coaching before submitting. Anyone
   you leave out, such as a notetaker, is context only and is never reviewed as
   the seller.
4. List the names that may come up, with the speaker each person spoke as,
   plus anyone only mentioned. They are replaced before the call is reviewed.

You get the same note as a practice session: **Rehearsed** (the objections the
buyer raised and how you answered), **Improved**, and **Next**. Local Media Desk
replaces the participant names you supplied with role tags such as Seller A and
Buyer A, or [name]. It drops quotes it detects as containing other personal
names. Automated replacement does not guarantee anonymization: unlisted,
lowercase or sentence-initial names can remain. Remove other personal names
before submitting, and review the debrief before sharing it. The transcript is
not kept.

**How long a call can be.** Up to 40,000 characters, roughly 45 minutes of
conversation. Lines one person says in a row count as one turn, and up to 300
turns are kept. For a longer call, cut the small talk, scheduling and
recorder notices and keep the part where you discussed the account's needs
and objections.

**Where the call goes.** Like a practice debrief, the call (with names
replaced) is sent to the AI provider your workspace uses to write the review.
Nothing else receives it.

## See where the team practices

When you save a debrief on an account's **Practice** tab, the page shows the
workspace's practice themes from the last 90 days, with the debrief you just
saved counted: the most common objections and the skills debriefs said to work
on next, each with a count of debriefs.

For more detail, ask your connected assistant for team practice themes from the last 90 days.
You can include the whole workspace or one account, and practice sessions,
recorded calls, or both. The summary shows common objections, skills to work on,
and examples of lines to practice. It counts sessions without listing people
or comparing sellers.

## If something goes wrong

- **"This scenario has changed since it was read"**: the account's plan changed
  between the rehearsal and the debrief. Build a new scenario and practice it.
- **The debrief is unavailable**: no AI provider answered, or its answer was
  discarded. Say **wrap up** again; a debrief already saved for the same
  transcript is returned rather than written twice.
- **The tools are missing**: your connection does not have access to them. Ask
  a Local Media Desk administrator.
