# Entity Search

A lookup interface for entity records. Configure which entity type it searches (Customer, Vendor, or Partner), which fields users can search against, and which fields appear in the results table.

The block's display label updates based on the entity type — *Customer Search*, *Vendor Search*, or *Partner Search*.

## Available in

* All module types

## When to use

* Lookup pages where users find an entity to inspect (pair with Entity 360 in the same page or a Modal).
* Customer service workflows.
* Anywhere you'd previously have built a "Find a customer" page.

For Order Form contexts where the entity is the basis for a transaction, use **Customer/Vendor Selection** instead — it integrates with Order Lines, Address, and the rest of the order flow.

## Settings

| Setting                    | Description                                                                                                                                       |
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Title**                  | Heading text shown above the search.                                                                                                              |
| **Entity Type**            | What this search looks up: Customer, Vendor, or Partner. Default: Customer.                                                                       |
| **Show Quick Actions**     | Show the per-result quick-action buttons (e.g. View, Edit). Default: Yes.                                                                         |
| **Hotkey**                 | Optional keyboard shortcut to focus the search input (e.g. *ctrl+c*, *alt+c*).                                                                    |
| **Hidden**                 | Hide the block from the front end (useful when only the underlying selected-entity state is needed by other blocks). Default: No.                 |
| **Advanced Configuration** | Opens the configuration modal — searchable fields, display fields, contact search, default entity, location handling, table view, custom filters. |

The Advanced Configuration modal supports:

* **Multi-Search Character Exclusions** — strip specified characters from the search query before sending it (useful when scanners or IDs include separator characters like colons or slashes).
* **Search Contacts** — include contact records in the search (for Customer entity type). Default: on.
* **Search All Subsidiaries** — search every subsidiary rather than just the current one. Default: off.
* **Use Location Default Customer** — auto-load the location's default customer when the page opens.
* **Use Table View** — render the entity list modal as a proper HTML table (recommended for accessibility). Default: on.
* **Default Entity** — pre-load a specific entity by ID.
* **Use Dynamic Default Entity** + **Dynamic Default Entity Value** — pull the default entity from page or session state (e.g. *user.id*, *selectedCustomer.id*) instead of a fixed ID.
* **Searchable Fields** — toggle which fields the search query checks (entity ID, email, phone, etc.).
* **Hidden Columns** — searchable fields hidden by default in the entity list modal (the user can still toggle them on).
* **Display Fields** — which fields appear in the selected-entity card.
* **Advanced Entity Filter** — a custom filter condition that further narrows the entity search. Used by administrators when they need filtering beyond the standard searchable fields.
* **Advanced Contact Filter** — same, for the contact search.

## How it works

1. The user types a search term.
2. Matching entities (and optionally contacts) are fetched and shown in the results table.
3. The user clicks a result to select it.
4. The selected entity is published to session state — Entity 360 (or any reader) picks it up and shows details.
5. A `entity-afterSelect` JavaScript hook fires when an entity is selected.

Container width drives responsive sizing — the search adapts at narrow widths to keep the input and results readable.

{% hint style="info" %}
Pair Entity Search with **Entity 360** in the same page (or in a Modal triggered from each row's quick action) for the classic find-then-inspect pattern.
{% endhint %}

## Examples

**Customer service lookup page.** Page module with Entity Search at the top (Entity Type = Customer, Search Contacts on) and Entity 360 below it. Agent types a name, picks a result, sees the full profile.

**Vendor directory.** Page module with Entity Search (Entity Type = Vendor) — the team uses it to find vendor contact info.

**Partner program admin.** Entity Search with Entity Type = Partner, used to manage partner accounts.

## Related

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Entity 360 View</strong></td><td>The detail view that pairs naturally with Entity Search.</td><td><a href="/pages/iZxOk2Qc3Jd4I8EhpErq">/pages/iZxOk2Qc3Jd4I8EhpErq</a></td></tr><tr><td><strong>Customer/Vendor Selection</strong></td><td>The Order Form alternative that drives a transaction.</td><td><a href="/pages/km19hjFIFOFjRK0yQAJp">/pages/km19hjFIFOFjRK0yQAJp</a></td></tr><tr><td><strong>Create Entity</strong></td><td>For creating new entities when search returns no match.</td><td><a href="/pages/blGPwieua2cDRDY0pp3W">/pages/blGPwieua2cDRDY0pp3W</a></td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.in8sync.com/client-admin-guide/active-workflows/getting-started/entity-components/entity-search.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
