Help Center

Getting the most out of Recon

Everything you need to set up Recon, connect your tools, and start investigating. If you can't find what you're looking for, reach out to us.

What is Recon

Recon is an AI investigation platform for SaaS teams. It connects to the tools your company already uses (database, codebase, tickets, docs, CRM, support platform) and lets anyone on your team investigate customer issues, analyze data, triage bugs, and generate reports through a simple chat interface.

An engineer sets it up once by connecting your data sources. After that, PMs, support leads, ops managers, and anyone else on the team can ask questions in plain English, either in the web app or directly in Slack.

Recon reads across all your connected sources simultaneously. It can run SQL queries on your database, search your codebase, look up tickets, fetch customer conversations, check error tracking, and cross-reference everything to give you answers. It can also create Linear issues, Jira tickets, and Notion pages when you ask it to.


Getting started

Setting up Recon takes about 15 minutes. Here is what the process looks like:

1

Create your account

Sign up at askrecon.com. You will be asked to create an organization and your first workspace. A workspace is the core unit in Recon. All your connections, conversations, and team access are scoped to a workspace.

2

Connect your data sources

Navigate to the Connections page in your workspace. Click the integration you want to connect and follow the setup flow. Most integrations use OAuth (one click), while databases require a connection string. See the section below for detailed steps.

3

Invite your team

Go to the Team page in your workspace settings. Invite teammates by email. They will get access to the chat interface and can start asking questions immediately. They do not need to see or manage any connection credentials.

4

Start investigating

Open a new conversation from the sidebar and ask a question. Recon will use all your connected sources to investigate and come back with an answer. You can also install Slack to let your team ask questions directly from any channel.


Connecting data sources

Recon supports two types of connections: OAuth (one-click authorization) and credentials (connection string or API key). The connection page shows all available integrations with a "Connect" button next to each one.

OAuth integrations

Most integrations (GitHub, Linear, Notion, Jira/Confluence, Intercom, HubSpot, Sentry, Zendesk, Supabase) connect via OAuth. The flow is the same for all of them:

1

Click Connect

On the Connections page, find the integration you want and click the "Connect" button.

2

Authorize access

You will be redirected to the provider's authorization page (e.g., GitHub, Linear). Review the permissions and click "Authorize" or "Allow". Recon requests the minimum scopes needed, typically read-only access.

3

Return to Recon

After authorizing, you will be redirected back to the Connections page. Your new connection will appear with a green status indicator. Some providers (GitHub, Supabase) ask you to pick a specific repository or project after connecting.

All OAuth integrations handle token refresh automatically, so you do not need to re-authorize unless you revoke access from the provider side.

Tip: Use a dedicated service account

When connecting integrations where Recon can create items (Linear, Jira, Notion, Intercom), consider authorizing with a dedicated service account. Tickets and pages Recon creates will show as authored by the account that authorized the connection.

Database connections (PostgreSQL)

Database connections use a connection string instead of OAuth. Recon connects to your database with a read-only Postgres role.

1

Create a read-only database user

On your database, create a new role with pg_read_all_data privileges. Recon provides the exact SQL during setup. This role can run SELECT queries but cannot insert, update, delete, or modify your schema.

2

Enter your connection details

Click "Connect" on PostgreSQL. Enter your connection URL (or fill in host, port, database, username, and password individually). Give the connection a name so your team can identify it.

3

Test the connection

Click "Test connection". Recon will attempt to connect and list your tables. If the connection succeeds, you will see the table count. If the user has write access, you will see a warning. Fix your role permissions before saving.

4

Save

Once the test passes, click Save. Your database is now available to Recon. All credentials are encrypted with AES-256-GCM before storage.

Stripe

Stripe uses a restricted API key (starts with rk_). Create one in your Stripe Dashboard under Developers > API keys > Restricted keys. Grant read-only access to the resources you want Recon to search (customers, subscriptions, invoices, charges). Paste the key in Recon and save.

Managing connections

On the Connections page, each connected integration shows its status. You can:

  • Test a connection to verify it is still working.
  • Reconnect an OAuth connection if the token has expired.
  • Disconnect a connection to remove it from your workspace.

Connection limits depend on your plan. Free accounts can connect up to 3 sources. Starter allows 5, Pro allows 15, and Business allows 50.


Adding Slack

Slack is a delivery channel, not a data source. Once installed, your team can @mention Recon in any Slack channel to start an investigation without leaving Slack.

1

Open the Connections page

