# Sources

On this page you can learn what a source is, how to create one, and how the Ask agent uses it.

## What a source is

A source in Askpilot is a subagent specialised in a certain kind of work, set by its [type](#source-types), that the [Ask agent](https://askpilot.com/docs/ask-agent.html) delegates work to in order to execute the [workflow](https://askpilot.com/docs/workflows.html) end to end. For example, create a source of the Microsoft Outlook type and connect your Outlook account, and the Ask agent can read and send emails through that account.

A source can also support webhook events, for example a `message.received` event on a WhatsApp (AI Number) source, sent every time a message arrives. Any available event can [start a workflow](https://askpilot.com/docs/workflows.html#create) or resume an existing session. Learn more at [Continuing a session automatically](https://askpilot.com/docs/continuing-a-session.html#events).

There are two kinds of source.

- [**Built-in sources**](#built-in-sources) come with every account and do not require any setup.
- [**Sources you create**](#sources-you-create) are the ones you add yourself, by type, and connect to your own tools, content or webhook endpoint.

## Built-in sources

*Picture: the Sources dropdown opened from the message box, listing the sources you can enable with the two built-in ones, Deep web research and Web research, at the end, and below it the message box with its Sources dropdown.*

Two sources are available for every Askpilot account and do not require any setup.

- **Deep web research.** Performs in-depth web research with multiple search queries and source analysis.
- **Web research.** Searches the web for relevant information to answer questions.

You can enable or disable them in two places.

- **In the message box.** Click **Run workflow** in the left sidebar and pick a workflow. The **Sources** button opens the list of sources for that [run](https://askpilot.com/docs/sessions.html#what-a-run-is).
- **When creating a workflow, or in its settings.** Click **Workflows** in the left sidebar. For a new workflow click **New**. For an existing one, open it from the list and go to its **Settings** tab. In both cases you can select them in the **Sources** dropdown, which shows up when the trigger is a source or the API.

With them enabled, the Ask agent uses them whenever a task needs something from the web, or name them in the [PROCESS.md](https://askpilot.com/docs/process-md.html) so the Ask agent knows when and how to use them.

## Sources you create

A source you create is set up in two steps. First you create it, then you connect it to your tool, add your content or set up its webhook endpoint, depending on its type.

### Step 1. Create the source

*Picture: the Add source form, with Type set to Microsoft Outlook, Access, Name and Description, and the Cancel and Create buttons.*

Click **Sources** in the left sidebar, then **New**, and fill in the form that opens.

1. **Type.** Choose the type of source you want to create, Microsoft Outlook for example. Every type is listed below.
2. **Access.** Who can view, manage and use the source.
   - **Only me.** Only you can view, manage and use the source.
   - **Shared.** Select the team members you want to give access to. They can view the source and use it in their workflows. Who can manage shared sources depends on their role. See [Roles and permissions](https://askpilot.com/docs/roles-and-permissions.html).
3. **Name.** A short, descriptive name, such as *HR Policies*, *Hubspot CRM* or *Gmail Inbox*.
4. **Description.** What the source contains and when to use it, for example *HR policies, PTO, benefits, use for employee handbook questions*. The Ask agent relies on this to know when to use the source.

Click **Create**. The source opens on [its own page](#manage-sources), ready for the second step.

### Source types

Each type turns the source into a subagent with a purpose of its own, equipped with the tools that type provides.

**Knowledge base** Documents you upload or sync, or web pages you scrape, which the Ask agent searches to find information.

| Type | What it does |
| --- | --- |
| **Files** | Import files like PDFs, docs and spreadsheets. |
| **Web pages** | Scrape content from web pages. |
| **[Google Drive](https://drive.google.com)** | Sync files from Google Drive. |
| **[SharePoint](https://www.microsoft.com/en-gb/microsoft-365/sharepoint/collaboration)** | Sync files from SharePoint. |

**Integrations** Tools you already use, which the Ask agent reads from and writes to.

| Type | What it does |
| --- | --- |
| **[Street](https://street.co.uk)** | Read, create and update customer and property data in your Street CRM. |
| **[iamproperty](https://iamproperty.com)** | Read, create and update property and customer data in iamproperty. |
| **[Trello](https://trello.com)** | Read, create and update boards and cards in your Trello workspace. |
| **[Microsoft Outlook](https://www.microsoft.com/en-gb/microsoft-365/outlook)** | Read, send, reply to and update emails in your Microsoft Outlook. |
| **[Microsoft Calendar](https://www.microsoft.com/en-gb/microsoft-365/outlook)** | Read, create and update events in your Microsoft Calendar. |
| **[CallSwitch One](https://www.callswitchone.com)** | Read and transcribe calls and voicemails in CallSwitch One. |
| **[Yay](https://www.yay.com)** | Read and transcribe calls and voicemails in Yay. |
| **[WhatsApp (AI Number)](https://ainumber.com)** | Read, send and update WhatsApp messages and contacts via AI Number. |

**Webhook** Your own endpoint, which receives data from a session.

| Type | What it does |
| --- | --- |
| **[Webhook](https://askpilot.com/docs/developers/webhooks.html)** | Send data to your own HTTPS endpoint. |

> **Do not see your tool?** Askpilot builds missing integrations on request, at no extra cost. See the [integrations](https://askpilot.com/integrations.html) page.

### Step 2. Set up the source

*Picture: a new Microsoft Outlook source on its Tools tab before it is connected, with the Connect button.*

To finish the setup, depending on the source type you selected, connect the source to your tool, add your content or set up its webhook endpoint.

- **[An integration source](#integration-sources)** opens on its **Tools** tab with a **Connect** button. Click it and authorise the tool, either by signing in through the tool’s own login window or by entering the credentials it asks for, an API key for example, depending on what the integration supports.
- **[A Files source](#files-sources)** opens on its **Files** tab. Click **Add** and pick the documents to upload.
- **[A Web pages source](#web-pages-sources)** opens on its **Web pages** tab. Click **Add** and either crawl a whole website from one URL, with filters if you only want part of it, or add a list of specific pages. Turn on **Auto-rescrape** to refetch the content of the pages periodically, at the frequency you choose.
- **[A Google Drive or SharePoint source](#drive-sources)** opens on its **Files** tab with a **Connect** button. Click it and authorise your account, then select the folders whose files should sync in.
- **[A Webhook source](#webhook-sources)** opens on its **Logs** tab with a **Set up** button. Click it and enter your webhook details. Learn more at the [Webhooks](https://askpilot.com/docs/developers/webhooks.html) page in the Developers section.

Once this step is done, the source is ready to be used.

## Where to find and manage your sources

*Picture: the Sources list under Sources in the left sidebar, with each source’s name and type icon, who has access to it and when it was last updated, and the New button.*

The sources you create are available under **Sources** in the left sidebar, which lists each one with its name and type icon, who has access to it, and when it was last updated. The menu at the end of a row opens a dropdown with two options, **Edit** to open the source’s **Settings** tab and **Delete** to remove the source. Click a name to open the source. Each source type has different options, described below.

### Integration sources

*Picture: an integration source’s Tools tab, listing each tool with its name, a one-line description and its enable switch.*

An integration source has three tabs.

- **Tools.** Every tool the source gives its subagent, one per row, with a name, a one-line description of what it does, and a switch to enable or disable it. These are the actions that subagent can take. Turn a tool off and it disappears from the subagent until you turn it back on.
- **Webhook events.** If the connected tool supports webhook events, they appear in this tab. View the list of all events and their filters, if any exist. The Ask agent can subscribe to listen for these events with its [Event subscriptions](https://askpilot.com/docs/ask-agent.html#event-subscriptions) tool. To tell the Ask agent to subscribe to one of them, see the [Events](https://askpilot.com/docs/process-md.html#events) section of the PROCESS.md page.
- **Settings.** Update the source’s access, name and description, and see the connection status. Click **Disconnect** to remove the connection.

> **Some sources need their webhook events set up in the tool** For certain source types, webhook events have to be set up and enabled manually in the connected tool itself. When that is the case, the **Trigger** step of the workflow form shows the webhook URLs to register there and the steps to follow.

### Files sources

*Picture: a Files source’s Files tab, listing the uploaded files with their upload date, and the Add button.*

A Files source has three tabs.

- **Files.** Every file with its name and when it was uploaded. **Add** opens a file picker to select and add files. Select any file to delete it. The files are indexed with vector search built in, so the Ask agent can search them to find information.
- **Webhook events.** Not available for this source.
- **Settings.** Update the source’s access, name and description.

### Google Drive and SharePoint sources

*Picture: a Google Drive source’s Files tab, listing the synced folders with their file count and when they last synced, and the Add button.*

A Google Drive or SharePoint source has three tabs.

- **Files.** Every synced folder with its file count and when it last synced. Open a folder to see exactly which files were synced and when. Click **Add** to pick more folders to sync. To add or remove files, change them in Google Drive or SharePoint and Askpilot syncs the change automatically. To remove all the files of a folder, select the folder and delete it. The files are indexed with vector search, like uploaded files.
- **Webhook events.** Not available for this source.
- **Settings.** Update the source’s access, name and description, and see the connected account. Click **Disconnect** to remove the connection.

### Web pages sources

*Picture: a Web pages source’s Web pages tab, listing the scraped links with their last update, with the Auto-rescrape tab and the Add button.*

A Web pages source has four tabs.

- **Web pages.** Every web link that was scraped, with the time it was last scraped. Click **Add**, then select one of the two ways to scrape.
   - **Crawl a website** takes one website URL and scrapes every page it finds from there, with optional filters to include or exclude certain paths or pages, such as `blog/*`.
   - **Add specific pages** takes a list of up to 50 URLs and scrapes only those.
   Select any link to delete it. The pages are indexed for vector search, like files.
- **Auto-rescrape.** Set up automatic re-scraping, so the content stays current. It is off by default. Choose **Every day**, **Every week** or **Every month** and click **Save**. **Never** turns it off again.
- **Webhook events.** Not available for this source.
- **Settings.** Update the source’s access, name and description.

### Webhook sources

*Picture: a Webhook source’s Logs tab, listing each request sent to the endpoint with its result, type, status and target URL.*

A Webhook source has two tabs.

- **Logs.** The list of every request Askpilot has sent to your endpoint, which you can filter by result or type. The [Webhooks](https://askpilot.com/docs/developers/webhooks.html) page in the Developers section explains each entry.
- **Settings.** Update the source’s access, name and description. Click **Edit** to change the webhook details.

## How the Ask agent uses sources

When a session starts, the Ask agent sees the list of every source that has been enabled for it, with each one’s name and description. It selects a source when the PROCESS.md names it, or when a task requires what that source does.

Which sources are enabled depends on how the session starts.

- A workflow with a trigger uses the sources selected in the **Sources** dropdown of its [settings](https://askpilot.com/docs/workflows.html#create).
- A workflow you start manually uses the sources you select in the **Sources** dropdown of the message box before you send.

In both cases you can only enable sources you have access to: your own **Only me** sources and the shared sources you have been granted access to.

> **Enable every source the workflow needs** A source that is not enabled is invisible to the Ask agent in that session, so if a workflow needs to reach a tool, enable that source.

---
This is the Markdown version of https://askpilot.com/docs/sources.html. The whole documentation as one file: https://askpilot.com/docs/llms-full.txt
