> ## Documentation Index
> Fetch the complete documentation index at: https://doc.lucidworks.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Insights Reports and Signal Data Requirements

export const LwTemplate = ({title = "Key questions to get you started", icon = "sparkles", cta = "Powered by Agent Studio", linkHref = "https://lucidworks.com/demo/?utm_source=docs&utm_medium=referral&utm_campaign=docs_cta_ai"}) => {
  const [isLoaded, setIsLoaded] = useState(false);
  useEffect(() => {
    const timer = setTimeout(() => {
      setIsLoaded(true);
    }, 500);
    return () => clearTimeout(timer);
  }, []);
  return <div className="lw-template-container">
      <Card title={title} icon={icon}>
        {isLoaded && <span dangerouslySetInnerHTML={{
    __html: `<lw-template id="a029c1a9-28be-427e-b0e1-5d918920246a"></lw-template
            >`
  }} />}
        <Link href={linkHref} className="agent-studio-link text-left text-gray-600 gap-2 dark:text-gray-400 text-sm font-medium flex flex-row items-center hover:text-primary dark:hover:text-primary-light group-hover:text-primary group-hover:dark:text-primary-light">Powered by Lucidworks Agent Studio</Link>
      </Card>
    </div>;
};

[localhost link]: http://localhost:3000/docs/4/fusion-ai/reference/report-requirements

[mintlify link]: https://doc.lucidworks.com/docs/4/fusion-ai/reference/report-requirements

[old doc.lw link]: https://doc.lucidworks.com/fusion/5.9/507

Although there are many fields that are relevant to [signals](/docs/4/fusion-ai/concepts/signals-and-aggregations/signals/overview), this topic describes which fields are **required** for each type of signal. Without these fields, reports and dashboards within [App Insights](/docs/4/fusion-ai/concepts/insights/overview) may not function as expected.

<LwTemplate />

## Signal Types

There are five types of signals:

* **Annotation.** Annotation signals are generated when a user bookmarks, likes, or comments on a document. Annotation signals are likewise generated when the user removes a bookmark, like, or comment.

  <Note>
    Annotation signals are generated by [App Studio](/docs/4/app-studio/overview). If you are not using App Studio, this type of signal is not relevant to your search application.
  </Note>

* **Click.** Click signals are generated when a user clicks on a page element that is being monitored by the search app. Click signals are sent from the search app to Fusion.

* **Login.** Login signals record information about specific users when they log in to an application. This includes a time stamp and various session details.

* **Request.** A request signal is generated by a front-end search app and captures the raw user query and other contextual information about a user and their journey through the search app.

* **Response.** Response signals are automatically generated by a query pipeline when the signals feature is enabled for a collection.

  <Tip>
    **Important**
    Because response signals and their fields are automatically generated, this topic does not cover what response signal fields are required.
  </Tip>

## Required Fields

### Signals

The following table describes which fields are required for annotation, click, login, and request signals.

<Note>
  Requests (or queries) can also require additional, available user data for the search.
</Note>

