---
title: "POST /v1/settings/searchapplications"
method: POST
path: "/v1/settings/searchapplications"
tags: ["settings"]
---

# POST /v1/settings/searchapplications

`POST /v1/settings/searchapplications`

Creates a search application. **Note:** This API requires an admin account to execute.

## Request body

- SearchApplication — SearchApplication
  - `returnResultThumbnailUrls` boolean — With each result we should return the URI for its thumbnail (when applicable)
  - `operationIds` string[] — Output only. IDs of the Long Running Operations (LROs) currently running for this schema. Output only field.
  - `defaultFacetOptions` FacetOptions[] — The default fields for returning facet results. The sources specified here also have been included in data_source_restrictions above.
    - `integerFacetingOptions` IntegerFacetingOptions — Used to specify integer faceting options.
      - `integerBuckets` string[] — Buckets for given integer values should be in strictly ascending order. For example, if values supplied are (1,5,10,100), the following facet buckets will be formed {<1, [1,5), [5-10), [10-100), >=100}.
    - `objectType` string — If object_type is set, only those objects of that type will be used to compute facets. If empty, then all objects will be used to compute facets.
    - `sourceName` string — Source name to facet on. Format: datasources/{source_id} If empty, all data sources will be used.
    - `operatorName` string — The name of the operator chosen for faceting. @see cloudsearch.SchemaPropertyOptions
    - `numFacetBuckets` integer — Maximum number of facet buckets that should be returned for this facet. Defaults to 10. Maximum value is 100.
  - `name` string — The name of the Search Application. Format: searchapplications/{application_id}.
  - `dataSourceRestrictions` DataSourceRestriction[] — Retrictions applied to the configurations. The maximum number of elements is 10.
    - `source` Source — Defines sources for the suggest/search APIs.
      - `predefinedSource` 'NONE' | 'QUERY_HISTORY' | 'PERSON' | 'GOOGLE_DRIVE' | 'GOOGLE_GMAIL' | 'GOOGLE_SITES' | 'GOOGLE_GROUPS' | 'GOOGLE_CALENDAR' | 'GOOGLE_KEEP' — Predefined content source for Google Apps.
      - `name` string — Source name for content indexed by the Indexing API.
    - `filterOptions` FilterOptions[] — Filter options restricting the results. If multiple filters are present, they are grouped by object type before joining. Filters with the same object type are joined conjunctively, then the resulting expressions are joined disjunctively. The maximum number of elements is 20. NOTE: Suggest API supports only few filters at the moment: "objecttype", "type" and "mimetype". For now, schema specific filters cannot be used to filter suggestions.
      - `objectType` string — If object_type is set, only objects of that type are returned. This should correspond to the name of the object that was registered within the definition of schema. The maximum length is 256 characters.
      - `filter` Filter — A generic way of expressing filters in a query, which supports two approaches: **1. Setting a ValueFilter.** The name must match an operator_name defined in the schema for your data source. **2. Setting a CompositeFilter.** The filters are evaluated using the logical operator. The top-level operators can only be either an AND or a NOT. AND can appear only at the top-most level. OR can appear only under a top-level AND.
        - `valueFilter` ValueFilter
          - `operatorName` string — The `operator_name` applied to the query, such as *price_greater_than*. The filter can work against both types of filters defined in the schema for your data source: 1. `operator_name`, where the query filters results by the property that matches the value. 2. `greater_than_operator_name` or `less_than_operator_name` in your schema. The query filters the results for the property values that are greater than or less than the supplied value in the query.
          - `value` Value — Definition of a single value with generic type.
            - `integerValue` string, int64
            - `doubleValue` number, double
            - `booleanValue` boolean
            - `timestampValue` string, google-datetime
            - `dateValue` Date — Represents a whole calendar date, for example a date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar). The date must be a valid calendar date between the year 1 and 9999.
              - …
            - `stringValue` string
        - `compositeFilter` CompositeFilter
          - `logicOperator` 'AND' | 'OR' | 'NOT' — The logic operator of the sub filter.
          - `subFilters` Filter[] — Sub filters.
  - `scoringConfig` ScoringConfig — Scoring configurations for a source while processing a Search or Suggest request.
    - `disableFreshness` boolean — Whether to use freshness as a ranking signal. By default, freshness is used as a ranking signal. Note that this setting is not available in the Admin UI.
    - `disablePersonalization` boolean — Whether to personalize the results. By default, personal signals will be used to boost results.
  - `queryInterpretationConfig` QueryInterpretationConfig — Default options to interpret user query.
    - `forceVerbatimMode` boolean — Enable this flag to turn off all internal optimizations like natural language (NL) interpretation of queries, supplemental results retrieval, and usage of synonyms including custom ones. If this flag is set to True, it will take precedence over the option set at Query level. For the default value of False, query level flag will set the correct interpretation for verbatim mode.
    - `forceDisableSupplementalResults` boolean — Set this flag to disable supplemental results retrieval, setting a flag here will not retrieve supplemental results for queries associated with a given search application. If this flag is set to True, it will take precedence over the option set at Query level. For the default value of False, query level flag will set the correct interpretation for supplemental results.
  - `sourceConfig` SourceConfig[] — Configuration for a sources specified in data_source_restrictions.
    - `source` Source — Defines sources for the suggest/search APIs.
      - `predefinedSource` 'NONE' | 'QUERY_HISTORY' | 'PERSON' | 'GOOGLE_DRIVE' | 'GOOGLE_GMAIL' | 'GOOGLE_SITES' | 'GOOGLE_GROUPS' | 'GOOGLE_CALENDAR' | 'GOOGLE_KEEP' — Predefined content source for Google Apps.
      - `name` string — Source name for content indexed by the Indexing API.
    - `scoringConfig` SourceScoringConfig — Set the scoring configuration. This allows modifying the ranking of results for a source.
      - `sourceImportance` 'DEFAULT' | 'LOW' | 'HIGH' — Importance of the source.
    - `crowdingConfig` SourceCrowdingConfig — Set search results crowding limits. Crowding is a situation in which multiple results from the same source or host "crowd out" other results, diminishing the quality of search for users. To foster better search quality and source diversity in search results, you can set a condition to reduce repetitive results by source.
      - `numResults` integer — Maximum number of results allowed from a datasource in a result page as long as results from other sources are not exhausted. Value specified must not be negative. A default value is used if this value is equal to 0. To disable crowding, set the value greater than 100.
      - `numSuggestions` integer — Maximum number of suggestions allowed from a source. No limits will be set on results if this value is less than or equal to 0.
  - `defaultSortOptions` SortOptions
    - `operatorName` string — The name of the operator corresponding to the field to sort on. The corresponding property must be marked as sortable.
    - `sortOrder` 'ASCENDING' | 'DESCENDING' — Ascending is the default sort order
  - `displayName` string — Display name of the Search Application. The maximum length is 300 characters.
  - `enableAuditLog` boolean — Indicates whether audit logging is on/off for requests made for the search application in query APIs.

## Response `200`

Successful response

---

[API](https://skmtc.dev/google/apis/cloudsearch.md) · [All operations](https://skmtc.dev/google/apis/cloudsearch/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/google/cloudsearch/revisions/d64d6afc59a6/schema)
