Share via

Dataverse Search API only returning results from primary column, not other searchable fields

Sandeep Challa 0 Reputation points
2026-03-27T08:07:30.97+00:00

Hi everyone,

I’m using the Dataverse Search API from a custom HTML web resource in Dynamics 365. We created a simple page that sends a basic search query (no filters) to the Dataverse Search endpoint. The search works, but only partially.

Issue

Even though:

The tables are included in the Dataverse search index

The additional columns are marked as Searchable

Those columns are also included in the Quick Find View

…the search API only returns results when the search text matches the primary column of the table. It does not return results based on other searchable columns.

Microsoft 365 and Office | Development | Other
0 comments No comments

4 answers

Sort by: Most helpful
  1. Julian Sharp 22,031 Reputation points
    2026-03-27T08:52:48.74+00:00

    Searchable does not mean what you think it means - it just means you can filter by those columns.

    Adding columns to the Quick Find View does not mean it searches on those columns.

    You need to add the columns to the Find by in the bottom right of the Quick View editor. My default, only the primary column will be included in the Find By

    0 comments No comments

  2. Steven-N 24,365 Reputation points Microsoft External Staff Moderator
    2026-03-27T08:48:58.03+00:00

    Hi Sandeep Challa

    Thank you for reaching out to Microsoft Q&A

    As far as I know, if you do not explicitly specify which columns to search in your API request payload, the API defaults to searching only the table's primary name column. It does not automatically search all columns defined in the Quick Find View like the UI does.

    In order to fix this, you need to update the JSON payload in your HTML web resource. You must include the entities parameter and explicitly define the searchColumns for the table(s) you are querying.

    You can see an example of how your JSON payload should look:

    {
      "search": "your search text here",
      "entities": [
        {
          "name": "account",
          "searchColumns": [
            "name",
            "accountnumber",
            "emailaddress1",
            "telephone1"
          ],
          "selectColumns": [
            "name",
            "accountnumber",
            "emailaddress1"
          ]
        }
      ]
    }
    

    You can find this documented in the articles covering how to invoke the Dataverse Search API (/api/search/v1.0/query) with the Web API.

    Hope my answer will help you and kindly let me know if the issue still persists.


    If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".   

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.


  3. Deleted

    This answer has been deleted due to a violation of our Code of Conduct. The answer was manually reported or identified through automated detection before action was taken. Please refer to our Code of Conduct for more information.


    Comments have been turned off. Learn more

  4. Q&A Assist
    2026-03-27T08:07:48.2+00:00
    AI generated content. This question contains an answer created with AI from Q&A Assist. Learn more

    Dataverse search returns matches from all Dataverse-search–enabled columns, but only if they are correctly configured in the Quick Find view and supported by the Dataverse search index. The behavior described (matches only on the primary column) usually indicates a configuration or support limitation rather than an API issue.

    Key points to verify:

    1. Confirm the right column types
    • Dataverse search is text-based and only searches these column types:
      • Single line of text
      • Multiple lines of text
      • Choice (Picklist/Option Set)
      • Lookup
    • Numeric and Date columns are not searched, even if marked searchable and added to Quick Find.
    • In Global Search, the searchable fields are the Find Columns on the Quick Find View; other data types such as Integer and Double are ignored.

    If the additional columns are numeric, date, or other unsupported types, they will not be searched even though they appear in the Quick Find view.

    1. Ensure the Quick Find view is the default view
    • Columns are enabled for Dataverse search only if the Quick Find view is set as the default view for the table.
    • If another view is the default, the added columns will not be indexed for Dataverse search.
    1. Check that the table is in the app and in the search index
    • The table must:
      • Be included in the model-driven app.
      • Be added to the Dataverse search index.
    • Only columns configured as Find Columns in the Quick Find view are searchable; only View Columns are returned in results.
    1. Avoid unsupported Quick Find fields
    • Dataverse search ignores related table fields added as View/Find/Filter columns in Quick Find.
    • Unsupported fields are not synced to the Dataverse search index and will not appear in search results, even though Quick Find allows configuring them.
    1. Allow time for re-indexing
    • Changes to Dataverse search configuration or searchable data can take up to ~15 minutes to appear in the search service, and longer for full syncs.
    • After changing Quick Find or search configuration, wait for indexing to complete before testing.
    1. API behavior vs. inline suggestions
    • The Dataverse Search API searches all Dataverse-search–enabled columns, not just the primary column.
    • Inline suggestions (type-ahead) are based on all searchable columns as well, but suggestions only search the primary column in the legacy suggest endpoint example; ensure the correct endpoint and payload are used if suggestions are involved.

    Practical checklist for the scenario:

    1. For each non-primary column that should be searchable:
      • Verify its data type is one of: String (Single line), Memo (Multiple lines), Picklist/Choice, Lookup.
      • Confirm it is in Find Columns of the table’s Quick Find view.
      • Confirm the same Quick Find view is set as default for that table.
    2. Confirm the table is:
      • Included in the model-driven app.
      • Added to the Dataverse search index.
    3. Wait at least 15 minutes after changes, then re-test the same query via the Search API.

    If after these checks only primary-column matches are returned, focus on the data types of the additional fields and whether they are truly in the Find Columns of the default Quick Find view; unsupported or non-Find columns will not influence search results, even though they are marked searchable in the UI.


    References:

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.