| Field | Type | Description | Example | Required |
| - | - | - | - | - |
| `id` | string | Unique ID for the signal. | `b0ee5307-6223-4150-ac5a-d0d8113aa480` | ✅ Annotation <br />✅ Click <br />✅ Login <br />✅ Request |
| `doc_id` | string | Product ID or Item ID of the clicked result. | `NMDDV` | ✘ Annotation <br />✅ Click <br />✘ Login <br />✘ Request |
| `date` | timestamp | Timestamp of when the signal was generated. This timestamp follows Unix epoch time formatting. | `1518717749409` | ✅ Annotation <br />✅ Click <br />✅ Login <br />✅ Request |
| `user_id` | string | Unique ID for the user that generated the signal. | `admin` | ✅ Annotation <br />✅ Click <br />✅ Login <br />✅ Request |
| `session` | string | Unique ID for the user’s browser session. | `ef4e00cd-91bb-45b4-be80-e81f9f9c5b27` | ✅ Annotation <br />✅ Click <br />✅ Login <br />✅ Request |
| `host` | string | Host name of the server which is hosting the app that is generating the signal. | `x.y.z` | ✅ Annotation <br />✅ Click <br />✅ Login <br />✅ Request |
| `ip_address` | string | IP address of the user that generated the signal. | `80.6.99.35` | ✅ Annotation <br />✅ Click <br />✅ Login <br />✅ Request |
| `app_id` | string | Name of the application that is generating the signal. | `myApp` | ✅ Annotation <br />✅ Click <br />✅ Login <br />✅ Request |
| `annotation_type` | string | Type of the annotation signal, either "comment", "bookmark", or "like". Required fields for "comment": <br />• `comment`. The comment itself.<br />• `target`. The target that the comment refers to.<br /> Required fields for "bookmark": <br />• `title`. The bookmark title.<br />• `url`. The bookmark url.<br /> Required fields for "like": <br />• `-•` - | `bookmark` | ✅ Annotation <br />✘ Click <br />✘ Login <br />✘ Request |
| `query` | string | Terms of the query. | `ipad` | ✘ Annotation <br />✅ Click <br />✘ Login <br />✅ Request |
| `fusion_query_id` | string | Unique ID for the `query` that is automatically generated from the Fusion response signal. | `ABkaEA11` | ✘ Annotation <br />✅ Click <br />✘ Login <br />✘ Request |
| `filter` | array of string | List of filters associated with the query, which in turn is associated with signal. | `[“type/tablet”,”category/electronics”]` | ✘ Annotation <br />✅ Click <br />✘ Login <br />✅ Request |
| `ctype` | string | Type of click. | `result` | ✘ Annotation <br />✅ Click <br />✘ Login <br />✘ Request |
| `res_pos` | number | Position of the clicked result within the list of results. | `3` | ✘ Annotation <br />✅ Click <br />✘ Login <br />✘ Request |
| `res_offset` | number | Result page. | `2` | ✘ Annotation <br />✅ Click <br />✘ Login <br />✘ Request |
| `url` | string | URL of the page that the signal originated from. | `http://localhost:8080/products/search` | ✘ Annotation <br />✘ Click <br />✘ Login <br />✅ Request |
| `path` | string | URL path of the page that the signal originated from. | `/search` | ✘ Annotation <br />✘ Click <br />✘ Login <br />✅ Request |
| `page_title` | string | Title of the page that the signal originated from. | `Search Page` | ✘ Annotation <br />✘ Click <br />✘ Login <br />✅ Request |

### Insights Reports

The table below describes which fields are required to generate the various reports within [App Insights](/docs/4/fusion-ai/concepts/insights/overview):

| Report | Signal Types Used | Required Field | Type | Description | Example |
| - | - | - | - | - | - |
| Search queries | ✘ Annotation <br />✅ Click <br />✘ Login <br />✅ Request <br />✅ Response | `query` | string | Terms of the query. | `physics` |
| Facets used | ✘ Annotation <br />✘ Click <br />✘ Login <br />✅ Request <br />✘ Response | `filter_field` | array of string | List of filters associated with the query, which in turn is associated with signal. | `["categories_s"]` |
| Facet filters applied | ✘ Annotation <br />✘ Click <br />✘ Login <br />✅ Request <br />✘ Response | `filter` | array of string | List of **applied** filters associated with the query, which in turn is associated with signal. | `["categories_s/math.OA"]` |
| Application servers | ✘ Annotation <br />✅ Click <br />✘ Login <br />✅ Request <br />✘ Response | `host` | string | Host name of the server that is hosting the app, which in turn is generating the signal. | `lucidworks` |
| Response times | ✘ Annotation <br />✘ Click <br />✘ Login <br />✘ Request <br />✅ Response | `time` | number | Response time (in milliseconds). | `17` |
| URLs clicked | ✘ Annotation <br />✅ Click <br />✘ Login <br />✘ Request <br />✘ Response | `url` | string | URL of the page that was selected from the search results. This typically results from a click signal. | `http://arxiv.org/pdf/astro-ph/0611688v1` |
| Search pages | ✘ Annotation <br />✘ Click <br />✘ Login <br />✅ Request <br />✘ Response | `page_title` | string | Title of the page that the signal originated from. | `Search Preview` |
| Search platforms | ✘ Annotation <br />✅ Click <br />✘ Login <br />✅ Request <br />✅ Response | `platform` | string | Name of the search platform. | `fusion` |
| Visitor countries | ✘ Annotation <br />✅ Click <br />✘ Login <br />✅ Request <br />✘ Response | `geo_country_name` | string | Originating country of the user. | `United States` |
| Visitor cities | ✘ Annotation <br />✅ Click <br />✘ Login <br />✅ Request <br />✘ Response | `geo_city_name` | string | Originating city of the user. | `San Francisco` |
| Browsers | ✘ Annotation <br />✅ Click <br />✘ Login <br />✅ Request <br />✘ Response | `browser_name` | string | Name of the browser that generated the signal. | `Firefox` |
| Operating System | ✘ Annotation <br />✅ Click <br />✘ Login <br />✅ Request <br />✘ Response | `os_name` | string | Name of the operating system used by the user. | `Ubuntu` |
| Device types | ✘ Annotation <br />✅ Click <br />✘ Login <br />✅ Request <br />✘ Response | `os_device` | string | Type of the device used by the user. | `Computer` |
| Websites people are coming from | ✘ Annotation <br />✅ Click <br />✘ Login <br />✘ Request <br />✘ Response | `referrer_domain` | string | URL of the page that the signal originated from. | `http://www.google.com` |
| Users | ✘ Annotation <br />✅ Click <br />✘ Login <br />✅ Request <br />✘ Response | `user_id` | string | Unique ID for the user that generated the signal. | `admin` |
| User domains | N/A | `domain` | string | Domain of the user that generated the signal. | `lucidworks.com` |
| Types of event | ✅ Annotation <br />✅ Click <br />✅ Login <br />✅ Request <br />✅ Response | `type` | string | Type of the signal. | `click` |