In your workspace, go to the Connections page. Below the data source integrations, you will see the Channels section with a Slack card.

2

Click "Add to Slack"

Click the "Add to Slack" button. You will be redirected to Slack's authorization page.

3

Choose your Slack workspace

Select the Slack workspace where you want to install Recon and click "Allow". Recon requests permissions to read messages (where it is mentioned), write messages, upload files, and add reactions.

4

Start using Recon in Slack

After authorizing, you will be redirected back to Recon. The Slack card will now show "Connected". In Slack, @mention Recon in any channel or thread to ask a question.

How Recon works in Slack

  • @mention Recon in any channel. It will acknowledge your message and begin investigating.
  • Recon updates the thread in real-time as it works, showing which tools it is using.
  • The final answer is posted as a reply in the thread, with the same detail as the web interface.
  • If Recon generates a file (CSV, report), it uploads it directly to the Slack thread.
  • You can reply in the thread to ask follow-up questions. Recon keeps the conversation context.

Tip: Connection suggestions

If Recon detects that it could answer a question better with an integration you have not connected yet, it will suggest adding it. For example, if someone asks about a Sentry error but Sentry is not connected, Recon will mention that connecting Sentry would help.


Asking questions

Recon works best with natural language questions. You do not need to know SQL, code, or the structure of your data. Just describe what you want to know, and Recon will figure out which sources to check and how to get the answer.

Customer support

  • "Why is this customer seeing an error on their dashboard?"
  • "Pull up the last 5 support conversations for acme@corp.com"
  • "Check if there is a related Sentry error for this ticket"

Product and data

  • "How many users signed up this week vs last week?"
  • "What percentage of workspaces have more than 3 connections?"
  • "Generate a CSV of all customers on the Pro plan"

Bug investigation

  • "Is there a Sentry error spike in the last 24 hours?"
  • "Find the commit that changed the billing calculation logic"
  • "Check if there is a related Linear ticket for this error"

Documentation and reports

  • "Summarize all open P0 tickets in Linear"
  • "What does the onboarding flow look like in the codebase?"
  • "Create a Notion page with this week's support summary"

Ticket creation

  • "File a Linear bug for this issue with the context we found"
  • "Create a Jira ticket for engineering to investigate"
  • "Draft a Notion doc with the root cause analysis"

Tips for better results

  • Be specific about what you are looking for. "Why did Acme Corp's usage drop last week?" is better than "check usage."
  • Mention the customer or entity by name when you can. Recon will search across all connected sources for that name.
  • Ask follow-up questions in the same conversation. Recon remembers the context from earlier in the thread.
  • If Recon generates a useful finding, it saves it as a workspace memory so future investigations can benefit from it.

Supported integrations

Recon connects to 11 tools across databases, code, tickets, docs, support, CRM, billing, and error tracking.

PostgreSQL

Connection string

Run read-only SQL queries, explore tables, and analyze your production data.

Supabase

OAuth

Connect your Supabase project and query your database through the Management API.

GitHub

OAuth

Search code, read files, browse commits, and explore your repositories.

Linear

OAuth

Search issues, list projects, and create new tickets with full investigation context.

Notion

OAuth

Search pages and wikis, fetch page content, and create new pages.

Jira / Confluence

OAuth

Search Jira issues, browse Confluence pages, and create new tickets. One connection covers both.

Intercom

OAuth

Search customer conversations, look up contacts, and add internal notes.

HubSpot

OAuth

Search contacts, deals, and companies in your CRM.

Sentry

OAuth

Search error events, list projects, and investigate production issues.

Zendesk

OAuth

Search support tickets and conversations across your Zendesk account.

Stripe

Restricted API key

Search customers, subscriptions, invoices, and charges. Read-only access.

Slack

OAuth (bot install)

Deliver channel. @mention Recon in any Slack channel to start an investigation.


Security

Recon is designed with security as a core principle. Here is a summary of how your data is protected. For full details, see the Security page.

Read-only by default

Database access enforced at the Postgres role level. OAuth scopes are minimal. Write actions require explicit approval.

Encrypted credentials

All connection secrets encrypted with AES-256-GCM. Decrypted only in-memory during investigation. Never logged.

Sandboxed execution

Every investigation runs in its own Firecracker microVM. No persistent connection to your systems. Destroyed on completion.

Workspace isolation

Data isolated at the database level with Row Level Security. One workspace cannot access another's data.


Need help?

If you have questions about setup, need help with a specific integration, or want to report an issue, we are here to help.