Head Tail analysis uses different fields depending on signal type.
This report is populated by running a head tail job in Lucidworks Search. With a collection called `foo`, for example, run the `foo_head_tail` job.

| Signal Types Used | Required Field | Type | |
| - | - | - | - |
| ✘ Annotation | | | |
| ✅ Click | type | string | |
| ✅ Click | query | string | |
| ✘ Login | | | |
| ✘ Request | | | |
| ✅ Response | `count_i` | number | |

### Fusion jobs

The following tables specify required fields for specific Fusion jobs:

**Job:** `click_signal_aggr`

| Field | Required |
| - | - |
| `user_id` | no |
| `query` | yes |
| `doc_id` | yes |
| `count_i` | yes |
| `fusion_query_id` | depends |
| `type` | yes |
| `session_id` | optional |
| `id` | N/A |
| `res_offset` | optional |
| `res_pos` | optional |
| `filters` | optional |
| `type = response` | depends |
| `dependency` | N/A |

**Job:** `phrase_extraction`

| Field | Required |
| - | - |
| `user_id` | no |
| `query` | yes |
| `doc_id` | no |
| `count_i` | yes |
| `fusion_query_id` | no |
| `type` | yes |
| `session_id` | N/A |
| `id` | N/A |
| `res_offset` | N/A |
| `res_pos` | N/A |
| `filters` | N/A |
| `type = response` | N/A |
| `dependency` | N/A |

**Job:** `spell_correction`

| Field | Required |
| - | - |
| `user_id` | no |
| `query` | yes |
| `doc_id` | no |
| `count_i` | yes |
| `fusion_query_id` | no |
| `type` | yes |
| `session_id` | N/A |
| `id` | N/A |
| `res_offset` | N/A |
| `res_pos` | N/A |
| `filters` | N/A |
| `type = response` | N/A |
| `dependency` | N/A |

**Job:** `synonym_detection`

| Field | Required |
| - | - |
| `user_id` | no |
| `query` | yes |
| `doc_id` | yes |
| `count_i` | yes |
| `fusion_query_id` | no |
| `type` | yes |
| `session_id` | N/A |
| `id` | N/A |
| `res_offset` | N/A |
| `res_pos` | N/A |
| `filters` | N/A |
| `type = response` | N/A |
| `dependency` | phrase, misspelling |

**Job:** `head_tail`

| Field | Required |
| - | - |
| `user_id` | no |
| `query` | yes |
| `doc_id` | yes |
| `count_i` | yes |
| `fusion_query_id` | no |
| `type` | yes |
| `session_id` | N/A |
| `id` | N/A |
| `res_offset` | N/A |
| `res_pos` | N/A |
| `filters` | N/A |
| `type = response` | N/A |
| `dependency` | N/A |

**Job:** `_user_item_prefs_agg`

| Field | Required |
| - | - |
| `user_id` | yes |
| `query` | no |
| `doc_id` | yes |
| `count_i` | yes |
| `fusion_query_id` | no |
| `type` | yes |
| `session_id` | yes |
| `id` | yes |
| `res_offset` | yes |
| `res_pos` | yes |
| `filters` | yes |
| `type = response` | yes |
| `dependency` | N/A |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.